Windows-Server-2003/net/rras/ip/sample
2024-08-04 01:28:15 +02:00
..
configentry.c Initiall commit 2024-08-04 01:28:15 +02:00
configentry.h Initiall commit 2024-08-04 01:28:15 +02:00
configmgr.c Initiall commit 2024-08-04 01:28:15 +02:00
configmgr.h Initiall commit 2024-08-04 01:28:15 +02:00
defs.h Initiall commit 2024-08-04 01:28:15 +02:00
hashtable.c Initiall commit 2024-08-04 01:28:15 +02:00
hashtable.h Initiall commit 2024-08-04 01:28:15 +02:00
ipsample.c Initiall commit 2024-08-04 01:28:15 +02:00
ipsample.def Initiall commit 2024-08-04 01:28:15 +02:00
ipsample.h Initiall commit 2024-08-04 01:28:15 +02:00
ipsample.log Initiall commit 2024-08-04 01:28:15 +02:00
ipsample.rc Initiall commit 2024-08-04 01:28:15 +02:00
ipsample.reg Initiall commit 2024-08-04 01:28:15 +02:00
ipsamplemsg.mc Initiall commit 2024-08-04 01:28:15 +02:00
ipsamplerm.h Initiall commit 2024-08-04 01:28:15 +02:00
list.h Initiall commit 2024-08-04 01:28:15 +02:00
log.h Initiall commit 2024-08-04 01:28:15 +02:00
makefile Initiall commit 2024-08-04 01:28:15 +02:00
makefile.inc Initiall commit 2024-08-04 01:28:15 +02:00
makefile.sdk Initiall commit 2024-08-04 01:28:15 +02:00
mibmgr.c Initiall commit 2024-08-04 01:28:15 +02:00
mibmgr.h Initiall commit 2024-08-04 01:28:15 +02:00
networkentry.c Initiall commit 2024-08-04 01:28:15 +02:00
networkentry.h Initiall commit 2024-08-04 01:28:15 +02:00
networkmgr.c Initiall commit 2024-08-04 01:28:15 +02:00
networkmgr.h Initiall commit 2024-08-04 01:28:15 +02:00
packet.c Initiall commit 2024-08-04 01:28:15 +02:00
packet.h Initiall commit 2024-08-04 01:28:15 +02:00
pchsample.h Initiall commit 2024-08-04 01:28:15 +02:00
readme.txt Initiall commit 2024-08-04 01:28:15 +02:00
rmapi.c Initiall commit 2024-08-04 01:28:15 +02:00
rmapi.h Initiall commit 2024-08-04 01:28:15 +02:00
rtmapi.c Initiall commit 2024-08-04 01:28:15 +02:00
rtmapi.h Initiall commit 2024-08-04 01:28:15 +02:00
sampletest.cxx Initiall commit 2024-08-04 01:28:15 +02:00
sampletest.h Initiall commit 2024-08-04 01:28:15 +02:00
sampletest.rc Initiall commit 2024-08-04 01:28:15 +02:00
socket.c Initiall commit 2024-08-04 01:28:15 +02:00
socket.h Initiall commit 2024-08-04 01:28:15 +02:00
sources Initiall commit 2024-08-04 01:28:15 +02:00
sync.c Initiall commit 2024-08-04 01:28:15 +02:00
sync.h Initiall commit 2024-08-04 01:28:15 +02:00
test.c Initiall commit 2024-08-04 01:28:15 +02:00
utils.c Initiall commit 2024-08-04 01:28:15 +02:00
utils.h Initiall commit 2024-08-04 01:28:15 +02:00

This code provides a sample implementation of an IP routing protocol.  It
illustrates the interaction with the IP Router Manager and the Route Table
Manager (v2).  It also provides guidelines for efficient use of the event
logging and tracing facilities provided with the Routing SDK. The code uses
WinSock2 functionality for optimized execution.  It also contains comments
about the preferred usage of NT and Routing functionalities (such as worker
threads, etc).

To run the sample, you need to build the LoadProtocol sample, which will load
this sample protocol. Please see ..\LoadProtocol for more info.

The sample protocol DLL (ipsample.dll) needs to be copied to the 
%SytemRoot%system32 folder

The sample protocol should be registered in the following registry
location (invoke ipsample.reg to effect these changes):


\HKEY_LOCAL_MACHINE
 \Software
  \Microsoft
   \Router
    \CurrentVersion
     \RouterManagers
      \IP
       \IPSAMPLE
        VendorName      = Microsoft (Value Type: REG_SZ)
        Title           = Sample IP Routing Protocol (Value Type: REG_SZ)
        ProtocolId      = 0x00c8 (Value Type:REG_DWORD)
        Flags           = 0  (Value Type:REG_DWORD)
        DLLName         = IPSAMPLE.DLL (Value Type: REG_SZ)
        ConfigDLL       = admin application dll (Value Type: REG_EXPAND_SZ)
        ConfigClsid     = admin application CLSID (Value Type: REG_SZ)


DESCRIPTION

Once the sample protocol is installed, it will periodically send out hello
messages on every active (enabled and bound) interface.  These are received
by all routers on the subnet running the sample protocol.  The MIB api
allows one to get and set the global and interface specific configuration
and to obtain the interface bindings as well as the global and interface
statistics.  These structures are defined in <ipsamplerm.h>...


CAVEAT

At this moment the sample does not support unnumbered interfaces.  This
feature will be demonstrated in a future release.


FILES

README          this file

makefile        unchanged
makefile.inc    build instructions for resources
makefile.sdk    build instructions for external distribution
sources         compilation instructions for sample.dll and sampletest.exe

ipsample.def    functions and variables exported by sample.dll

list.h
hashtable.[ch]
sync.h
utils.[ch]
packet.[ch]
socket.[ch]
networkentry.[ch]
networkmgr.[ch]
configentry.[ch]
configmgr.[ch]
mibmgr.[ch]
rtmapi.[ch]
rmapi.[ch]
test.c

log.h           localizable error codes
ipsample.rc     dll resources file
ipsample.[ch]   dll main file

pchsample.h     precompiled header

sampletest.rc   test resources file
sampletest.h    test header file
sampletest.cxx  test main file (cxx extention precludes pch inclusion)