X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Usermode%2FLibraries%2Flibpsocket.so_src%2Finclude_exp%2Fsys%2Fsocket.h;h=deb1f51e7e3de3f63fc43c9faa5a2f7e9ccc9bc0;hb=cee190b0244cf8c1389f82237f0c1457eb2c0e7f;hp=4d2a1c23e5768a2313b5e2336b5c9087bcbd1d0c;hpb=bdefac5f54668fcccff11a69619ff31b25595eeb;p=tpg%2Facess2.git diff --git a/Usermode/Libraries/libpsocket.so_src/include_exp/sys/socket.h b/Usermode/Libraries/libpsocket.so_src/include_exp/sys/socket.h index 4d2a1c23..deb1f51e 100644 --- a/Usermode/Libraries/libpsocket.so_src/include_exp/sys/socket.h +++ b/Usermode/Libraries/libpsocket.so_src/include_exp/sys/socket.h @@ -9,7 +9,9 @@ #define _SYS_SOCKETS_H_ #include +#ifndef size_t #include // size_t +#endif #include // uint32_t typedef uint32_t socklen_t; @@ -27,7 +29,7 @@ typedef enum struct sockaddr { sa_family_t sa_family; - char sa_data[16]; + char sa_data[16+2]; }; struct msghdr @@ -93,15 +95,37 @@ enum enum { SO_REUSEADDR, - SO_LINGER + SO_LINGER, + SO_ERROR, + SO_KEEPALIVE, +}; + +// shutdown how +enum +{ + SHUT_RD, + SHUT_WR, + SHUT_RDWR }; +// flags for send* +//#define MSG_CONFIRM 0x01 +#define MSG_DONTROUTE 0x02 +#define MSG_OOB 0x40 +// flags for recv +#define MSG_PEEK 0x100 + /** * \brief Create a new socket descriptor * \param domain Address family */ extern int socket(int domain, int type, int protocol); +/** + * + */ +extern int shutdown(int socket, int how); + /** * \brief Bind a socket to an address */ @@ -120,7 +144,7 @@ extern int listen(int sockfd, int backlog); /** * \brief Accept an incoming connection */ -extern int accept(int sockfd, struct sockaddr *clientaddr, socklen_t addrlen); +extern int accept(int sockfd, struct sockaddr *clientaddr, socklen_t *addrlen); extern int recvfrom(int sockfd, void *buffer, size_t length, int flags, struct sockaddr *clientaddr, socklen_t *addrlen); extern int recv(int sockfd, void *buffer, size_t length, int flags); @@ -133,5 +157,12 @@ extern int getsockopt(int socket, int level, int option_name, void *option_value extern int getsockname(int socket, struct sockaddr *addr, socklen_t *addrlen); extern int getpeername(int socket, struct sockaddr *addr, socklen_t *addrlen); +extern struct hostent *gethostbyaddr(const void *addr, socklen_t len, int type); +extern void sethostent(int stayopen); +extern void endhostent(void); +extern void herror(const char *s); +extern const char *hstrerror(int err); +extern struct hostent *gethostent(void); + #endif