23#if defined _PS3 || defined _PSP
24 #define gsiSocketIsError(theReturnValue) ((theReturnValue) < 0)
25 #define gsiSocketIsNotError(theReturnValue) ((theReturnValue) >= 0)
27 #define gsiSocketIsError(theReturnValue) ((theReturnValue) == -1)
28 #define gsiSocketIsNotError(theReturnValue) ((theReturnValue) != -1)
39 GS_SOCKERR_EWOULDBLOCK,
40 GS_SOCKERR_EINPROGRESS,
43 GS_SOCKERR_EDESTADDRREQ,
45 GS_SOCKERR_EPROTOTYPE,
46 GS_SOCKERR_ENOPROTOOPT ,
47 GS_SOCKERR_EPROTONOSUPPORT ,
48 GS_SOCKERR_ESOCKTNOSUPPORT,
49 GS_SOCKERR_EOPNOTSUPP ,
50 GS_SOCKERR_EPFNOSUPPORT,
51 GS_SOCKERR_EAFNOSUPPORT,
52 GS_SOCKERR_EADDRINUSE ,
53 GS_SOCKERR_EADDRNOTAVAIL ,
55 GS_SOCKERR_ENETUNREACH ,
57 GS_SOCKERR_ECONNABORTED,
58 GS_SOCKERR_ECONNRESET ,
63 GS_SOCKERR_ETOOMANYREFS ,
65 GS_SOCKERR_ECONNREFUSED,
67 GS_SOCKERR_ENAMETOOLONG,
68 GS_SOCKERR_EHOSTDOWN ,
69 GS_SOCKERR_EHOSTUNREACH ,
70 GS_SOCKERR_ENOTEMPTY ,
80#define gsiSocketIsError(theReturnValue) ((theReturnValue) != GS_SOCKERR_NONE)
81#define gsiSocketIsNotError(theReturnValue) ((theReturnValue) == GS_SOCKERR_NONE)
83typedef int GSI_SOCKET;
93GSI_SOCKET gsiSocketAccept (GSI_SOCKET sock, GS_SOCKADDR* addr,
int* len);
94GS_SOCKET_ERROR gsiSocketSocket (
int pf,
int type,
int protocol);
95GS_SOCKET_ERROR gsiSocketClosesocket(GSI_SOCKET sock);
96GS_SOCKET_ERROR gsiSocketShutdown (GSI_SOCKET sock,
int how);
97GS_SOCKET_ERROR gsiSocketBind (GSI_SOCKET sock,
const GS_SOCKADDR* addr,
int len);
98GS_SOCKET_ERROR gsiSocketConnect (GSI_SOCKET sock,
const GS_SOCKADDR* addr,
int len);
99GS_SOCKET_ERROR gsiSocketListen (GSI_SOCKET sock,
int backlog);
100GS_SOCKET_ERROR gsiSocketRecv (GSI_SOCKET sock,
char* buf,
int len,
int flags);
101GS_SOCKET_ERROR gsiSocketRecvfrom (GSI_SOCKET sock,
char* buf,
int len,
int flags, GS_SOCKADDR* addr,
int* fromlen);
102GS_SOCKET_ERROR gsiSocketSend (GSI_SOCKET sock,
const char* buf,
int len,
int flags);
103GS_SOCKET_ERROR gsiSocketSendto (GSI_SOCKET sock,
const char* buf,
int len,
int flags,
const GS_SOCKADDR* addr,
int tolen);
104GS_SOCKET_ERROR gsiSocketGetsockopt (GSI_SOCKET sock,
int level,
int optname,
char* optval,
int* optlen);
105GS_SOCKET_ERROR gsiSocketSetsockopt (GSI_SOCKET sock,
int level,
int optname,
const char* optval,
int optlen);
106GS_SOCKET_ERROR gsiSocketGetsockname(GSI_SOCKET sock, GS_SOCKADDR* addr,
int* len);
107GS_SOCKET_ERROR GOAGetLastError (GSI_SOCKET sock);
109gsiSocketGethostbyaddr(a,l,t) SOC_GetHostByAddr(a,l,t)
110gsiSocketGethostbyname(n) SOC_GetHostByName(n)
122 #define INADDR_NONE 0xffffffff
125#ifndef INVALID_SOCKET
126 #define INVALID_SOCKET (-1)
135 #define AF_INET SCE_NET_INET_AF_INET
136 #define SOCK_STREAM SCE_NET_INET_SOCK_STREAM
137 #define SOCK_DGRAM SCE_NET_INET_SOCK_DGRAM
138 #define SOCK_RAW SCE_NET_INET_SOCK_RAW
139 #define INADDR_ANY SCE_NET_INET_INADDR_ANY
140 #define SOL_SOCKET SCE_NET_INET_SOL_SOCKET
141 #define SO_SNDBUF SCE_NET_INET_SO_SNDBUF
142 #define SO_RCVBUF SCE_NET_INET_SO_RCVBUF
143 #define SO_NBIO SCE_NET_INET_SO_NBIO
144 #define SO_BROADCAST SCE_NET_INET_SO_BROADCAST
145 #define SO_KEEPALIVE SCE_NET_INET_SO_KEEPALIVE
146 #define SO_REUSEADDR SCE_NET_INET_SO_REUSEADDR
148 #define IPPROTO_TCP SCE_NET_INET_IPPROTO_TCP
149 #define IPPROTO_UDP SCE_NET_INET_IPPROTO_UDP
150 #define IPPROTO_ICMP SCE_NET_INET_IPPROTO_ICMP
153 #define in_addr SceNetInetInAddr
154 #define sockaddr_in SceNetInetSockaddrIn
155 #define sockaddr SceNetInetSockaddr
159 #if defined(_SYS_TYPES_H) && defined(FD_SET)
167 #define fd_set SceNetInetFdSet
168 #define timeval SceNetInetTimeval
169 #define FD_SET SceNetInetFD_SET
170 #define FD_CLR SceNetInetFD_CLR
171 #define FD_ZERO SceNetInetFD_ZERO
172 #define FD_SETSIZE SCE_NET_INET_FD_SETSIZE
175 #define htonl sceNetHtonl
176 #define ntohl sceNetNtohl
177 #define htons sceNetHtons
178 #define ntohs sceNetNtohs
179 #define socket sceNetInetSocket
180 #define shutdown sceNetInetShutdown
181 #define closesocket sceNetInetClose
183 #define setsockopt sceNetInetSetsockopt
184 #define getsockopt(s, l, on, ov, ol) sceNetInetGetsockopt(s, l, on, ov, (SceNetInetSocklen_t *)ol)
186 #define bind sceNetInetBind
187 #define select sceNetInetSelect
189 #define connect sceNetInetConnect
190 #define listen sceNetInetListen
191 #define accept(s,a,l) sceNetInetAccept(s, a, (SceNetInetSocklen_t *)l)
193 #define send sceNetInetSend
194 #define recv sceNetInetRecv
195 #define sendto sceNetInetSendto
196 #define recvfrom(s, b, l, f, fr, fl) sceNetInetRecvfrom(s, b, l, f, fr, (SceNetInetSocklen_t *)fl)
199 #define inet_addr sceNetInetInetAddr
203 #define getsockname(s,n,l) sceNetInetGetsockname(s, n, (SceNetInetSocklen_t *)l)
205 #define GOAGetLastError(s) sceNetInetGetErrno()
217 #define gethostbyname gsSocketGetHostByName
218 #define inet_ntoa gsSocketInetNtoa
220 #define GSI_RESOLVER_TIMEOUT (5*1000*1000)
221 #define GSI_RESOLVER_RETRY (2)
223 struct hostent* gsSocketGetHostByName(
const char* name);
224 const char* gsSocketInetNtoa(
struct in_addr in);
242 typedef struct hostent HOSTENT;
243 struct hostent * gethostbyname(
const char* name);
248 char * inet_ntoa(IN_ADDR in_addr);
251#if defined(SN_SYSTEMS)
252 #define IPPROTO_TCP PF_INET
253 #define IPPROTO_UDP PF_INET
254 #define FD_SETSIZE SN_MAX_SOCKETS
258#if defined(_REVOLUTION)
259 #define WSAEWOULDBLOCK SO_EWOULDBLOCK
260 #define WSAEINPROGRESS SO_EINPROGRESS
261 #define WSAEALREADY SO_EALREADY
262 #define WSAENOTSOCK SO_ENOTSOCK
263 #define WSAEDESTADDRREQ SO_EDESTADDRREQ
264 #define WSAEMSGSIZE SO_EMSGSIZE
265 #define WSAEPROTOTYPE SO_EPROTOTYPE
266 #define WSAENOPROTOOPT SO_ENOPROTOOPT
267 #define WSAEPROTONOSUPPORT SO_EPROTONOSUPPORT
268 #define WSAEOPNOTSUPP SO_EOPNOTSUPP
269 #define WSAEAFNOSUPPORT SO_EAFNOSUPPORT
270 #define WSAEADDRINUSE SO_EADDRINUSE
271 #define WSAEADDRNOTAVAIL SO_EADDRNOTAVAIL
272 #define WSAENETDOWN SO_ENETDOWN
273 #define WSAENETUNREACH SO_ENETUNREACH
274 #define WSAENETRESET SO_ENETRESET
275 #define WSAECONNABORTED SO_ECONNABORTED
276 #define WSAECONNRESET SO_ECONNRESET
277 #define WSAENOBUFS SO_ENOBUFS
278 #define WSAEISCONN SO_EISCONN
279 #define WSAENOTCONN SO_ENOTCONN
280 #define WSAETIMEDOUT SO_ETIMEDOUT
281 #define WSAECONNREFUSED SO_ECONNREFUSED
282 #define WSAELOOP SO_ELOOP
283 #define WSAENAMETOOLONG SO_ENAMETOOLONG
284 #define WSAEHOSTUNREACH SO_EHOSTUNREACH
285 #define WSAENOTEMPTY SO_ENOTEMPTY
286 #define WSAEDQUOT SO_EDQUOT
287 #define WSAESTALE SO_ESTALE
288 #define WSAEINVAL SO_EINVAL
290 #define WSAEWOULDBLOCK SOC_EWOULDBLOCK
291 #define WSAEINPROGRESS SOC_EINPROGRESS
292 #define WSAEALREADY SOC_EALREADY
293 #define WSAENOTSOCK SOC_ENOTSOCK
294 #define WSAEDESTADDRREQ SOC_EDESTADDRREQ
295 #define WSAEMSGSIZE SOC_EMSGSIZE
296 #define WSAEPROTOTYPE SOC_EPROTOTYPE
297 #define WSAENOPROTOOPT SOC_ENOPROTOOPT
298 #define WSAEPROTONOSUPPORT SOC_EPROTONOSUPPORT
299 #define WSAEOPNOTSUPP SOC_EOPNOTSUPP
300 #define WSAEAFNOSUPPORT SOC_EAFNOSUPPORT
301 #define WSAEADDRINUSE SOC_EADDRINUSE
302 #define WSAEADDRNOTAVAIL SOC_EADDRNOTAVAIL
303 #define WSAENETDOWN SOC_ENETDOWN
304 #define WSAENETUNREACH SOC_ENETUNREACH
305 #define WSAENETRESET SOC_ENETRESET
306 #define WSAECONNABORTED SOC_ECONNABORTED
307 #define WSAECONNRESET SOC_ECONNRESET
308 #define WSAENOBUFS SOC_ENOBUFS
309 #define WSAEISCONN SOC_EISCONN
310 #define WSAENOTCONN SOC_ENOTCONN
311 #define WSAETIMEDOUT SOC_ETIMEDOUT
312 #define WSAECONNREFUSED SOC_ECONNREFUSED
313 #define WSAELOOP SOC_ELOOP
314 #define WSAENAMETOOLONG SOC_ENAMETOOLONG
315 #define WSAEHOSTUNREACH SOC_EHOSTUNREACH
316 #define WSAENOTEMPTY SOC_ENOTEMPTY
317 #define WSAEDQUOT SOC_EDQUOT
318 #define WSAESTALE SOC_ESTALE
319 #define WSAEINVAL SOC_EINVAL
321 #define WSAEWOULDBLOCK SYS_NET_EWOULDBLOCK
322 #define WSAEINPROGRESS SYS_NET_EINPROGRESS
323 #define WSAEALREADY SYS_NET_EALREADY
324 #define WSAENOTSOCK SYS_NET_ENOTSOCK
325 #define WSAEDESTADDRREQ SYS_NET_EDESTADDRREQ
326 #define WSAEMSGSIZE SYS_NET_EMSGSIZE
327 #define WSAEPROTOTYPE SYS_NET_EPROTOTYPE
328 #define WSAENOPROTOOPT SYS_NET_ENOPROTOOPT
329 #define WSAEPROTONOSUPPORT SYS_NET_EPROTONOSUPPORT
330 #define WSAESOCKTNOSUPPORT SYS_NET_ESOCKTNOSUPPORT
331 #define WSAEOPNOTSUPP SYS_NET_EOPNOTSUPP
332 #define WSAEPFNOSUPPORT SYS_NET_EPFNOSUPPORT
333 #define WSAEAFNOSUPPORT SYS_NET_EAFNOSUPPORT
334 #define WSAEADDRINUSE SYS_NET_EADDRINUSE
335 #define WSAEADDRNOTAVAIL SYS_NET_EADDRNOTAVAIL
336 #define WSAENETDOWN SYS_NET_ENETDOWN
337 #define WSAENETUNREACH SYS_NET_ENETUNREACH
338 #define WSAENETRESET SYS_NET_ENETRESET
339 #define WSAECONNABORTED SYS_NET_ECONNABORTED
340 #define WSAECONNRESET SYS_NET_ECONNRESET
341 #define WSAENOBUFS SYS_NET_ENOBUFS
342 #define WSAEISCONN SYS_NET_EISCONN
343 #define WSAENOTCONN SYS_NET_ENOTCONN
344 #define WSAESHUTDOWN SYS_NET_ESHUTDOWN
345 #define WSAETOOMANYREFS SYS_NET_ETOOMANYREFS
346 #define WSAETIMEDOUT SYS_NET_ERROR_ETIMEDOUT
347 #define WSAECONNREFUSED SYS_NET_ECONNREFUSED
348 #define WSAELOOP SYS_NET_ELOOP
349 #define WSAENAMETOOLONG SYS_NET_ENAMETOOLONG
350 #define WSAEHOSTDOWN SYS_NET_EHOSTDOWN
351 #define WSAEHOSTUNREACH SYS_NET_EHOSTUNREACH
352 #define WSAENOTEMPTY SYS_NET_ENOTEMPTY
353 #define WSAEPROCLIM SYS_NET_EPROCLIM
354 #define WSAEUSERS SYS_NET_EUSERS
355 #define WSAEDQUOT SYS_NET_EDQUOT
356 #define WSAESTALE SYS_NET_ESTALE
357 #define WSAEREMOTE SYS_NET_EREMOTE
358 #define WSAEINVAL SYS_NET_EINVAL
359#elif !defined(_WIN32)
360 #define WSAEWOULDBLOCK EWOULDBLOCK
361 #define WSAEINPROGRESS EINPROGRESS
362 #define WSAEALREADY EALREADY
363 #define WSAENOTSOCK ENOTSOCK
364 #define WSAEDESTADDRREQ EDESTADDRREQ
365 #define WSAEMSGSIZE EMSGSIZE
366 #define WSAEPROTOTYPE EPROTOTYPE
367 #define WSAENOPROTOOPT ENOPROTOOPT
368 #define WSAEPROTONOSUPPORT EPROTONOSUPPORT
369 #define WSAESOCKTNOSUPPORT ESOCKTNOSUPPORT
370 #define WSAEOPNOTSUPP EOPNOTSUPP
371 #define WSAEPFNOSUPPORT EPFNOSUPPORT
372 #define WSAEAFNOSUPPORT EAFNOSUPPORT
373 #define WSAEADDRINUSE EADDRINUSE
374 #define WSAEADDRNOTAVAIL EADDRNOTAVAIL
375 #define WSAENETDOWN ENETDOWN
376 #define WSAENETUNREACH ENETUNREACH
377 #define WSAENETRESET ENETRESET
378 #define WSAECONNABORTED ECONNABORTED
379 #define WSAECONNRESET ECONNRESET
380 #define WSAENOBUFS ENOBUFS
381 #define WSAEISCONN EISCONN
382 #define WSAENOTCONN ENOTCONN
383 #define WSAESHUTDOWN ESHUTDOWN
384 #define WSAETOOMANYREFS ETOOMANYREFS
385 #define WSAETIMEDOUT ETIMEDOUT
386 #define WSAECONNREFUSED ECONNREFUSED
387 #define WSAELOOP ELOOP
388 #define WSAENAMETOOLONG ENAMETOOLONG
389 #define WSAEHOSTDOWN EHOSTDOWN
390 #define WSAEHOSTUNREACH EHOSTUNREACH
391 #define WSAENOTEMPTY ENOTEMPTY
392 #define WSAEPROCLIM EPROCLIM
393 #define WSAEUSERS EUSERS
394 #define WSAEDQUOT EDQUOT
395 #define WSAESTALE ESTALE
396 #define WSAEREMOTE EREMOTE
397 #define WSAEINVAL EINVAL
401#if !defined(_WIN32) && !defined(_NITRO) && !defined(_REVOLUTION)
403 typedef struct sockaddr SOCKADDR;
404 typedef struct sockaddr_in SOCKADDR_IN;
405 typedef struct in_addr IN_ADDR;
406 typedef struct hostent HOSTENT;
407 typedef struct timeval TIMEVAL;
411 #define GOAGetLastError(s) sceEENetErrno
412 #define closesocket sceEENetClose
417 #define NETBUFSIZE (32768)
420int gsiShutdown(SOCKET s,
int how);
422 #define GOAGetLastError(s) sceInsockErrno
423 #define closesocket(s) gsiShutdown(s,SCE_INSOCK_SHUT_RDWR)
425 #define shutdown(s,h) gsiShutdown(s,h)
429 #define GOAGetLastError(s) errno
430 #define closesocket close
434 #define ioctlsocket ioctl
438 #define GOAGetLastError(s) WSAGetLastError()
441#if defined(_REVOLUTION)
442 #define AF_INET SO_PF_INET
443 #define SOCK_DGRAM SO_SOCK_DGRAM
444 #define SOCK_STREAM SO_SOCK_STREAM
445 #define IPPROTO_UDP SO_IPPROTO_UDP
446 #define IPPROTO_TCP SO_IPPROTO_TCP
447 #define INADDR_ANY SO_INADDR_ANY
448 #define SOL_SOCKET SO_SOL_SOCKET
449 #define SO_SNDBUF SO_SO_SNDBUF
450 #define SO_RCVBUF SO_SO_RCVBUF
451 #define SO_REUSEADDR SO_SO_REUSEADDR
454 typedef struct SOSockAddr SOCKADDR;
455 #define sockaddr SOSockAddr
456 typedef struct SOSockAddrIn SOCKADDR_IN;
457 #define sockaddr_in SOSockAddrIn
458 #define sin_family family
459 #define sin_port port
460 #define sin_addr addr
461 typedef struct SOInAddr IN_ADDR;
462 #define in_addr SOInAddr
464 typedef struct SOHostEnt HOSTENT;
465 #define hostent SOHostEnt
467 #define h_aliases aliases
468 #define h_addrtype addrType
469 #define h_length length
470 #define h_addr_list addrList
471 #define h_addr addrList[0]
473 int socket(
int pf,
int type,
int protocol);
474 int closesocket(SOCKET sock);
475 int shutdown(SOCKET sock,
int how);
476 int bind(SOCKET sock,
const SOCKADDR* addr,
int len);
478 int connect(SOCKET sock,
const SOCKADDR* addr,
int len);
479 int listen(SOCKET sock,
int backlog);
480 SOCKET accept(SOCKET sock, SOCKADDR* addr,
int* len);
482 int recv(SOCKET sock,
char* buf,
int len,
int flags);
483 int recvfrom(SOCKET sock,
char* buf,
int len,
int flags, SOCKADDR* addr,
int* fromlen);
484 int send(SOCKET sock,
const char* buf,
int len,
int flags);
485 int sendto(SOCKET sock,
const char* buf,
int len,
int flags,
const SOCKADDR* addr,
int tolen);
487 int getsockopt(SOCKET sock,
int level,
int optname,
char* optval,
int* optlen);
488 int setsockopt(SOCKET sock,
int level,
int optname,
const char* optval,
int optlen);
490 #define gethostbyaddr(a,l,t) SOGetHostByAddr(a,l,t)
491 #define gethostbyname(n) SOGetHostByName(n)
494 #define getaddrinfo(n,s,h,r) SOGetAddrInfo(n,s,h,r)
495 #define freeaddrinfo(a) SOFreeAddrInfo(a)
498 int getsockname(SOCKET sock, SOCKADDR* addr,
int* len);
500 #define htonl(l) SOHtoNl((u32)l)
501 #define ntohl(l) SONtoHl((u32)l)
502 #define htons(s) SOHtoNs((u16)s)
503 #define ntohs(s) SONtoHs((u16)s)
505 #define inet_ntoa(n) SOInetNtoA(n)
506 unsigned long inet_addr(
const char * name);
508 int GOAGetLastError(SOCKET sock);
512 #define AF_INET SOC_PF_INET
513 #define SOCK_DGRAM SOC_SOCK_DGRAM
514 #define SOCK_STREAM SOC_SOCK_STREAM
515 #define IPPROTO_UDP 0
516 #define IPPROTO_TCP 0
517 #define INADDR_ANY SOC_INADDR_ANY
518 #define SOL_SOCKET SOC_SOL_SOCKET
519 #define SO_SNDBUF SOC_SO_SNDBUF
520 #define SO_RCVBUF SOC_SO_RCVBUF
521 #define SO_REUSEADDR SOC_SO_REUSEADDR
524 typedef struct SOSockAddr SOCKADDR;
525 #define sockaddr SOSockAddr
526 typedef struct SOSockAddrIn SOCKADDR_IN;
527 #define sockaddr_in SOSockAddrIn
528 #define sin_family family
529 #define sin_port port
530 #define sin_addr addr
531 typedef struct SOInAddr IN_ADDR;
532 #define in_addr SOInAddr
534 typedef struct SOHostEnt HOSTENT;
535 #define hostent SOHostEnt
537 #define h_aliases aliases
538 #define h_addrtype addrType
539 #define h_length length
540 #define h_addr_list addrList
541 #define h_addr addrList[0]
543 int socket(
int pf,
int type,
int protocol);
544 int closesocket(SOCKET sock);
545 int shutdown(SOCKET sock,
int how);
546 int bind(SOCKET sock,
const SOCKADDR* addr,
int len);
548 int connect(SOCKET sock,
const SOCKADDR* addr,
int len);
549 int listen(SOCKET sock,
int backlog);
550 SOCKET accept(SOCKET sock, SOCKADDR* addr,
int* len);
552 int recv(SOCKET sock,
char* buf,
int len,
int flags);
553 int recvfrom(SOCKET sock,
char* buf,
int len,
int flags, SOCKADDR* addr,
int* fromlen);
554 int send(SOCKET sock,
const char* buf,
int len,
int flags);
555 int sendto(SOCKET sock,
const char* buf,
int len,
int flags,
const SOCKADDR* addr,
int tolen);
557 int getsockopt(SOCKET sock,
int level,
int optname,
char* optval,
int* optlen);
558 int setsockopt(SOCKET sock,
int level,
int optname,
const char* optval,
int optlen);
560 #define gethostbyaddr(a,l,t) SOC_GetHostByAddr(a,l,t)
561 #define gethostbyname(n) SOC_GetHostByName(n)
563 int getsockname(SOCKET sock, SOCKADDR* addr,
int* len);
565 #define htonl(l) SOC_HtoNl(l)
566 #define ntohl(l) SOC_NtoHl(l)
567 #define htons(s) SOC_HtoNs(s)
568 #define ntohs(s) SOC_NtoHs(s)
570 #define inet_ntoa(n) SOC_InetNtoA(n)
571 unsigned long inet_addr(
const char * name);
573 int GOAGetLastError(SOCKET sock);
577 #define accept(s,a,al) accept(s,a,(socklen_t*)(al))
578 #define bind(s,a,al) bind(s,a,(socklen_t)(al))
579 #define connect(s,a,al) connect(s,a,(socklen_t)(al))
580 #define getpeername(s,a,al) getpeername(s,a,(socklen_t*)(al))
581 #define getsockname(s,a,al) getsockname(s,a,(socklen_t*)(al))
582 #define getsockopt(s,l,o,v,vl) getsockopt(s,l,o,v,(socklen_t*)(vl))
583 #define recvfrom(s,b,l,f,a,al) recvfrom(s,b,l,f,a,(socklen_t*)(al))
584 #define sendto(s,b,l,f,a,al) sendto(s,b,l,f,a,(socklen_t)(al))
585 #define setsockopt(s,l,o,v,vl) setsockopt(s,l,o,v,(socklen_t)(vl))
586 #define closesocket socketclose
587 #define GOAGetLastError(s) sys_net_errno
588 #define EWOULDBLOCK sceNET_EWOULDBLOCK
592 #define accept(s,a,al) accept(s,a,(socklen_t*)(al))
593 #define bind(s,a,al) bind(s,a,(socklen_t)(al))
594 #define connect(s,a,al) connect(s,a,(socklen_t)(al))
595 #define getpeername(s,a,al) getpeername(s,a,(socklen_t*)(al))
596 #define getsockname(s,a,al) getsockname(s,a,(socklen_t*)(al))
597 #define getsockopt(s,l,o,v,vl) getsockopt(s,l,o,v,(socklen_t*)(vl))
598 #define recvfrom(s,b,l,f,a,al) recvfrom(s,b,l,f,a,(socklen_t*)(al))
599 #define sendto(s,b,l,f,a,al) sendto(s,b,l,f,a,(socklen_t)(al))
600 #define setsockopt(s,l,o,v,vl) setsockopt(s,l,o,v,(socklen_t)(vl))
603#if defined(SN_SYSTEMS)
604 int GOAGetLastError(SOCKET s);
606 #if !defined(__MWERKS__)
607 #define send(s,b,l,f) (int)send(s,b,(unsigned long)l,f)
608 #define recv(s,b,l,f) (int)recv(s,b,(unsigned long)l,f)
609 #define sendto(s,b,l,f,a,al) (int)sendto(s,b,(unsigned long)l,f,a,al)
610 #define recvfrom(s,b,l,f,a,al) (int)recvfrom(s,b,(unsigned long)l,f,a,al)
615#if defined(SN_SYSTEMS)
616 #define gethostbyaddr(a,b,c) NULL
622int SetSockBlocking(SOCKET sock,
int isblocking);
623int SetSockBroadcast(SOCKET sock);
624int DisableNagle(SOCKET sock);
625int SetReceiveBufferSize(SOCKET sock,
int size);
626int SetSendBufferSize(SOCKET sock,
int size);
627int GetReceiveBufferSize(SOCKET sock);
628int GetSendBufferSize(SOCKET sock);
629int CanReceiveOnSocket(SOCKET sock);
630int CanSendOnSocket(SOCKET sock);
631int GSISocketSelect(SOCKET theSocket,
int* theReadFlag,
int* theWriteFlag,
int* theExceptFlag);
633void SocketShutDown();
635HOSTENT * getlocalhost(
void);
637int IsPrivateIP(IN_ADDR * addr);
638gsi_u32 gsiGetBroadcastIP(
void);
642 #define gethostbyaddr(a,b,c) NULL