Fix recvmsg; also fix minor cast errors
authorDavid Bartley <dtbartle@maltodextrin.csclub.uwaterloo.ca>
Mon, 12 Jan 2009 03:35:43 +0000 (22:35 -0500)
committerDavid Bartley <dtbartle@maltodextrin.csclub.uwaterloo.ca>
Mon, 12 Jan 2009 03:35:43 +0000 (22:35 -0500)
sysdeps/unix/sysv/solaris2/kopensolaris-gnu/Makefile
sysdeps/unix/sysv/solaris2/kopensolaris-gnu/recvmsg.c
sysdeps/unix/sysv/solaris2/kopensolaris-gnu/send.c
sysdeps/unix/sysv/solaris2/kopensolaris-gnu/sendfile.c
sysdeps/unix/sysv/solaris2/kopensolaris-gnu/sendfile64.c
sysdeps/unix/sysv/solaris2/kopensolaris-gnu/sendfilev.c
sysdeps/unix/sysv/solaris2/kopensolaris-gnu/sendfilev64.c
sysdeps/unix/sysv/solaris2/kopensolaris-gnu/sendmsg.c
sysdeps/unix/sysv/solaris2/kopensolaris-gnu/sendto.c
sysdeps/unix/sysv/solaris2/kopensolaris-gnu/syscalls.list

index e8363a0..0f012ca 100644 (file)
@@ -31,14 +31,14 @@ sysdep_routines +=  gethrtime mount umount umount2 systeminfo resolvepath \
     idmap_reg idmap_unreg acctctl pcsample settaskid gettaskid getprojid \
     utssys zone port sendfilev sendfilev64 sig2str _so_accept _so_bind \
     _so_connect _so_getpeername _so_getsockname _so_getsockopt _so_listen \
-    _so_send _so_sendmsg _so_sendto _so_setsockopt _so_shutdown _so_socket \
-    _so_socketpair _sysconfig rctl atomic door __door_return getexecname \
-    is_system_labeled privP modctl acl facl lltostr ulltostr _getauthnam \
-    _getauthattr deflt _getprofnam _getprofattr _getusernam _getuserattr \
-    _getauuserent _getauusernam _getexecattr vfsent fdwalk closefrom ipsecalg \
-    gethostent sigsendset sigsend stack_getbounds thr_sighndlrinfo \
-    _getexecprof _fgetuserattr priv_str _sbrk_grow_aligned cftime ascftime \
-    inet_ntoa_r
+    _so_recvmsg _so_send _so_sendmsg _so_sendto _so_setsockopt _so_shutdown \
+    _so_socket _so_socketpair _sysconfig rctl atomic door __door_return \
+    getexecname is_system_labeled privP modctl acl facl lltostr ulltostr \
+    _getauthnam _getauthattr deflt _getprofnam _getprofattr _getusernam \
+    _getuserattr _getauuserent _getauusernam _getexecattr vfsent fdwalk \
+    closefrom ipsecalg gethostent sigsendset sigsend stack_getbounds \
+    thr_sighndlrinfo _getexecprof _fgetuserattr priv_str _sbrk_grow_aligned \
+    cftime ascftime inet_ntoa_r
 sysdep_routines += sys_fdsync sys_brk sys_fcntl sys_utssys sys_lwp_private \
     sys_uname sys_getloadavg sys_utimes sys_getpeerucred sys_ucred_get \
     sys_privsys sys_putmsg sys_putpmsg sys_meminfo sys_pset_getloadavg \
index e9accc0..a122596 100644 (file)
@@ -21,7 +21,7 @@
 #include <inline-syscall.h>
 #include <sys/socket.h>
 
-DECLARE_INLINE_SYSCALL (ssize_t, recvmsg, int s, struct msghdr *msg, int flags);
+extern ssize_t _so_recvmsg (int s, struct msghdr *msg, int flags);
 
 ssize_t
 __recvmsg (fd, message, flags)
@@ -29,7 +29,7 @@ __recvmsg (fd, message, flags)
      struct msghdr *message;
      int flags;
 {
-  return INLINE_SYSCALL (recvmsg, 3, fd, message, flags | MSG_XPG4_2);
+  return _so_recvmsg (fd, message, flags | MSG_XPG4_2);
 }
 
 weak_alias (__recvmsg, recvmsg)
index f595064..add56e3 100644 (file)
@@ -36,7 +36,7 @@ __send (fd, buf, n, flags)
   if (flags & MSG_NOSIGNAL)
     SIGPIPE_DISABLE;
 
-  int res = _so_send (fd, buf, n, (flags & ~MSG_NOSIGNAL) | MSG_XPG4_2);
+  ssize_t res = _so_send (fd, buf, n, (flags & ~MSG_NOSIGNAL) | MSG_XPG4_2);
 
   if (flags & MSG_NOSIGNAL)
     SIGPIPE_ENABLE;
