tcpdump mailing list archives
Re: [Patch] fad-win32.c
From: Gisle Vanem <gvanem () broadpark no>
Date: Thu, 04 Apr 2013 21:19:52 +0200
"Guy Harris" <guy () alum mit edu> wrote:
'NameLength = 0' is just in case 'PacketGetAdapterNames()' fails w/o setting '*NameLength == 0'. It really could do that; ref. Packet32.c in WinPcap.
Really? I don't see that. (The first call should *always* "fail", in the sense of returning FALSE; if the cause of the "failure" is that the buffer pointer argument is NULL, not that it couldn't get the interface list, it should set NameLength to the size of the buffer it needs.)
What is the oldest version of WinPcap we should support inlibpcap? Here are the lines in question from an old version of <winpcap-SDK>\Packet9x\DLL\Packet32.c:
BOOLEAN PacketGetAdapterNames (PTSTR pStr,
PULONG BufferSize)
{
ULONG Result,i;
LONG Status;
...
PPACKET_OID_DATA OidData;
...
OidData=GlobalAllocPtr(GMEM_MOVEABLE | GMEM_ZEROINIT,256);
if (OidData == NULL)
{
return FALSE;
}
(dated 8 July 2006 here).
Clearly it could return FALSE w/o touching '*BufferSize'. The
GlobalAllocPtr() is the 1st code in this function. Hence the precaution
in fad-win32.c. Allthough no sane person should be using Win9x anymore,
there could be an old version of PacketNtx\Dll\Packet32.c with the same lines. --gv _______________________________________________ tcpdump-workers mailing list tcpdump-workers () lists tcpdump org https://lists.sandelman.ca/mailman/listinfo/tcpdump-workers
Current thread:
- [Patch] fad-win32.c Gisle Vanem (Apr 04)
- Re: [Patch] fad-win32.c Guy Harris (Apr 04)
- Re: [Patch] fad-win32.c Gisle Vanem (Apr 04)
- Re: [Patch] fad-win32.c Guy Harris (Apr 04)
