1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
|
/*++
Copyright (c) 1991 Microsoft Corporation
Module Name:
psxsock.h
Abstract:
Types, prototypes and definitions for Win32 sockets.
Author:
Sam Patton (sampa) September 11, 1991
Revision History:
when who what
---- --- ----
11-21-91 mikemas intitial version - cloned from winsock.h
--*/
#ifndef PSXSOCK_INCLUDED
#define PSXSOCK_INCLUDED
//
// POSIX includes
//
// #include <posix.h>
//
// POSIX-specific defintions
//
#define INVALID_SOCKET_HANDLE ((int) -1)
#define SOCKET_HANDLE int
//
// common sockets include file
//
#include <sys\socket.h>
//
// Prototypes for all exported socket functions
//
SOCKET_HANDLE
accept(
IN SOCKET_HANDLE, //socket to accept on
OUT struct sockaddr *, //peer address
OUT int *); //size of peer address
int
bind(
IN SOCKET_HANDLE, //socket to bind
IN struct sockaddr *, //address to bind to
IN int); //size of address
int
connect(
IN SOCKET_HANDLE, //socket to connect from
IN struct sockaddr *, //address to connect to
IN int); //size of address
int
listen(
IN SOCKET_HANDLE, //socket to listen with
IN int); //length of listen queue
int
getpeername(
IN SOCKET_HANDLE, //connected socket to get peer of
OUT struct sockaddr *, //buffer to put peer address into
OUT int *); //length of buffer
int
getsockname(
IN SOCKET_HANDLE, //socket to get the address of
OUT struct sockaddr *, //buffer to put my address into
OUT int *); //length of buffer
int
poll(
IN OUT struct pollfd *,
IN unsigned int,
IN int);
int
recv(
IN SOCKET_HANDLE, //socket to receive with
IN char *, //buffer to receive into
IN int, //size of buffer
IN int); //receive flags
int
recvfrom(
IN SOCKET_HANDLE, //socket to receive with
OUT char *, //buffer to receive into
IN int, //size of buffer
IN int, //receive flags
OUT struct sockaddr *, //address received from
OUT int *); //size of address
int
send(
IN SOCKET_HANDLE, //socket to send from
IN char *, //buffer to send
IN int, //size of buffer
IN int); //send flags
int
sendto(
IN SOCKET_HANDLE, //socket to send from
IN char *, //buffer to send
IN int, //size of buffer
IN int, //send flags
IN struct sockaddr *, //address to send to
IN int); //size of address
SOCKET_HANDLE
socket(
IN int, //address family
IN int, //socket type
IN int); //protocol
int
so_recv(
IN SOCKET_HANDLE, //socket to receive with
OUT char *, //buffer to receive into
IN int, //size of buffer
OUT int *); //receive flags
int
setsockopt(
IN SOCKET_HANDLE,
int,
int,
char *,
int);
int
getsockopt(
IN SOCKET_HANDLE,
int,
int,
char *,
int *);
int
shutdown(
IN SOCKET_HANDLE,
IN int);
//
// Host name control
//
int
gethostname(
OUT char *name,
IN int namelen
);
int
sethostname (
IN char *name,
IN int namelen
);
//
// Remote execution utilities
//
SOCKET_HANDLE
rcmd(
IN OUT char **ahost,
IN unsigned short inport,
IN char *locuser,
IN char *remuser,
IN char *cmd,
IN OUT SOCKET_HANDLE *fd2p OPTIONAL
);
SOCKET_HANDLE
rresvport(
IN OUT unsigned short *port
);
SOCKET_HANDLE
rexec(
IN char **ahost,
IN unsigned short rport,
IN char *name,
IN char *pass,
IN char *cmd,
OUT SOCKET_HANDLE *fd2p OPTIONAL
);
//
// Resolver error return utilities
//
DWORD
GetLastHError(
VOID
);
VOID
SetLastHError(
DWORD ErrCode
);
#endif //PSXSOCK_INCLUDED
|