- Merge r37029 from aicom-network-fixes

- This fixes the last of all the port allocation bugs that I know of

svn path=/trunk/; revision=37032
This commit is contained in:
Cameron Gutman 2008-10-27 20:43:44 +00:00
parent 373296b548
commit 31e02ce543

View file

@ -286,8 +286,9 @@ NTSTATUS FileOpenAddress(
AddrFile->Port =
TCPAllocatePort(Address->Address[0].Address[0].sin_port);
if (Address->Address[0].Address[0].sin_port &&
AddrFile->Port != Address->Address[0].Address[0].sin_port)
if ((Address->Address[0].Address[0].sin_port &&
AddrFile->Port != Address->Address[0].Address[0].sin_port) ||
AddrFile->Port == 0xffff)
{
ExFreePool(AddrFile);
return STATUS_INVALID_PARAMETER;
@ -301,8 +302,9 @@ NTSTATUS FileOpenAddress(
AddrFile->Port =
UDPAllocatePort(Address->Address[0].Address[0].sin_port);
if (Address->Address[0].Address[0].sin_port &&
AddrFile->Port != Address->Address[0].Address[0].sin_port)
if ((Address->Address[0].Address[0].sin_port &&
AddrFile->Port != Address->Address[0].Address[0].sin_port) ||
AddrFile->Port == 0xffff)
{
ExFreePool(AddrFile);
return STATUS_INVALID_PARAMETER;