X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Usermode%2FLibraries%2Flibpsocket.so_src%2Finclude_exp%2Fsys%2Fsocket.h;h=4d2a1c23e5768a2313b5e2336b5c9087bcbd1d0c;hb=bdefac5f54668fcccff11a69619ff31b25595eeb;hp=adc5a871d3a0f8c1544e4066ebf3072d60255c1a;hpb=d0b4559f2936f6d9f06be0f7c3c51527a480ec0d;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 adc5a871..4d2a1c23 100644 --- a/Usermode/Libraries/libpsocket.so_src/include_exp/sys/socket.h +++ b/Usermode/Libraries/libpsocket.so_src/include_exp/sys/socket.h @@ -10,6 +10,7 @@ #include #include // size_t +#include // uint32_t typedef uint32_t socklen_t; @@ -17,9 +18,11 @@ typedef enum { AF_UNSPEC = 0, AF_PACKET = 1, + AF_LOCAL = 2, AF_INET = 4, AF_INET6 = 6, } sa_family_t; +#define AF_UNIX AF_LOCAL struct sockaddr { @@ -71,6 +74,7 @@ enum eSocketTypes */ enum eSocketDomains { + PF_UNSPEC, PF_LOCAL, //!< Machine-local comms PF_INET, //!< IPv4 PF_INET6, //!< IPv6 @@ -78,6 +82,20 @@ enum eSocketDomains }; #define PF_UNIX PF_LOCAL +// getsockopt/setsockopt level +enum +{ + SOL_SOCKET +}; + + +// SOL_SOCKET getsockopt/setsockopt names +enum +{ + SO_REUSEADDR, + SO_LINGER +}; + /** * \brief Create a new socket descriptor * \param domain Address family @@ -112,5 +130,8 @@ extern int send(int sockfd, void *buffer, size_t length, int flags); extern int setsockopt(int socket, int level, int option_name, const void *option_value, socklen_t option_len); extern int getsockopt(int socket, int level, int option_name, void *option_value, socklen_t *option_len); +extern int getsockname(int socket, struct sockaddr *addr, socklen_t *addrlen); +extern int getpeername(int socket, struct sockaddr *addr, socklen_t *addrlen); + #endif