index 141ee52..aaf093a 100644 (file)
@@ -31,7 +31,7 @@ sendfile (int out_fd, int in_fd, off_t *offset, size_t count)
   sfv.sfv_len = count;
   int xferred = 0;
 
-  int res = sendfilev (out_fd, &sfv, 1, &xferred);
+  ssize_t res = sendfilev (out_fd, &sfv, 1, &xferred);
   *offset += xferred;
   return res;
 }
index b8c3e47..2ea2f35 100644 (file)
@@ -31,7 +31,7 @@ sendfile64 (int out_fd, int in_fd, off64_t *offset, size_t count)
   sfv.sfv_len = count;
   int xferred = 0;
 
-  int res = sendfilev (out_fd, &sfv, 1, &xferred);
+  ssize_t res = sendfilev (out_fd, &sfv, 1, &xferred);
   *offset += xferred;
   return res;
 }
index f5337f2..f42f01e 100644 (file)
 #include <sys/sendfile.h>
 #include <errno.h>
 
-DECLARE_INLINE_SYSCALL (size_t, sendfilev, int fildes,
+DECLARE_INLINE_SYSCALL (ssize_t, sendfilev, int fildes,
     const sendfilevec_t *sfv, int count, size_t *xferred);
 
 ssize_t
 sendfilev (int out_fd, const sendfilevec_t *sfv, int count, size_t *xferred)
 {
-  int res = INLINE_SYSCALL (sendfilev, 4, out_fd, sfv, 1, xferred);
-  if (res == -1 && errno == EINTR)
+  ssize_t res = INLINE_SYSCALL (sendfilev, 4, out_fd, sfv, 1, xferred);
+  if (res == (ssize_t)-1 && errno == EINTR)
     return *xferred;
   else
     return res;
index ba56e97..a240809 100644 (file)
 #include <sys/sendfile.h>
 #include <errno.h>
 
-DECLARE_INLINE_SYSCALL (size_t, sendfilev64, int fildes,
+DECLARE_INLINE_SYSCALL (ssize_t, sendfilev64, int fildes,
     const sendfilevec64_t *sfv, int count, size_t *xferred);
 
 ssize_t
 sendfilev64 (int out_fd, const sendfilevec64_t *sfv, int count, size_t *xferred)
 {
-  int res = INLINE_SYSCALL (sendfilev64, 4, out_fd, sfv, 1, xferred);
-  if (res == -1 && errno == EINTR)
+  ssize_t res = INLINE_SYSCALL (sendfilev64, 4, out_fd, sfv, 1, xferred);
+  if (res == (ssize_t)-1 && errno == EINTR)
     return *xferred;
   else
     return res;
index 364b3dd..6906318 100644 (file)
@@ -33,7 +33,7 @@ __sendmsg (fd, message, flags)
   if (flags & MSG_NOSIGNAL)
     SIGPIPE_DISABLE;
 
-  int res = _so_sendmsg (fd, message, (flags & ~MSG_NOSIGNAL) | MSG_XPG4_2);
+  ssize_t res = _so_sendmsg (fd, message, (flags & ~MSG_NOSIGNAL) | MSG_XPG4_2);
 
   if (flags & MSG_NOSIGNAL)
     SIGPIPE_ENABLE;
index caab3b4..fca9738 100644 (file)
@@ -37,7 +37,7 @@ __sendto (fd, buf, n, flags, addr, addr_len)
   if (flags & MSG_NOSIGNAL)
     SIGPIPE_DISABLE;
 
-  int res = _so_sendto (fd, buf, n, (flags & ~MSG_NOSIGNAL) | MSG_XPG4_2,
+  ssize_t res = _so_sendto (fd, buf, n, (flags & ~MSG_NOSIGNAL) | MSG_XPG4_2,
       addr, addr_len);
 
   if (flags & MSG_NOSIGNAL)
index 9856b04..eb283a8 100644 (file)
@@ -163,7 +163,7 @@ _so_getsockopt      - getsockopt            i:iiiBNi    _so_getsockopt
 _so_listen          - listen                i:iii       _so_listen
 recv                - recv                  RCi:ibni    __libc_recv         __recv recv _so_recv
 recvfrom            - recvfrom              RCi:ibniBN  __libc_recvfrom     __recvfrom recvfrom _so_recvfrom
-recvmsg             - recvmsg               RCi:ipi     __libc_recvmsg      __recvmsg recvmsg _so_recvmsg
+_so_recvmsg         - recvmsg               RCi:ipi     _so_recvmsg
 _so_send            - send                  RCi:ibni    _so_send
 _so_sendmsg         - sendmsg               RCi:ipi     _so_sendmsg
 _so_sendto          - sendto                RCi:ibnibn  _so_sendto