diff options
author | Andrew Bartlett <abartlet@samba.org> | 2011-05-02 15:23:08 +1000 |
---|---|---|
committer | Andrew Bartlett <abartlet@samba.org> | 2011-05-03 07:37:07 +0200 |
commit | fbea52f74a80268446f45936a0cf40400aba8565 (patch) | |
tree | 5f77314c19f34a05683d9ee8f76ab250e4e8da6f /source3/lib/system.c | |
parent | 85fa87ea82a1dcbd4d0145e417d615ffca116751 (diff) | |
download | samba-fbea52f74a80268446f45936a0cf40400aba8565.tar.gz samba-fbea52f74a80268446f45936a0cf40400aba8565.tar.bz2 samba-fbea52f74a80268446f45936a0cf40400aba8565.zip |
lib/util Move more network utility functions from source3 into lib/util
This will help with the merge of the interfaces layer.
Andrew Bartlett
Diffstat (limited to 'source3/lib/system.c')
-rw-r--r-- | source3/lib/system.c | 71 |
1 files changed, 0 insertions, 71 deletions
diff --git a/source3/lib/system.c b/source3/lib/system.c index 52b6477266..b6cc7a8b07 100644 --- a/source3/lib/system.c +++ b/source3/lib/system.c @@ -2633,74 +2633,3 @@ int sys_aio_suspend(const SMB_STRUCT_AIOCB * const cblist[], int n, const struct return -1; } #endif /* WITH_AIO */ - -int sys_getpeereid( int s, uid_t *uid) -{ -#if defined(HAVE_PEERCRED) - struct ucred cred; - socklen_t cred_len = sizeof(struct ucred); - int ret; - - ret = getsockopt(s, SOL_SOCKET, SO_PEERCRED, (void *)&cred, &cred_len); - if (ret != 0) { - return -1; - } - - if (cred_len != sizeof(struct ucred)) { - errno = EINVAL; - return -1; - } - - *uid = cred.uid; - return 0; -#else -#if defined(HAVE_GETPEEREID) - gid_t gid; - return getpeereid(s, uid, &gid); -#endif - errno = ENOSYS; - return -1; -#endif -} - -int sys_getnameinfo(const struct sockaddr *psa, - socklen_t salen, - char *host, - size_t hostlen, - char *service, - size_t servlen, - int flags) -{ - /* - * For Solaris we must make sure salen is the - * correct length for the incoming sa_family. - */ - - if (salen == sizeof(struct sockaddr_storage)) { - salen = sizeof(struct sockaddr_in); -#if defined(HAVE_IPV6) - if (psa->sa_family == AF_INET6) { - salen = sizeof(struct sockaddr_in6); - } -#endif - } - return getnameinfo(psa, salen, host, hostlen, service, servlen, flags); -} - -int sys_connect(int fd, const struct sockaddr * addr) -{ - socklen_t salen = (socklen_t)-1; - - if (addr->sa_family == AF_INET) { - salen = sizeof(struct sockaddr_in); - } else if (addr->sa_family == AF_UNIX) { - salen = sizeof(struct sockaddr_un); - } -#if defined(HAVE_IPV6) - else if (addr->sa_family == AF_INET6) { - salen = sizeof(struct sockaddr_in6); - } -#endif - - return connect(fd, addr, salen); -} |