00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036 #ifndef __SOCKET_WRAPPER_H__
00037 #define __SOCKET_WRAPPER_H__
00038
00039 int swrap_socket(int family, int type, int protocol);
00040 int swrap_accept(int s, struct sockaddr *addr, socklen_t *addrlen);
00041 int swrap_connect(int s, const struct sockaddr *serv_addr, socklen_t addrlen);
00042 int swrap_bind(int s, const struct sockaddr *myaddr, socklen_t addrlen);
00043 int swrap_listen(int s, int backlog);
00044 int swrap_getpeername(int s, struct sockaddr *name, socklen_t *addrlen);
00045 int swrap_getsockname(int s, struct sockaddr *name, socklen_t *addrlen);
00046 int swrap_getsockopt(int s, int level, int optname, void *optval, socklen_t *optlen);
00047 int swrap_setsockopt(int s, int level, int optname, const void *optval, socklen_t optlen);
00048 ssize_t swrap_recvfrom(int s, void *buf, size_t len, int flags, struct sockaddr *from, socklen_t *fromlen);
00049 ssize_t swrap_sendto(int s, const void *buf, size_t len, int flags, const struct sockaddr *to, socklen_t tolen);
00050 int swrap_ioctl(int s, int req, void *ptr);
00051 ssize_t swrap_recv(int s, void *buf, size_t len, int flags);
00052 ssize_t swrap_send(int s, const void *buf, size_t len, int flags);
00053 int swrap_close(int);
00054
00055 #ifdef SOCKET_WRAPPER_REPLACE
00056
00057 #ifdef accept
00058 #undef accept
00059 #endif
00060 #define accept(s,addr,addrlen) swrap_accept(s,addr,addrlen)
00061
00062 #ifdef connect
00063 #undef connect
00064 #endif
00065 #define connect(s,serv_addr,addrlen) swrap_connect(s,serv_addr,addrlen)
00066
00067 #ifdef bind
00068 #undef bind
00069 #endif
00070 #define bind(s,myaddr,addrlen) swrap_bind(s,myaddr,addrlen)
00071
00072 #ifdef listen
00073 #undef listen
00074 #endif
00075 #define listen(s,blog) swrap_listen(s,blog)
00076
00077 #ifdef getpeername
00078 #undef getpeername
00079 #endif
00080 #define getpeername(s,name,addrlen) swrap_getpeername(s,name,addrlen)
00081
00082 #ifdef getsockname
00083 #undef getsockname
00084 #endif
00085 #define getsockname(s,name,addrlen) swrap_getsockname(s,name,addrlen)
00086
00087 #ifdef getsockopt
00088 #undef getsockopt
00089 #endif
00090 #define getsockopt(s,level,optname,optval,optlen) swrap_getsockopt(s,level,optname,optval,optlen)
00091
00092 #ifdef setsockopt
00093 #undef setsockopt
00094 #endif
00095 #define setsockopt(s,level,optname,optval,optlen) swrap_setsockopt(s,level,optname,optval,optlen)
00096
00097 #ifdef recvfrom
00098 #undef recvfrom
00099 #endif
00100 #define recvfrom(s,buf,len,flags,from,fromlen) swrap_recvfrom(s,buf,len,flags,from,fromlen)
00101
00102 #ifdef sendto
00103 #undef sendto
00104 #endif
00105 #define sendto(s,buf,len,flags,to,tolen) swrap_sendto(s,buf,len,flags,to,tolen)
00106
00107 #ifdef ioctl
00108 #undef ioctl
00109 #endif
00110 #define ioctl(s,req,ptr) swrap_ioctl(s,req,ptr)
00111
00112 #ifdef recv
00113 #undef recv
00114 #endif
00115 #define recv(s,buf,len,flags) swrap_recv(s,buf,len,flags)
00116
00117 #ifdef send
00118 #undef send
00119 #endif
00120 #define send(s,buf,len,flags) swrap_send(s,buf,len,flags)
00121
00122 #ifdef socket
00123 #undef socket
00124 #endif
00125 #define socket(domain,type,protocol) swrap_socket(domain,type,protocol)
00126
00127 #ifdef close
00128 #undef close
00129 #endif
00130 #define close(s) swrap_close(s)
00131 #endif
00132
00133 #endif