|
|
1.1 root 1: /*
2: * wsnwlink.h
3: *
4: * Microsoft-specific extensions to the Windows NT IPX/SPX Windows
5: * Sockets interface. These extensions are provided for use as
6: * necessary for compatibility with existing applications. They are
7: * otherwise not recommended for use, as they are only guaranteed to
8: * work * over the Microsoft IPX/SPX stack. An application which
9: * uses these * extensions may not work over other IPX/SPX
10: * implementations. Include this header file after winsock.h and
11: * wsipx.h.
12: *
13: * To open an IPX socket where a particular packet type is sent in
14: * the IPX header, specify NSPROTO_IPX + n as the protocol parameter
15: * of the socket() API. For example, to open an IPX socket that
16: * sets the packet type to 34, use the following socket() call:
17: *
18: * s = socket(AF_IPX, SOCK_DGRAM, NSPROTO_IPX + 34);
19: *
20: * Below are socket option that may be set or retrieved by specifying
21: * the appropriate manifest in the "optname" parameter of getsockopt()
22: * or setsockopt(). Use NSPROTO_IPX as the "level" argument for the
23: * call.
24: *
25: */
26:
27: #ifndef _WSNWLINK_
28: #define _WSNWLINK_
29:
30: /*
31: * Set/get the IPX packet type. The value specified in the
32: * optval argument will be set as the packet type on every IPX
33: * packet sent from this socket. The optval parameter of
34: * getsockopt()/setsockopt() points to an int.
35: *
36: */
37:
38: #define IPX_PTYPE 0x4000
39:
40: /*
41: * Set/get the receive filter packet type. Only IPX packets with
42: * a packet type equal to the value specified in the optval
43: * argument will be returned; packets with a packet type that
44: * does not match are discarded. optval points to an int.
45: *
46: */
47:
48: #define IPX_FILTERPTYPE 0x4001
49:
50: /*
51: * Stop filtering on packet type.
52: *
53: */
54:
55: #define IPX_STOPFILTERPTYPE 0x4003
56:
57: /*
58: * Set/get the value of the datastream field in the SPX header on
59: * every packet sent. optval points to an int.
60: *
61: */
62:
63: #define IPX_DSTYPE 0x4002
64:
65: /*
66: * Enable extended addressing. Adds "unsigned char sa_ptype" to
67: * the SOCKADDR_IPX structure. optval points to a BOOL.
68: *
69: */
70:
71: #define IPX_EXTENDED_ADDRESS 0x4004
72:
73: /*
74: * Send protocol header up on all receive packets. optval points
75: * to a BOOL.
76: *
77: */
78:
79: #define IPX_RECVHDR 0x4005
80:
81: /*
82: * Get the maximum data size that can be sent. Not valid with
83: * setsockopt(). optval points to an int.
84: *
85: */
86:
87: #define IPX_MAXSIZE 0x4006
88:
89: /*
90: *
91: */
92:
93: #define IPX_ADDRESS 0x4007
94:
95: typedef struct _IPX_ADDRESS_DATA {
96: INT adapternum;
97: UCHAR netnum[4];
98: UCHAR nodenum[6];
99: } IPX_ADDRESS_DATA, *PIPX_ADDRESS_DATA;
100:
101: #endif
102:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.