|
|
1.1 root 1: /****************************************************************************\
2: * wperror.c -- sample program library demonstrating NWLink.
3: *
4: * Microsoft Developer Support
5: * Copyright (c) 1992, 1993 Microsoft Corporation
6: *
7: * Demonstrates basic sockets programming with the Windows Sockets API
8: * using the NWLink transport.
9: *
10: ****************************************************************************/
11: #include <stdio.h>
12: #include <windows.h>
13: #include <winsock.h>
14: #include <wsipx.h>
15:
16: /****************************************************************************
17: *
18: * FUNCTION: print_network_num( char *addrp)
19: *
20: * PURPOSE: Print out a given network number
21: *
22: * ARGUMENTS: addrp Pointer to the network address
23: *
24: * RETURNS: nothing.
25: *
26: *\***************************************************************************/
27: void print_network_num(char *addrp)
28: {
29:
30: printf("%02X%02X%02X%02X",
31: (unsigned char)*addrp,
32: (unsigned char)*(addrp + 1),
33: (unsigned char)*(addrp + 2),
34: (unsigned char)*(addrp + 3));
35:
36: return;
37: }
38:
39:
40: /****************************************************************************
41: *
42: * FUNCTION: print_node_num( char *addrp)
43: *
44: * PURPOSE: Print out a given node number
45: *
46: * ARGUMENTS: addrp Pointer to the network address
47: *
48: * RETURNS: nothing.
49: *
50: *\***************************************************************************/
51: void print_node_num(char *addrp)
52: {
53:
54: printf("%02X%02X%02X%02X%02X%02X",
55: (unsigned char)*addrp,
56: (unsigned char)*(addrp + 1),
57: (unsigned char)*(addrp + 2),
58: (unsigned char)*(addrp + 3),
59: (unsigned char)*(addrp + 4),
60: (unsigned char)*(addrp + 5));
61:
62: return;
63: }
64:
65:
66: /****************************************************************************
67: *
68: * FUNCTION: print_socket_num( char *addrp)
69: *
70: * PURPOSE: Print out a given socket number
71: *
72: * ARGUMENTS: addrp Pointer to the network address
73: *
74: * RETURNS: nothing.
75: *
76: *\***************************************************************************/
77: void print_socket_num(char *addrp)
78: {
79:
80: printf("%02X%02X",
81: (unsigned char)*addrp,
82: (unsigned char)*(addrp + 1));
83:
84: return;
85: }
86:
87: /****************************************************************************
88: *
89: * FUNCTION: print_netaddr( char *addrp, char *prestr, char *poststr)
90: *
91: * PURPOSE: Print out a given network address
92: *
93: * ARGUMENTS: addrp = Ptr to the network address
94: * prestr = String to print before addr
95: * poststr = String to print after addr
96: *
97: * RETURNS: nothing.
98: *
99: *\***************************************************************************/
100: void print_netaddr(char *addrp, char *prestr, char *poststr)
101: {
102:
103: if (prestr)
104: printf(prestr);
105:
106:
107: print_network_num(addrp);
108: printf(" - ");
109: print_node_num(addrp+4);
110: printf(" - ");
111: print_socket_num(addrp+10);
112:
113:
114: if (poststr)
115: printf(poststr);
116:
117: return;
118: }
119:
120: /****************************************************************************
121: *
122: * FUNCTION: print_saddr( PSOCKADDR_IPX p )
123: *
124: * PURPOSE: Prints out contents of the SOCKADDR_IPX struct passed in.
125: *
126: * ARGUMENTS: PSOCKADDR_IPX => SOCKADDR_IPX struct to dump.
127: *
128: * RETURNS: nothing.
129: *
130: *\***************************************************************************/
131: void print_saddr(PSOCKADDR_IPX p)
132: {
133: printf("address family = %d address = ", p->sa_family);
134: print_netaddr(p->sa_netnum, NULL, NULL);
135: }
136:
137: /****************************************************************************
138: *
139: * FUNCTION: print_wsa( LPWSADATA w )
140: *
141: * PURPOSE: Dumps out the contents of a WSA structure.
142: *
143: * ARGUMENTS: umps out the contents of a WSA structure.
144: *
145: * RETURNS: nothing.
146: *
147: *\***************************************************************************/
148: void print_wsa(LPWSADATA w)
149: {
150: printf(" Version = %ld\n", w->wVersion);
151: printf(" High Version = %ld\n", w->wHighVersion);
152: printf(" Description = %s\n", w->szDescription);
153: printf(" System Status = %s\n", w->szSystemStatus);
154: printf(" Max sockets = %d\n", w->iMaxSockets);
155: printf(" Max UPD dg size = %d\n", w->iMaxUdpDg);
156: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.