(__get_myaddress): Fix test for failing getifaddrs call.
[kopensolaris-gnu/glibc.git] / sunrpc / rtime.c
index 09a8948..4996f01 100644 (file)
@@ -70,14 +70,15 @@ do_close (int s)
 }
 
 int
-rtime (struct sockaddr_in *addrp, struct timeval *timep,
-       struct timeval *timeout)
+rtime (struct sockaddr_in *addrp, struct rpc_timeval *timep,
+       struct rpc_timeval *timeout)
 {
   int s;
   struct pollfd fd;
   int milliseconds;
   int res;
-  unsigned long thetime;
+  /* RFC 868 says the time is transmitted as a 32-bit value.  */
+  uint32_t thetime;
   struct sockaddr_in from;
   int fromlen;
   int type;
@@ -95,8 +96,8 @@ rtime (struct sockaddr_in *addrp, struct timeval *timep,
   addrp->sin_port = htons (IPPORT_TIMESERVER);
   if (type == SOCK_DGRAM)
     {
-      res = sendto (s, (char *) &thetime, sizeof (thetime), 0,
-                   (struct sockaddr *) addrp, sizeof (*addrp));
+      res = __sendto (s, (char *) &thetime, sizeof (thetime), 0,
+                     (struct sockaddr *) addrp, sizeof (*addrp));
       if (res < 0)
        {
          do_close (s);
@@ -116,8 +117,8 @@ rtime (struct sockaddr_in *addrp, struct timeval *timep,
          return (-1);
        }
       fromlen = sizeof (from);
-      res = recvfrom (s, (char *) &thetime, sizeof (thetime), 0,
-                     (struct sockaddr *) &from, &fromlen);
+      res = __recvfrom (s, (char *) &thetime, sizeof (thetime), 0,
+                       (struct sockaddr *) &from, &fromlen);
       do_close (s);
       if (res < 0)
        return -1;
@@ -144,3 +145,4 @@ rtime (struct sockaddr_in *addrp, struct timeval *timep,
   timep->tv_usec = 0;
   return 0;
 }
+libc_hidden_def (rtime)