WinIP -- a set of functions to allow raw IP on Windows

There is no documentation (yet).

The winip library consists of all files in this directory.  It is
a set of functions designed to implement something resembling BSD
raw sockets on Windows using either winpcap or Win2K SOCK_RAW.
It determines as runtime which one should be used.

This library was inspired by nmapNT by ryan@eeye.com.  It doesn't
contain any of his original code any more (I think).  His code
has been moved to wintcpip.c.

Note:  functions in this library with the same name as the
corresponding nmap function are still LGPL since they are
not based (except for semantics) on nmap.

Proposed changes should be discussed on nmap-dev if nmap-related
or you could e-mail me and maybe I'll set up a list for general
development or use.

Note: snmpapi.cpp and MibAccess.* are based on sources from
codeguru.com.  They are for win95 support, and are not needed
if snmp95.cpp is modified to do nothing.

You still need WinSock2 to run on Win95.  Get it at: (one line)
http://www.microsoft.com/Windows95/downloads/contents
/WUAdminTools/S_WUNetworkingTools/W95Sockets2/Default.asp

Get winpcap from http://netgroup-serv.polito.it/winpcap


My PGP key is:

-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: PGPfreeware 6.5.8 for non-commercial use <http://www.pgp.com>


yOZTzqpgXw==
=TKs6
-----END PGP PUBLIC KEY BLOCK-----



Version history:
0.1:  first public release (in nmap)
0.2:  adds windows 95 support


Known issues:

If there is a lot of traffic over any given interface unrelated
to the client, and if the interface is using Win2K raw sockets,
then there may be data loss.  I will fix it if this becomes
a problem.

It needs testing to make sure it works somewhat normally if
iphlpapi is not present.

Support for forcing a given source address is somewhat sketchy.
Support for IP over an interface that isn't bound to MS's stack
is nonexistant, although it could feasably be added

Need to implement PPP over winpcap on win98 (and FDDI,
ATM, and TokenRing on all platforms).


Files contained in this library:
winip.c
winip.h
rawrecv.c
pcapsend.c
genmod.h
iphlpapi.txt
iphlpapi.lib
iphlpapi.c
iphlpapi.def
iphlpapi.bat
iphlpapi.h
snmp95.cpp
snmpapi.cpp
MibAccess.cpp
MibAccess.h