windows-nt/Source/XPSP1/NT/net/rras/ipx/adptif/pnp.h
2020-09-26 16:20:57 +08:00

55 lines
2.3 KiB
C

/*
File PnP.h
Declarations required to make the interface between the IPX stack and the IPX
user-mode router components software PnP enabled.
This file will plug into the NT 4.0 version adptif and provide the
following PnP capabilities:
1. Notify IPX router when new net cards are added (via PCMIA, bindings, etc.)
2. Notify IPX router when the internal network number changes.
3. Notify IPX router when changes to existing net cards occur:
- Changes to network number associated with a given adapter
- Changes to the frame type of a given adapter
Strategy for notifying IPX router components of adapter changes
===============================================================
1. In NT 4.0, the stack would complete the MIPX_GETNEWNICINFO IOCTL whenever
a wan link went up or down, whenever certain lan configuration changed,
and in some other instances. For PnP, we will modify the IPX stack to
complete this IOCTL whenever the internal net number changes and
whenever an adapter-related PnP event occurs.
2. As part of processing the adapter configuration changes returned from the
completion of the MIPX_GETNEWNICINFO IOCTL, adptif should also send the
MIPX_CONFIG ioctl to get the internal network number and verify
that it hasn't changed. If it has changed, all ipx router components
should be notified.
3. Each router component (rtrmgr, rip, sap) is a client to adptif.dll and will
will therefore be notified about each adapter configuration change. These
components will have to be modified to deal with these changes individually.
For example, sap will have to update its service table to reflect new network
numbers and broadcast these changes to the network. The router manager will
have to instruct the fowarder to update its route table, etc.
Paul Mayfield, 11/5/97.
*/
#ifndef __adptif_pnp_h
#define __adptif_pnp_h
// Queries the ipx stack for the current ipx internal net number
DWORD PnpGetCurrentInternalNetNum(LPDWORD lpdwNetNum);
// Notifies all clients to adptif (rtrmgr, sap, rip) that the internal
// network number has changed.
DWORD PnpHandleInternalNetNumChange(DWORD dwNewNetNum);
#endif