This is the mail archive of the libc-hacker@sources.redhat.com mailing list for the glibc project.

Note that libc-hacker is a closed list. You may look at the archives of this list, but subscription and posting are not open.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] Kill 27 .rel{,a}.plt dynamic relocations in my i686 glibc build (mainly sunrpc)


Hi!

The following patch kills a bunch of dynamic PLT relocations, mainly
in sunrpc.
E.g. Sun JDK is AFAIK beaten by glibc using __socket to create a socket
(__socket is not exported) and then using various interposable functions
on that socket (it is of course a JDK bug too, as it should handle unknown
fds properly, but anyway).
Bootstrapped/regtested on i686-linux.

IMHO we should cook up a list of symbols libraries should be able to
interpose (definitely all malloc functions, etc.) and kill the rest.

2002-05-11  Jakub Jelinek  <jakub@redhat.com>

	* include/netinet/in.h (bindresvport_internal): Add prototype.
	* include/rpc/auth.h  (authunix_create_internal,
	authunix_create_default_internal, authnone_create_internal,
	authdes_pk_create_internal): Add prototypes.
	* include/rpc/clnt.h (clnt_create_internal, clnttcp_create_internal,
	clntudp_create_internal, clntudp_bufcreate_internal,
	clntunix_create_internal): Add prototypes.
	* include/rpc/svc.h (svc_sendreply_internal, svcerr_decode_internal,
	svc_getreq_internal, svc_getreq_common_internal,
	svc_getreqset_internal, svc_getreq_poll_internal,
	svc_register_internal, svc_unregister_internal,
	svcudp_create_internal, svcudp_bufcreate_internal): Add prototypes.
	* include/rpc/svc_auth.h (_authenticate_internal): Add prototype.
	* include/sys/socket.h (__sendto, __recvfrom, __sendmsg, __recvmsg,
	__setsockopt, __getsockname, __bind, __listen): Add prototypes.
	* inet/rexec.c (rexec_af): Use __listen and __getsockname.
	* inet/rcmd.c (rcmd_af): Use __listen.
	(rresvport_af): Use __bind.
	* sunrpc/clnt_udp.c: Use INTUSE calls to bindresvport,
	authunix_create, authunix_create_default, authnone_create,
	authdes_pk_create, clnt_create, clnttcp_create, clntudp_create,
	clntudp_bufcreate, clntunix_create svc_sendreply, svcerr_decode,
	svc_getreq, svc_getreq_common, svc_getreqset, svc_getreq_poll,
	svc_register, svc_unregister, svcudp_create, svcudp_bufcreate,
	_authenticate, add INTDEF after such function definitions.
	Use __listen, __bind, __sendto, __recvfrom, __sendmsg, __recvmsg,
	__setsockopt, __getsockname instead of non-__ variants.
	* sunrpc/pmap_rmt.c: Likewise.
	* sunrpc/rtime.c: Likewise.
	* sunrpc/svc_udp.c: Likewise.
	* sunrpc/clnt_unix.c: Likewise.
	* sunrpc/svc_unix.c: Likewise.
	* sunrpc/bindrsvprt.c: Likewise.
	* sunrpc/svc_tcp.c: Likewise.
	* sunrpc/auth_none.c: Likewise.
	* sunrpc/clnt_raw.c: Likewise.
	* sunrpc/clnt_tcp.c: Likewise.
	* sunrpc/auth_unix.c: Likewise.
	* sunrpc/key_call.c: Likewise.
	* sunrpc/clnt_gen.c: Likewise.
	* sunrpc/pm_getmaps.c: Likewise.
	* sunrpc/clnt_simp.c: Likewise.
	* sunrpc/pmap_clnt.c: Likewise.
	* sunrpc/svc_run.c: Likewise.
	* sunrpc/svc.c: Likewise.
	* sunrpc/svc_simple.c: Likewise.
	* sunrpc/pm_getport.c: Likewise.
	* sunrpc/auth_des.c: Likewise.
	* sunrpc/svc_auth.c: Likewise.
	* sysdeps/generic/unwind-dw2-fde.c (__register_frame_info_bases,
	__register_frame_info_table_bases, __deregister_frame_info_bases):
	Add INTDEF.
	(__register_frame_info_bases_internal,
	__register_frame_info_table_bases_internal,
	__deregister_frame_info_bases_internal): Add prototypes.
	(__register_frame_info, __register_frame): Use INTUSE in call to
	__register_frame_info_bases.
	(__register_frame_info_table): Similarly.
	(__deregister_frame_info, __deregister_frame): Similarly.
	* sysdeps/generic/sendto.c (__sendto): Renamed from sendto, add
	sendto as weak alias.
	* sysdeps/mach/hurd/sendto.c: Likewise.
	* sysdeps/generic/recvfrom.c (__recvfrom): Renamed from recvfrom, add
	recvfrom as weak alias.
	* sysdeps/generic/recvmsg.c (__recvmsg): Renamed from recvmsg, add
	recvmsg as weak alias.
	* sysdeps/unix/sysv/aix/recvmsg.c: Likewise.
	* sysdeps/mach/hurd/recvfrom.c: Likewise.
	* sysdeps/unix/sysv/aix/recvfrom.c: Likewise.
	* sysdeps/generic/sendmsg.c (__sendmsg): Renamed from sendmsg, add
	sendmsg as weak alias.
	* sysdeps/unix/sysv/aix/sendmsg.c: Likewise.
	* sysdeps/generic/setsockopt.c (__setsockopt): Renamed from
	setsockopt, add setsockopt as weak alias.
	* sysdeps/mach/hurd/setsockopt.c: Likewise.
	* sysdeps/generic/bind.c (__bind): Renamed from bind, add bind as
	weak alias.
	* sysdeps/mach/hurd/bind.c: Likewise.
	* sysdeps/generic/listen.c (__listen): Renamed from listen, add listen
	as weak alias.
	* sysdeps/mach/hurd/listen.c: Likewise.
	* sysdeps/generic/getsockname.c (__getsockname): Renamed from
	getsockname, add getsockname as weak alias.
	* sysdeps/mach/hurd/getsockname.c: Likewise.
	* sysdeps/unix/sysv/aix/getsockname.c: Likewise.
	* sysdeps/mach/hurd/recvmsg.c (__recvmsg): Add weak alias.
	* sysdeps/mach/hurd/sendmsg.c (__sendmsg): Add weak alias.
	* sysdeps/unix/inet/syscalls.list (__bind, __listen, __recvmsg,
	__recvfrom, __sendmsg, __sendto, __setsockopt): Add aliases.
	* sysdeps/unix/sysv/linux/alpha/syscalls.list (__recvmsg, __sendmsg): 
	Add aliases.
	* sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/recvfrom.S (__recvfrom): Add weak alias.
	* sysdeps/unix/sysv/linux/recvmsg.S (__recvmsg): Likewise.
	* sysdeps/unix/sysv/linux/sendmsg.S (__sendmsg): Likewise.
	* sysdeps/unix/sysv/linux/sendto.S (__sendto): Likewise.
	* sysdeps/unix/sysv/linux/setsockopt.S (__setsockopt): Likewise.
	* sysdeps/unix/sysv/linux/bind.S (__bind): Likewise.
	* sysdeps/unix/sysv/linux/listen.S (__listen): Likewise.
	* sysdeps/unix/sysv/linux/getsockname.S (__getsockname): Likewise.

--- libc/include/netinet/in.h.jj	Sat Mar 23 11:50:27 2002
+++ libc/include/netinet/in.h	Fri May 10 21:08:24 2002
@@ -1,3 +1,7 @@
 #include <inet/netinet/in.h>
 
 extern const struct in6_addr in6addr_any_internal attribute_hidden;
+
+/* Bind socket to a privileged IP port.  */
+extern int bindresvport_internal (int __sockfd,
+				  struct sockaddr_in *__sock_in) attribute_hidden;
--- libc/include/rpc/auth.h.jj	Thu Feb 28 12:31:20 2002
+++ libc/include/rpc/auth.h	Sat May 11 22:03:35 2002
@@ -19,4 +19,13 @@ DECLARE_NSS_PROTOTYPES (nisplus)
 extern bool_t xdr_des_block_internal (XDR *__xdrs, des_block *__blkp);
 extern bool_t xdr_opaque_auth_internal (XDR *, struct opaque_auth *);
 
+extern AUTH *authunix_create_internal (char *__machname, __uid_t __uid,
+				       __gid_t __gid, int __len,
+				       __gid_t *__aup_gids) attribute_hidden;
+extern AUTH *authunix_create_default_internal (void) attribute_hidden;
+extern AUTH *authnone_create_internal (void) attribute_hidden;
+extern AUTH *authdes_pk_create_internal (const char *, netobj *, u_int,
+					 struct sockaddr *,
+					 des_block *) attribute_hidden;
+
 #endif
--- libc/include/rpc/clnt.h.jj	Tue Jan  2 14:17:33 2001
+++ libc/include/rpc/clnt.h	Fri May 10 21:08:24 2002
@@ -4,4 +4,26 @@
 /* Now define the internal interfaces.  */
 extern int _openchild (const char *command, FILE **fto, FILE **ffrom);
 
+extern CLIENT *clnt_create_internal (__const char *__host,
+				     __const u_long __prog,
+				     __const u_long __vers,
+				     __const char *__prot) attribute_hidden;
+extern CLIENT *clnttcp_create_internal (struct sockaddr_in *__raddr,
+					u_long __prog, u_long __version,
+					int *__sockp, u_int __sendsz,
+					u_int __recvsz) attribute_hidden;
+extern CLIENT *clntudp_create_internal (struct sockaddr_in *__raddr,
+					u_long __program, u_long __version,
+					struct timeval __wait_resend,
+					int *__sockp) attribute_hidden;
+extern CLIENT *clntudp_bufcreate_internal (struct sockaddr_in *__raddr,
+					   u_long __program, u_long __version,
+					   struct timeval __wait_resend,
+					   int *__sockp, u_int __sendsz,
+					   u_int __recvsz) attribute_hidden;
+extern CLIENT *clntunix_create_internal (struct sockaddr_un *__raddr,
+					 u_long __program, u_long __version,
+					 int *__sockp, u_int __sendsz,
+					 u_int __recvsz) attribute_hidden;
+
 #endif
--- libc/include/rpc/svc.h.jj	Tue Jan  2 14:17:33 2001
+++ libc/include/rpc/svc.h	Fri May 10 21:08:24 2002
@@ -10,5 +10,22 @@ extern SVCXPRT *svcfd_create (int fd, u_
 
 extern int svcudp_enablecache (SVCXPRT *transp, u_long size);
 extern SVCXPRT *svcunixfd_create (int fd, u_int sendsize, u_int recvsize);
+extern bool_t svc_sendreply_internal (SVCXPRT *xprt, xdrproc_t __xdr_results,
+				      caddr_t __xdr_location) attribute_hidden;
+extern void svcerr_decode_internal (SVCXPRT *__xprt) attribute_hidden;
+extern void svc_getreq_internal (int __rdfds) attribute_hidden;
+extern void svc_getreq_common_internal (const int __fd) attribute_hidden;
+extern void svc_getreqset_internal (fd_set *__readfds) attribute_hidden;
+extern void svc_getreq_poll_internal (struct pollfd *,
+				      const int) attribute_hidden;
+extern bool_t svc_register_internal (SVCXPRT *__xprt, rpcprog_t __prog,
+				     rpcvers_t __vers,
+				     __dispatch_fn_t __dispatch,
+				     rpcprot_t __protocol) attribute_hidden;
+extern void svc_unregister_internal (rpcprog_t __prog,
+				     rpcvers_t __vers) attribute_hidden;
+extern SVCXPRT *svcudp_create_internal (int __sock) attribute_hidden;
+extern SVCXPRT *svcudp_bufcreate_internal (int __sock, u_int __sendsz,
+					   u_int __recvsz) attribute_hidden;
 
 #endif
--- libc/include/rpc/svc_auth.h.jj	Tue Jan  2 14:17:33 2001
+++ libc/include/rpc/svc_auth.h	Sat May 11 22:08:11 2002
@@ -6,7 +6,7 @@ extern enum auth_stat _svcauth_unix (str
 				     struct rpc_msg *msg);
 extern enum auth_stat _svcauth_short (struct svc_req *rqst,
 				      struct rpc_msg *msg);
-
-
+extern enum auth_stat _authenticate_internal (struct svc_req *__rqst,
+				struct rpc_msg *__msg) attribute_hidden;
 
 #endif
--- libc/include/sys/socket.h.jj	Tue Apr 30 12:52:49 2002
+++ libc/include/sys/socket.h	Sat May 11 22:17:18 2002
@@ -2,22 +2,24 @@
 #include <socket/sys/socket.h>
 
 /* Now define the internal interfaces.  */
-extern int __socket (int __domain, int __type, int __protocol);
+extern int __socket (int __domain, int __type,
+		     int __protocol) attribute_hidden;
 
 /* Create two new sockets, of type TYPE in domain DOMAIN and using
    protocol PROTOCOL, which are connected to each other, and put file
    descriptors for them in FDS[0] and FDS[1].  If PROTOCOL is zero,
    one will be chosen automatically.  Returns 0 on success, -1 for errors.  */
 extern int __socketpair (int __domain, int __type, int __protocol,
-			 int __fds[2]);
+			 int __fds[2]) attribute_hidden;
 
 /* Return a socket of any type.  The socket can be used in subsequent
    ioctl calls to talk to the kernel.  */
-extern int __opensock (void) internal_function;
+extern int __opensock (void) internal_function attribute_hidden;
 
 /* Put the address of the peer connected to socket FD into *ADDR
    (which is *LEN bytes long), and its actual length into *LEN.  */
-extern int __getpeername (int __fd, __SOCKADDR_ARG __addr, socklen_t *__len);
+extern int __getpeername (int __fd, __SOCKADDR_ARG __addr,
+			  socklen_t *__len) attribute_hidden;
 
 /* Send N bytes of BUF to socket FD.  Returns the number sent or -1.  */
 extern ssize_t __send (int __fd, __const void *__buf, size_t __n, int __flags);
@@ -30,6 +32,50 @@ extern int __connect (int __fd, __CONST_
 extern int __connect_internal (int __fd, __CONST_SOCKADDR_ARG __addr,
 			       socklen_t __len) attribute_hidden;
 
+/* Send N bytes of BUF on socket FD to peer at address ADDR (which is
+   ADDR_LEN bytes long).  Returns the number sent, or -1 for errors.  */
+extern ssize_t __sendto (int __fd, __const void *__buf, size_t __n,
+			 int __flags, __CONST_SOCKADDR_ARG __addr,
+			 socklen_t __addr_len) attribute_hidden;
+
+/* Read N bytes into BUF through socket FD.
+   If ADDR is not NULL, fill in *ADDR_LEN bytes of it with tha address of
+   the sender, and store the actual size of the address in *ADDR_LEN.
+   Returns the number of bytes read or -1 for errors.  */
+extern ssize_t __recvfrom (int __fd, void *__restrict __buf, size_t __n,
+			   int __flags, __SOCKADDR_ARG __addr,
+			   socklen_t *__restrict __addr_len) attribute_hidden;
+
+/* Send a message described MESSAGE on socket FD.
+   Returns the number of bytes sent, or -1 for errors.  */
+extern ssize_t __sendmsg (int __fd, __const struct msghdr *__message,
+			  int __flags) attribute_hidden;
+
+/* Receive a message as described by MESSAGE from socket FD.
+   Returns the number of bytes read or -1 for errors.  */
+extern ssize_t __recvmsg (int __fd, struct msghdr *__message,
+			  int __flags) attribute_hidden;
+
+/* Set socket FD's option OPTNAME at protocol level LEVEL
+   to *OPTVAL (which is OPTLEN bytes long).
+   Returns 0 on success, -1 for errors.  */
+extern int __setsockopt (int __fd, int __level, int __optname,
+			 __const void *__optval,
+			 socklen_t __optlen) attribute_hidden;
+
+/* Put the local address of FD into *ADDR and its length in *LEN.  */
+extern int __getsockname (int __fd, __SOCKADDR_ARG __addr,
+			  socklen_t *__restrict __len) attribute_hidden;
+
+/* Give the socket FD the local address ADDR (which is LEN bytes long).  */
+extern int __bind (int __fd, __CONST_SOCKADDR_ARG __addr,
+		   socklen_t __len) attribute_hidden;
+
+/* Prepare to accept connections on socket FD.
+   N connection requests will be queued before further requests are refused.
+   Returns 0 on success, -1 for errors.  */
+extern int __listen (int __fd, int __n) attribute_hidden;
+
 /* Return the length of a `sockaddr' structure.  */
 #ifdef _HAVE_SA_LEN
 # define SA_LEN(_x)      (_x)->sa_len
--- libc/inet/rexec.c.jj	Sat Mar 23 11:50:27 2002
+++ libc/inet/rexec.c	Fri May 10 21:08:24 2002
@@ -115,9 +115,9 @@ retry:
 			(void) __close(s);
 			return (-1);
 		}
-		listen(s2, 1);
+		__listen(s2, 1);
 		sa2len = sizeof (sa2);
-		if (getsockname(s2, (struct sockaddr *)&sa2, &sa2len) < 0) {
+		if (__getsockname(s2, (struct sockaddr *)&sa2, &sa2len) < 0) {
 			perror("getsockname");
 			(void) __close(s2);
 			goto bad;
--- libc/inet/rcmd.c.jj	Mon Dec 10 19:15:51 2001
+++ libc/inet/rcmd.c	Fri May 10 21:08:24 2002
@@ -268,7 +268,7 @@ rcmd_af(ahost, rport, locuser, remuser, 
 
 		if (s2 < 0)
 			goto bad;
-		listen(s2, 1);
+		__listen(s2, 1);
 		(void)__snprintf(num, sizeof(num), "%d", lport);
 		if (__write(s, num, strlen(num)+1) != (ssize_t)strlen(num)+1) {
 			char *buf = NULL;
@@ -444,7 +444,7 @@ rresvport_af(alport, family)
 
 	for (;;) {
 		*sport = htons((uint16_t) *alport);
-		if (bind(s, (struct sockaddr *)&ss, len) >= 0)
+		if (__bind(s, (struct sockaddr *)&ss, len) >= 0)
 			return s;
 		if (errno != EADDRINUSE) {
 			(void)__close(s);
--- libc/sunrpc/clnt_udp.c.jj	Thu Feb 28 12:32:13 2002
+++ libc/sunrpc/clnt_udp.c	Sat May 11 22:46:14 2002
@@ -191,13 +191,13 @@ clntudp_bufcreate (struct sockaddr_in *r
 	  goto fooy;
 	}
       /* attempt to bind to prov port */
-      (void) bindresvport (*sockp, (struct sockaddr_in *) 0);
+      (void) INTUSE(bindresvport) (*sockp, (struct sockaddr_in *) 0);
       /* the sockets rpc controls are non-blocking */
       (void) __ioctl (*sockp, FIONBIO, (char *) &dontblock);
 #ifdef IP_RECVERR
       {
 	int on = 1;
-	setsockopt(*sockp, SOL_IP, IP_RECVERR, &on, sizeof(on));
+	__setsockopt (*sockp, SOL_IP, IP_RECVERR, &on, sizeof(on));
       }
 #endif
       cu->cu_closeit = TRUE;
@@ -207,7 +207,7 @@ clntudp_bufcreate (struct sockaddr_in *r
       cu->cu_closeit = FALSE;
     }
   cu->cu_sock = *sockp;
-  cl->cl_auth = authnone_create ();
+  cl->cl_auth = INTUSE(authnone_create) ();
   return cl;
 fooy:
   if (cu)
@@ -216,6 +216,7 @@ fooy:
     mem_free ((caddr_t) cl, sizeof (CLIENT));
   return (CLIENT *) NULL;
 }
+INTDEF (clntudp_bufcreate)
 
 CLIENT *
 clntudp_create (raddr, program, version, wait, sockp)
@@ -225,10 +226,10 @@ clntudp_create (raddr, program, version,
      struct timeval wait;
      int *sockp;
 {
-
-  return clntudp_bufcreate (raddr, program, version, wait, sockp,
-			    UDPMSGSIZE, UDPMSGSIZE);
+  return INTUSE(clntudp_bufcreate) (raddr, program, version, wait, sockp,
+				    UDPMSGSIZE, UDPMSGSIZE);
 }
+INTDEF (clntudp_create)
 
 static int
 is_network_up (int sock)
@@ -312,8 +313,8 @@ call_again:
   outlen = (int) XDR_GETPOS (xdrs);
 
 send_again:
-  if (sendto (cu->cu_sock, cu->cu_outbuf, outlen, 0,
-	      (struct sockaddr *) &(cu->cu_raddr), cu->cu_rlen)
+  if (__sendto (cu->cu_sock, cu->cu_outbuf, outlen, 0,
+		(struct sockaddr *) &(cu->cu_raddr), cu->cu_rlen)
       != outlen)
     {
       cu->cu_error.re_errno = errno;
@@ -395,7 +396,7 @@ send_again:
 	  msg.msg_flags = 0;
 	  msg.msg_control = cbuf;
 	  msg.msg_controllen = 256;
-	  ret = recvmsg (cu->cu_sock, &msg, MSG_ERRQUEUE);
+	  ret = __recvmsg (cu->cu_sock, &msg, MSG_ERRQUEUE);
 	  if (ret >= 0
 	      && memcmp (cbuf + 256, cu->cu_outbuf, ret) == 0
 	      && (msg.msg_flags & MSG_ERRQUEUE)
@@ -419,9 +420,9 @@ send_again:
       do
 	{
 	  fromlen = sizeof (struct sockaddr);
-	  inlen = recvfrom (cu->cu_sock, cu->cu_inbuf,
-			    (int) cu->cu_recvsz, 0,
-			    (struct sockaddr *) &from, &fromlen);
+	  inlen = __recvfrom (cu->cu_sock, cu->cu_inbuf,
+			      (int) cu->cu_recvsz, 0,
+			      (struct sockaddr *) &from, &fromlen);
 	}
       while (inlen < 0 && errno == EINTR);
       if (inlen < 0)
--- libc/sunrpc/pmap_rmt.c.jj	Thu Feb 28 12:32:13 2002
+++ libc/sunrpc/pmap_rmt.c	Fri May 10 21:08:24 2002
@@ -84,7 +84,7 @@ pmap_rmtcall (addr, prog, vers, proc, xd
   enum clnt_stat stat;
 
   addr->sin_port = htons (PMAPPORT);
-  client = clntudp_create (addr, PMAPPROG, PMAPVERS, timeout, &socket);
+  client = INTUSE(clntudp_create) (addr, PMAPPROG, PMAPVERS, timeout, &socket);
   if (client != (CLIENT *) NULL)
     {
       a.prog = prog;
@@ -239,7 +239,7 @@ clnt_broadcast (prog, vers, proc, xargs,
      resultproc_t eachresult;	/* call with each result obtained */
 {
   enum clnt_stat stat = RPC_FAILED;
-  AUTH *unix_auth = authunix_create_default ();
+  AUTH *unix_auth = INTUSE(authunix_create_default) ();
   XDR xdr_stream;
   XDR *xdrs = &xdr_stream;
   struct timeval t;
@@ -271,7 +271,7 @@ clnt_broadcast (prog, vers, proc, xargs,
       goto done_broad;
     }
 #ifdef SO_BROADCAST
-  if (setsockopt (sock, SOL_SOCKET, SO_BROADCAST, &on, sizeof (on)) < 0)
+  if (__setsockopt (sock, SOL_SOCKET, SO_BROADCAST, &on, sizeof (on)) < 0)
     {
       perror (_("Cannot set socket option SO_BROADCAST"));
       stat = RPC_CANTSEND;
@@ -321,9 +321,9 @@ clnt_broadcast (prog, vers, proc, xargs,
       for (i = 0; i < nets; i++)
 	{
 	  baddr.sin_addr = addrs[i];
-	  if (sendto (sock, outbuf, outlen, 0,
-		      (struct sockaddr *) &baddr,
-		      sizeof (struct sockaddr)) != outlen)
+	  if (__sendto (sock, outbuf, outlen, 0,
+			(struct sockaddr *) &baddr,
+			sizeof (struct sockaddr)) != outlen)
 	    {
 	      perror (_("Cannot send broadcast packet"));
 	      stat = RPC_CANTSEND;
@@ -357,8 +357,8 @@ clnt_broadcast (prog, vers, proc, xargs,
 	}			/* end of poll results switch */
     try_again:
       fromlen = sizeof (struct sockaddr);
-      inlen = recvfrom (sock, inbuf, UDPMSGSIZE, 0,
-			(struct sockaddr *) &raddr, &fromlen);
+      inlen = __recvfrom (sock, inbuf, UDPMSGSIZE, 0,
+			  (struct sockaddr *) &raddr, &fromlen);
       if (inlen < 0)
 	{
 	  if (errno == EINTR)
--- libc/sunrpc/rtime.c.jj	Mon Feb 18 23:39:34 2002
+++ libc/sunrpc/rtime.c	Fri May 10 21:08:24 2002
@@ -96,8 +96,8 @@ rtime (struct sockaddr_in *addrp, struct
   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);
@@ -117,8 +117,8 @@ rtime (struct sockaddr_in *addrp, struct
 	  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;
--- libc/sunrpc/svc_udp.c.jj	Thu Feb 28 12:32:13 2002
+++ libc/sunrpc/svc_udp.c	Sat May 11 22:14:57 2002
@@ -133,12 +133,12 @@ svcudp_bufcreate (sock, sendsz, recvsz)
     }
   __bzero ((char *) &addr, sizeof (addr));
   addr.sin_family = AF_INET;
-  if (bindresvport (sock, &addr))
+  if (INTUSE(bindresvport) (sock, &addr))
     {
       addr.sin_port = 0;
-      (void) bind (sock, (struct sockaddr *) &addr, len);
+      (void) __bind (sock, (struct sockaddr *) &addr, len);
     }
-  if (getsockname (sock, (struct sockaddr *) &addr, &len) != 0)
+  if (__getsockname (sock, (struct sockaddr *) &addr, &len) != 0)
     {
       perror (_("svcudp_create - cannot getsockname"));
       if (madesock)
@@ -188,8 +188,8 @@ svcudp_bufcreate (sock, sendsz, recvsz)
       return NULL;
     }
   pad = 1;
-  if (setsockopt (sock, SOL_IP, IP_PKTINFO, (void *) &pad,
-		  sizeof (pad)) == 0)
+  if (__setsockopt (sock, SOL_IP, IP_PKTINFO, (void *) &pad,
+		    sizeof (pad)) == 0)
     /* Set the padding to all 1s. */
     pad = 0xff;
   else
@@ -201,14 +201,15 @@ svcudp_bufcreate (sock, sendsz, recvsz)
   xprt_register (xprt);
   return xprt;
 }
+INTDEF (svcudp_bufcreate)
 
 SVCXPRT *
 svcudp_create (sock)
      int sock;
 {
-
-  return svcudp_bufcreate (sock, UDPMSGSIZE, UDPMSGSIZE);
+  return INTUSE(svcudp_bufcreate) (sock, UDPMSGSIZE, UDPMSGSIZE);
 }
+INTDEF (svcudp_create)
 
 static enum xprt_stat
 svcudp_stat (xprt)
@@ -256,15 +257,15 @@ again:
 					  + sizeof (struct msghdr)];
       mesgp->msg_controllen = sizeof(xprt->xp_pad)
 			      - sizeof (struct iovec) - sizeof (struct msghdr);
-      rlen = recvmsg (xprt->xp_sock, mesgp, 0);
+      rlen = __recvmsg (xprt->xp_sock, mesgp, 0);
       if (rlen >= 0)
 	len = mesgp->msg_namelen;
     }
   else
 #endif
-    rlen = recvfrom (xprt->xp_sock, rpc_buffer (xprt),
-		     (int) su->su_iosz, 0,
-		     (struct sockaddr *) &(xprt->xp_raddr), &len);
+    rlen = __recvfrom (xprt->xp_sock, rpc_buffer (xprt),
+		       (int) su->su_iosz, 0,
+		       (struct sockaddr *) &(xprt->xp_raddr), &len);
   xprt->xp_addrlen = len;
   if (rlen == -1 && errno == EINTR)
     goto again;
@@ -284,12 +285,12 @@ again:
 	    {
 	      iovp->iov_base = reply;
 	      iovp->iov_len = replylen;
-	      (void) sendmsg (xprt->xp_sock, mesgp, 0);
+	      (void) __sendmsg (xprt->xp_sock, mesgp, 0);
 	    }
 	  else
 #endif
-	    (void) sendto (xprt->xp_sock, reply, (int) replylen, 0,
-			   (struct sockaddr *) &xprt->xp_raddr, len);
+	    (void) __sendto (xprt->xp_sock, reply, (int) replylen, 0,
+			     (struct sockaddr *) &xprt->xp_raddr, len);
 	  return TRUE;
 	}
     }
@@ -323,13 +324,13 @@ svcudp_reply (xprt, msg)
 	  iovp = (struct iovec *) &xprt->xp_pad [0];
 	  iovp->iov_base = rpc_buffer (xprt);
 	  iovp->iov_len = slen;
-	  sent = sendmsg (xprt->xp_sock, mesgp, 0);
+	  sent = __sendmsg (xprt->xp_sock, mesgp, 0);
 	}
       else
 #endif
-	sent = sendto (xprt->xp_sock, rpc_buffer (xprt), slen, 0,
-		       (struct sockaddr *) &(xprt->xp_raddr),
-		       xprt->xp_addrlen);
+	sent = __sendto (xprt->xp_sock, rpc_buffer (xprt), slen, 0,
+			 (struct sockaddr *) &(xprt->xp_raddr),
+			 xprt->xp_addrlen);
       if (sent == slen)
 	{
 	  stat = TRUE;
--- libc/sunrpc/clnt_unix.c.jj	Thu Feb 28 12:32:13 2002
+++ libc/sunrpc/clnt_unix.c	Sat May 11 22:15:27 2002
@@ -200,7 +200,7 @@ clntunix_create (struct sockaddr_un *rad
 			 (caddr_t) ct, readunix, writeunix);
   h->cl_ops = &unix_ops;
   h->cl_private = (caddr_t) ct;
-  h->cl_auth = authnone_create ();
+  h->cl_auth = INTUSE(authnone_create) ();
   return h;
 
 fooy:
@@ -211,6 +211,7 @@ fooy:
   mem_free ((caddr_t) h, sizeof (CLIENT));
   return (CLIENT *) NULL;
 }
+INTDEF (clntunix_create)
 
 static enum clnt_stat
 clntunix_call (h, proc, xdr_args, args_ptr, xdr_results, results_ptr, timeout)
@@ -466,13 +467,13 @@ __msgread (int sock, void *data, size_t 
 #ifdef SO_PASSCRED
   {
     int on = 1;
-    if (setsockopt (sock, SOL_SOCKET, SO_PASSCRED, &on, sizeof (on)))
+    if (__setsockopt (sock, SOL_SOCKET, SO_PASSCRED, &on, sizeof (on)))
       return -1;
   }
 #endif
 
  restart:
-  len = recvmsg (sock, &msg, 0);
+  len = __recvmsg (sock, &msg, 0);
   if (len >= 0)
     {
       if (msg.msg_flags & MSG_CTRUNC || len == 0)
@@ -523,7 +524,7 @@ __msgwrite (int sock, void *data, size_t
   msg.msg_flags = 0;
 
  restart:
-  len = sendmsg (sock, &msg, 0);
+  len = __sendmsg (sock, &msg, 0);
   if (len >= 0)
     return len;
   if (errno == EINTR)
--- libc/sunrpc/svc_unix.c.jj	Thu Feb 28 12:32:13 2002
+++ libc/sunrpc/svc_unix.c	Sat May 11 22:15:57 2002
@@ -158,10 +158,10 @@ svcunix_create (int sock, u_int sendsize
   memcpy (addr.sun_path, path, len);
   len += sizeof (addr.sun_family);
 
-  bind (sock, (struct sockaddr *) &addr, len);
+  __bind (sock, (struct sockaddr *) &addr, len);
 
-  if (getsockname (sock, (struct sockaddr *) &addr, &len) != 0
-      || listen (sock, 2) != 0)
+  if (__getsockname (sock, (struct sockaddr *) &addr, &len) != 0
+      || __listen (sock, 2) != 0)
     {
       perror (_("svc_unix.c - cannot getsockname or listen"));
       if (madesock)
@@ -334,13 +334,13 @@ __msgread (int sock, void *data, size_t 
 #ifdef SO_PASSCRED
   {
     int on = 1;
-    if (setsockopt (sock, SOL_SOCKET, SO_PASSCRED, &on, sizeof (on)))
+    if (__setsockopt (sock, SOL_SOCKET, SO_PASSCRED, &on, sizeof (on)))
       return -1;
   }
 #endif
 
  restart:
-  len = recvmsg (sock, &msg, 0);
+  len = __recvmsg (sock, &msg, 0);
   if (len >= 0)
     {
       if (msg.msg_flags & MSG_CTRUNC || len == 0)
@@ -391,7 +391,7 @@ __msgwrite (int sock, void *data, size_t
   msg.msg_flags = 0;
 
  restart:
-  len = sendmsg (sock, &msg, 0);
+  len = __sendmsg (sock, &msg, 0);
   if (len >= 0)
     return len;
   if (errno == EINTR)
--- libc/sunrpc/bindrsvprt.c.jj	Mon Mar 26 10:02:26 2001
+++ libc/sunrpc/bindrsvprt.c	Fri May 10 23:11:28 2002
@@ -78,8 +78,9 @@ bindresvport (int sd, struct sockaddr_in
 	{
 	  port = STARTPORT;
 	}
-      res = bind (sd, sin, sizeof (struct sockaddr_in));
+      res = __bind (sd, sin, sizeof (struct sockaddr_in));
     }
 
   return res;
 }
+INTDEF (bindresvport)
--- libc/sunrpc/svc_tcp.c.jj	Thu Feb 28 12:32:13 2002
+++ libc/sunrpc/svc_tcp.c	Fri May 10 21:08:24 2002
@@ -160,13 +160,13 @@ svctcp_create (int sock, u_int sendsize,
     }
   __bzero ((char *) &addr, sizeof (addr));
   addr.sin_family = AF_INET;
-  if (bindresvport (sock, &addr))
+  if (INTUSE(bindresvport) (sock, &addr))
     {
       addr.sin_port = 0;
-      (void) bind (sock, (struct sockaddr *) &addr, len);
+      (void) __bind (sock, (struct sockaddr *) &addr, len);
     }
-  if ((getsockname (sock, (struct sockaddr *) &addr, &len) != 0) ||
-      (listen (sock, 2) != 0))
+  if ((__getsockname (sock, (struct sockaddr *) &addr, &len) != 0) ||
+      (__listen (sock, 2) != 0))
     {
       perror (_("svc_tcp.c - cannot getsockname or listen"));
       if (madesock)
--- libc/sunrpc/auth_none.c.jj	Tue Apr 30 12:53:32 2002
+++ libc/sunrpc/auth_none.c	Fri May 10 23:11:36 2002
@@ -96,6 +96,7 @@ authnone_create (void)
   __libc_once (authnone_private_guard, authnone_create_once);
   return &authnone_private.no_client;
 }
+INTDEF (authnone_create)
 
 static bool_t
 authnone_marshal (AUTH *client, XDR *xdrs)
--- libc/sunrpc/clnt_raw.c.jj	Tue Apr 30 12:53:32 2002
+++ libc/sunrpc/clnt_raw.c	Fri May 10 21:08:24 2002
@@ -128,7 +128,7 @@ clntraw_create (u_long prog, u_long vers
    * create client handle
    */
   client->cl_ops = &client_ops;
-  client->cl_auth = authnone_create ();
+  client->cl_auth = INTUSE(authnone_create) ();
   return client;
 }
 
@@ -170,7 +170,7 @@ call_again:
    * We have to call server input routine here because this is
    * all going on in one process. Yuk.
    */
-  svc_getreq (1);
+  INTUSE(svc_getreq) (1);
 
   /*
    * get results
--- libc/sunrpc/clnt_tcp.c.jj	Thu Feb 28 12:32:13 2002
+++ libc/sunrpc/clnt_tcp.c	Sat May 11 22:49:08 2002
@@ -201,7 +201,7 @@ clnttcp_create (struct sockaddr_in *radd
    * pre-serialize the static part of the call msg and stash it away
    */
   INTUSE(xdrmem_create) (&(ct->ct_xdrs), ct->ct_mcall, MCALL_MSG_SIZE,
-		 XDR_ENCODE);
+			 XDR_ENCODE);
   if (!INTUSE(xdr_callhdr) (&(ct->ct_xdrs), &call_msg))
     {
       if (ct->ct_closeit)
@@ -221,7 +221,7 @@ clnttcp_create (struct sockaddr_in *radd
 			 (caddr_t) ct, readtcp, writetcp);
   h->cl_ops = &tcp_ops;
   h->cl_private = (caddr_t) ct;
-  h->cl_auth = authnone_create ();
+  h->cl_auth = INTUSE(authnone_create) ();
   return h;
 
 fooy:
@@ -232,6 +232,7 @@ fooy:
   mem_free ((caddr_t) h, sizeof (CLIENT));
   return ((CLIENT *) NULL);
 }
+INTDEF (clnttcp_create)
 
 static enum clnt_stat
 clnttcp_call (h, proc, xdr_args, args_ptr, xdr_results, results_ptr, timeout)
--- libc/sunrpc/auth_unix.c.jj	Thu Feb 28 12:32:13 2002
+++ libc/sunrpc/auth_unix.c	Fri May 10 23:11:52 2002
@@ -156,6 +156,7 @@ no_memory:
   marshal_new_auth (auth);
   return auth;
 }
+INTDEF (authunix_create)
 
 /*
  * Returns an auth handle with parameters determined by doing lots of
@@ -182,8 +183,9 @@ authunix_create_default (void)
   /* This braindamaged Sun code forces us here to truncate the
      list of groups to NGRPS members since the code in
      authuxprot.c transforms a fixed array.  Grrr.  */
-  return authunix_create (machname, uid, gid, MIN (NGRPS, len), gids);
+  return INTUSE(authunix_create) (machname, uid, gid, MIN (NGRPS, len), gids);
 }
+INTDEF (authunix_create_default)
 
 /*
  * authunix operations
--- libc/sunrpc/key_call.c.jj	Thu Feb 28 12:32:13 2002
+++ libc/sunrpc/key_call.c	Sat May 11 22:50:22 2002
@@ -215,9 +215,9 @@ key_gendes (des_block *key)
   sin.sin_addr.s_addr = htonl (INADDR_LOOPBACK);
   __bzero (sin.sin_zero, sizeof (sin.sin_zero));
   socket = RPC_ANYSOCK;
-  client = clntudp_bufcreate (&sin, (u_long) KEY_PROG, (u_long) KEY_VERS,
-			      trytimeout, &socket, RPCSMALLMSGSIZE,
-			      RPCSMALLMSGSIZE);
+  client = INTUSE(clntudp_bufcreate) (&sin, (u_long) KEY_PROG,
+				      (u_long) KEY_VERS, trytimeout, &socket,
+				      RPCSMALLMSGSIZE, RPCSMALLMSGSIZE);
   if (client == NULL)
     return -1;
 
@@ -425,7 +425,7 @@ getkeyserv_handle (int vers)
         kcp->uid = __geteuid ();
         auth_destroy (kcp->client->cl_auth);
         kcp->client->cl_auth =
-          authunix_create ((char *)"", kcp->uid, 0, 0, NULL);
+          INTUSE(authunix_create) ((char *)"", kcp->uid, 0, 0, NULL);
         if (kcp->client->cl_auth == NULL)
           {
             clnt_destroy (kcp->client);
@@ -440,14 +440,16 @@ getkeyserv_handle (int vers)
 
   if ((kcp->client == (CLIENT *) NULL))
     /* Use the AF_UNIX transport */
-    kcp->client = clnt_create ("/var/run/keyservsock", KEY_PROG, vers, "unix");
+    kcp->client = INTUSE(clnt_create) ("/var/run/keyservsock", KEY_PROG, vers,
+				       "unix");
 
   if (kcp->client == (CLIENT *) NULL)
     return (CLIENT *) NULL;
 
   kcp->uid = __geteuid ();
   kcp->pid = __getpid ();
-  kcp->client->cl_auth = authunix_create ((char *)"", kcp->uid, 0, 0, NULL);
+  kcp->client->cl_auth = INTUSE(authunix_create) ((char *)"", kcp->uid, 0, 0,
+						  NULL);
   if (kcp->client->cl_auth == NULL)
     {
       clnt_destroy (kcp->client);
--- libc/sunrpc/clnt_gen.c.jj	Thu Aug 23 18:49:16 2001
+++ libc/sunrpc/clnt_gen.c	Fri May 10 23:10:21 2002
@@ -66,7 +66,7 @@ clnt_create (const char *hostname, u_lon
       sun.sun_family = AF_UNIX;
       strcpy (sun.sun_path, hostname);
       sock = RPC_ANYSOCK;
-      client = clntunix_create (&sun, prog, vers, &sock, 0, 0);
+      client = INTUSE(clntunix_create) (&sun, prog, vers, &sock, 0, 0);
       if (client == NULL)
 	return NULL;
 #if 0
@@ -136,7 +136,7 @@ clnt_create (const char *hostname, u_lon
     case IPPROTO_UDP:
       tv.tv_sec = 5;
       tv.tv_usec = 0;
-      client = clntudp_create (&sin, prog, vers, tv, &sock);
+      client = INTUSE(clntudp_create) (&sin, prog, vers, tv, &sock);
       if (client == NULL)
 	{
 	  return NULL;
@@ -150,7 +150,7 @@ clnt_create (const char *hostname, u_lon
 #endif
       break;
     case IPPROTO_TCP:
-      client = clnttcp_create (&sin, prog, vers, &sock, 0, 0);
+      client = INTUSE(clnttcp_create) (&sin, prog, vers, &sock, 0, 0);
       if (client == NULL)
 	{
 	  return NULL;
@@ -174,3 +174,4 @@ clnt_create (const char *hostname, u_lon
     }
   return client;
 }
+INTDEF (clnt_create)
--- libc/sunrpc/pm_getmaps.c.jj	Thu Feb 28 12:32:13 2002
+++ libc/sunrpc/pm_getmaps.c	Sat May 11 22:50:46 2002
@@ -63,8 +63,8 @@ pmap_getmaps (struct sockaddr_in *addres
   minutetimeout.tv_sec = 60;
   minutetimeout.tv_usec = 0;
   address->sin_port = htons (PMAPPORT);
-  client = clnttcp_create (address, PMAPPROG,
-			   PMAPVERS, &socket, 50, 500);
+  client = INTUSE(clnttcp_create) (address, PMAPPROG,
+				   PMAPVERS, &socket, 50, 500);
   if (client != (CLIENT *) NULL)
     {
       if (CLNT_CALL (client, PMAPPROC_DUMP, (xdrproc_t)INTUSE(xdr_void), NULL,
--- libc/sunrpc/clnt_simp.c.jj	Thu Aug 23 18:49:16 2001
+++ libc/sunrpc/clnt_simp.c	Fri May 10 21:08:24 2002
@@ -125,7 +125,7 @@ callrpc (const char *host, u_long prognu
       memcpy ((char *) &server_addr.sin_addr, hp->h_addr, hp->h_length);
       server_addr.sin_family = AF_INET;
       server_addr.sin_port = 0;
-      if ((crp->client = clntudp_create (&server_addr, (u_long) prognum,
+      if ((crp->client = INTUSE(clntudp_create) (&server_addr, (u_long) prognum,
 			  (u_long) versnum, timeout, &crp->socket)) == NULL)
 	return (int) get_rpc_createerr().cf_stat;
       crp->valid = 1;
--- libc/sunrpc/pmap_clnt.c.jj	Thu Feb 28 12:32:13 2002
+++ libc/sunrpc/pmap_clnt.c	Sat May 11 22:51:35 2002
@@ -121,8 +121,9 @@ pmap_set (u_long program, u_long version
 
   if (!__get_myaddress (&myaddress))
     return FALSE;
-  client = clntudp_bufcreate (&myaddress, PMAPPROG, PMAPVERS,
-			timeout, &socket, RPCSMALLMSGSIZE, RPCSMALLMSGSIZE);
+  client = INTUSE(clntudp_bufcreate) (&myaddress, PMAPPROG, PMAPVERS,
+				      timeout, &socket, RPCSMALLMSGSIZE,
+				      RPCSMALLMSGSIZE);
   if (client == (CLIENT *) NULL)
     return (FALSE);
   parms.pm_prog = program;
@@ -156,8 +157,9 @@ pmap_unset (u_long program, u_long versi
 
   if (!__get_myaddress (&myaddress))
     return FALSE;
-  client = clntudp_bufcreate (&myaddress, PMAPPROG, PMAPVERS,
-			timeout, &socket, RPCSMALLMSGSIZE, RPCSMALLMSGSIZE);
+  client = INTUSE(clntudp_bufcreate) (&myaddress, PMAPPROG, PMAPVERS,
+				      timeout, &socket, RPCSMALLMSGSIZE,
+				      RPCSMALLMSGSIZE);
   if (client == (CLIENT *) NULL)
     return FALSE;
   parms.pm_prog = program;
--- libc/sunrpc/svc_run.c.jj	Mon Mar 26 10:02:34 2001
+++ libc/sunrpc/svc_run.c	Fri May 10 21:08:24 2002
@@ -79,7 +79,7 @@ svc_run (void)
 	  free (my_pollfd);
 	  continue;
 	default:
-	  svc_getreq_poll (my_pollfd, i);
+	  INTUSE(svc_getreq_poll) (my_pollfd, i);
 	  free (my_pollfd);
 	}
     }
--- libc/sunrpc/svc.c.jj	Wed Jan 30 18:02:55 2002
+++ libc/sunrpc/svc.c	Fri May 10 23:09:39 2002
@@ -192,6 +192,7 @@ pmap_it:
 
   return TRUE;
 }
+INTDEF (svc_register)
 
 /* Remove a service program from the callout list. */
 void
@@ -213,6 +214,7 @@ svc_unregister (rpcprog_t prog, rpcvers_
   /* now unregister the information with the local binder service */
   pmap_unset (prog, vers);
 }
+INTDEF (svc_unregister)
 
 /* ******************* REPLY GENERATION ROUTINES  ************ */
 
@@ -231,6 +233,7 @@ svc_sendreply (register SVCXPRT *xprt, x
   rply.acpted_rply.ar_results.proc = xdr_results;
   return SVC_REPLY (xprt, &rply);
 }
+INTDEF (svc_sendreply)
 
 /* No procedure error reply */
 void
@@ -257,6 +260,7 @@ svcerr_decode (register SVCXPRT *xprt)
   rply.acpted_rply.ar_stat = GARBAGE_ARGS;
   SVC_REPLY (xprt, &rply);
 }
+INTDEF (svcerr_decode)
 
 /* Some system error */
 void
@@ -345,8 +349,9 @@ svc_getreq (int rdfds)
 
   FD_ZERO (&readfds);
   readfds.fds_bits[0] = rdfds;
-  svc_getreqset (&readfds);
+  INTUSE(svc_getreqset) (&readfds);
 }
+INTDEF (svc_getreq)
 
 void
 svc_getreqset (fd_set *readfds)
@@ -361,8 +366,9 @@ svc_getreqset (fd_set *readfds)
   maskp = (u_int32_t *) readfds->fds_bits;
   for (sock = 0; sock < setsize; sock += 32)
     for (mask = *maskp++; (bit = ffs (mask)); mask ^= (1 << (bit - 1)))
-      svc_getreq_common (sock + bit - 1);
+      INTUSE(svc_getreq_common) (sock + bit - 1);
 }
+INTDEF (svc_getreqset)
 
 void
 svc_getreq_poll (struct pollfd *pfdp, int pollretval)
@@ -382,10 +388,11 @@ svc_getreq_poll (struct pollfd *pfdp, in
 	  if (p->revents & POLLNVAL)
 	    xprt_unregister (xports[p->fd]);
 	  else
-	    svc_getreq_common (p->fd);
+	    INTUSE(svc_getreq_common) (p->fd);
 	}
     }
 }
+INTDEF (svc_getreq_poll)
 
 
 void
@@ -477,6 +484,7 @@ svc_getreq_common (const int fd)
     }
   while (stat == XPRT_MOREREQS);
 }
+INTDEF (svc_getreq_common)
 
 #ifdef _RPC_THREAD_SAFE_
 
--- libc/sunrpc/svc_simple.c.jj	Thu Feb 28 12:32:13 2002
+++ libc/sunrpc/svc_simple.c	Sat May 11 22:52:07 2002
@@ -91,7 +91,7 @@ registerrpc (u_long prognum, u_long vers
     }
   if (transp == 0)
     {
-      transp = svcudp_create (RPC_ANYSOCK);
+      transp = INTUSE(svcudp_create) (RPC_ANYSOCK);
       if (transp == NULL)
 	{
 	  buf = strdup (_("couldn't create an rpc server\n"));
@@ -99,8 +99,8 @@ registerrpc (u_long prognum, u_long vers
 	}
     }
   (void) pmap_unset ((u_long) prognum, (u_long) versnum);
-  if (!svc_register (transp, (u_long) prognum, (u_long) versnum,
-		     universal, IPPROTO_UDP))
+  if (!INTUSE(svc_register) (transp, (u_long) prognum, (u_long) versnum,
+			     universal, IPPROTO_UDP))
     {
       (void) __asprintf (&buf, _("couldn't register prog %ld vers %ld\n"),
 			 prognum, versnum);
@@ -146,8 +146,8 @@ universal (struct svc_req *rqstp, SVCXPR
    */
   if (rqstp->rq_proc == NULLPROC)
     {
-      if (svc_sendreply (transp_l, (xdrproc_t)INTUSE(xdr_void), (char *) NULL)
-	  == FALSE)
+      if (INTUSE(svc_sendreply) (transp_l, (xdrproc_t)INTUSE(xdr_void),
+				 (char *) NULL) == FALSE)
 	{
 	  __write (STDERR_FILENO, "xxx\n", 4);
 	  exit (1);
@@ -163,14 +163,14 @@ universal (struct svc_req *rqstp, SVCXPR
 	__bzero (xdrbuf, sizeof (xdrbuf));	/* required ! */
 	if (!svc_getargs (transp_l, pl->p_inproc, xdrbuf))
 	  {
-	    svcerr_decode (transp_l);
+	    INTUSE(svcerr_decode) (transp_l);
 	    return;
 	  }
 	outdata = (*(pl->p_progname)) (xdrbuf);
 	if (outdata == NULL && pl->p_outproc != (xdrproc_t)INTUSE(xdr_void))
 	  /* there was an error */
 	  return;
-	if (!svc_sendreply (transp_l, pl->p_outproc, outdata))
+	if (!INTUSE(svc_sendreply) (transp_l, pl->p_outproc, outdata))
 	  {
 	    (void) __asprintf (&buf,
 			       _("trouble replying to prog %d\n"),
--- libc/sunrpc/pm_getport.c.jj	Thu Feb 28 12:32:13 2002
+++ libc/sunrpc/pm_getport.c	Sat May 11 22:52:35 2002
@@ -66,8 +66,9 @@ pmap_getport (address, program, version,
   struct pmap parms;
 
   address->sin_port = htons (PMAPPORT);
-  client = clntudp_bufcreate (address, PMAPPROG,
-	      PMAPVERS, timeout, &socket, RPCSMALLMSGSIZE, RPCSMALLMSGSIZE);
+  client = INTUSE(clntudp_bufcreate) (address, PMAPPROG, PMAPVERS, timeout,
+				      &socket, RPCSMALLMSGSIZE,
+				      RPCSMALLMSGSIZE);
   if (client != (CLIENT *) NULL)
     {
       struct rpc_createerr *ce = &get_rpc_createerr ();
--- libc/sunrpc/auth_des.c.jj	Thu Feb 28 12:32:13 2002
+++ libc/sunrpc/auth_des.c	Sat May 11 22:05:00 2002
@@ -115,7 +115,7 @@ authdes_create (const char *servername, 
 
   pkey.n_bytes = (char *) pkey_data;
   pkey.n_len = strlen ((char *) pkey_data) + 1;
-  return authdes_pk_create (servername, &pkey, window, syncaddr, ckey);
+  return INTUSE(authdes_pk_create) (servername, &pkey, window, syncaddr, ckey);
 }
 
 AUTH *
@@ -206,6 +206,7 @@ failed:
     }
   return NULL;
 }
+INTDEF(authdes_pk_create)
 
 /*
  * Implement the five authentication operations
--- libc/sunrpc/svc_auth.c.jj	Mon Mar 26 10:02:33 2001
+++ libc/sunrpc/svc_auth.c	Sat May 11 22:06:48 2002
@@ -111,6 +111,7 @@ _authenticate (register struct svc_req *
 
   return AUTH_REJECTEDCRED;
 }
+INTDEF(_authenticate)
 
 static enum auth_stat
 _svcauth_null (struct svc_req *rqst, struct rpc_msg *msg)
--- libc/sysdeps/generic/unwind-dw2-fde.c.jj	Thu Dec 27 22:54:38 2001
+++ libc/sysdeps/generic/unwind-dw2-fde.c	Sat May 11 23:16:26 2002
@@ -68,6 +68,13 @@ __libc_lock_define_initialized (static, 
 #define __gthread_mutex_lock(m) __libc_lock_lock (*(m))
 #define __gthread_mutex_unlock(m) __libc_lock_unlock (*(m))
 
+void __register_frame_info_bases_internal (void *begin, struct object *ob,
+					   void *tbase, void *dbase);
+void __register_frame_info_table_bases_internal (void *begin,
+						 struct object *ob,
+						 void *tbase, void *dbase);
+void *__deregister_frame_info_bases_internal (void *begin);
+
 #else
 
 #ifdef __GTHREAD_MUTEX_INIT
@@ -120,11 +127,12 @@ __register_frame_info_bases (void *begin
 
   __gthread_mutex_unlock (&object_mutex);
 }
+INTDEF(__register_frame_info_bases)
 
 void
 __register_frame_info (void *begin, struct object *ob)
 {
-  __register_frame_info_bases (begin, ob, 0, 0);
+  INTUSE(__register_frame_info_bases) (begin, ob, 0, 0);
 }
 
 void
@@ -137,7 +145,7 @@ __register_frame (void *begin)
     return;
 
   ob = (struct object *) malloc (sizeof (struct object));
-  __register_frame_info (begin, ob);
+  INTUSE(__register_frame_info_bases) (begin, ob, 0, 0);
 }
 
 /* Similar, but BEGIN is actually a pointer to a table of unwind entries
@@ -164,18 +172,19 @@ __register_frame_info_table_bases (void 
 
   __gthread_mutex_unlock (&object_mutex);
 }
+INTDEF(__register_frame_info_table_bases)
 
 void
 __register_frame_info_table (void *begin, struct object *ob)
 {
-  __register_frame_info_table_bases (begin, ob, 0, 0);
+  INTUSE(__register_frame_info_table_bases) (begin, ob, 0, 0);
 }
 
 void
 __register_frame_table (void *begin)
 {
   struct object *ob = (struct object *) malloc (sizeof (struct object));
-  __register_frame_info_table (begin, ob);
+  INTUSE(__register_frame_info_table_bases) (begin, ob, 0, 0);
 }
 
 /* Called from crtbegin.o to deregister the unwind info for an object.  */
@@ -239,11 +248,12 @@ __deregister_frame_info_bases (void *beg
   __gthread_mutex_unlock (&object_mutex);
   return (void *) ob;
 }
+INTDEF(__deregister_frame_info_bases)
 
 void *
 __deregister_frame_info (void *begin)
 {
-  return __deregister_frame_info_bases (begin);
+  return INTUSE(__deregister_frame_info_bases) (begin);
 }
 
 void
@@ -251,7 +261,7 @@ __deregister_frame (void *begin)
 {
   /* If .eh_frame is empty, we haven't registered.  */
   if (*(uword *)begin != 0)
-    free (__deregister_frame_info (begin));
+    free (INTUSE(__deregister_frame_info_bases) (begin));
 }
 
 
--- libc/sysdeps/generic/sendto.c.jj	Thu Aug 23 18:49:35 2001
+++ libc/sysdeps/generic/sendto.c	Sat May 11 22:58:52 2002
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1995, 1996, 1997, 2001 Free Software Foundation, Inc.
+/* Copyright (C) 1991,1995,1996,1997,2001,2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -22,7 +22,7 @@
 /* Send N bytes of BUF on socket FD to peer at address ADDR (which is
    ADDR_LEN bytes long).  Returns the number sent, or -1 for errors.  */
 ssize_t
-sendto (fd, buf, n, flags, addr, addr_len)
+__sendto (fd, buf, n, flags, addr, addr_len)
      int fd;
      __const __ptr_t buf;
      size_t n;
@@ -34,5 +34,7 @@ sendto (fd, buf, n, flags, addr, addr_le
   return -1;
 }
 
+weak_alias (__sendto, sendto)
+
 stub_warning (sendto)
 #include <stub-tag.h>
--- libc/sysdeps/generic/recvfrom.c.jj	Thu Aug 23 18:49:33 2001
+++ libc/sysdeps/generic/recvfrom.c	Sat May 11 22:59:03 2002
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1995, 1996, 1997, 2001 Free Software Foundation, Inc.
+/* Copyright (C) 1991,1995,1996,1997,2001,2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -23,7 +23,7 @@
    at address ADDR (which is ADDR_LEN bytes long).
    Returns the number read or -1 for errors.  */
 ssize_t
-recvfrom (fd, buf, n, flags, addr, addr_len)
+__recvfrom (fd, buf, n, flags, addr, addr_len)
      int fd;
      void *buf;
      size_t n;
@@ -35,5 +35,7 @@ recvfrom (fd, buf, n, flags, addr, addr_
   return -1;
 }
 
+weak_alias (__recvfrom, recvfrom)
+
 stub_warning (recvfrom)
 #include <stub-tag.h>
--- libc/sysdeps/generic/recvmsg.c.jj	Thu Aug 23 18:49:33 2001
+++ libc/sysdeps/generic/recvmsg.c	Sat May 11 22:59:16 2002
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1995, 1996, 1997, 2001 Free Software Foundation, Inc.
+/* Copyright (C) 1991,1995,1996,1997,2001,2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -22,7 +22,7 @@
 /* Receive a message as described by MESSAGE from socket FD.
    Returns the number of bytes read or -1 for errors.  */
 ssize_t
-recvmsg (fd, message, flags)
+__recvmsg (fd, message, flags)
      int fd;
      struct msghdr *message;
      int flags;
@@ -31,5 +31,7 @@ recvmsg (fd, message, flags)
   return -1;
 }
 
+weak_alias (__recvmsg, recvmsg)
+
 stub_warning (recvmsg)
 #include <stub-tag.h>
--- libc/sysdeps/generic/sendmsg.c.jj	Thu Aug 23 18:49:35 2001
+++ libc/sysdeps/generic/sendmsg.c	Sat May 11 22:59:25 2002
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1995, 1996, 1997, 2001 Free Software Foundation, Inc.
+/* Copyright (C) 1991,1995,1996,1997,2001,2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -22,7 +22,7 @@
 /* Send a message described MESSAGE on socket FD.
    Returns the number of bytes sent, or -1 for errors.  */
 ssize_t
-sendmsg (fd, message, flags)
+__sendmsg (fd, message, flags)
      int fd;
      const struct msghdr *message;
      int flags;
@@ -31,5 +31,7 @@ sendmsg (fd, message, flags)
   return -1;
 }
 
+weak_alias (__sendmsg, sendmsg)
+
 stub_warning (sendmsg)
 #include <stub-tag.h>
--- libc/sysdeps/generic/setsockopt.c.jj	Thu Aug 23 18:49:35 2001
+++ libc/sysdeps/generic/setsockopt.c	Sat May 11 22:59:38 2002
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
+/* Copyright (C) 1991,1995,1996,1997,1998,2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -23,7 +23,7 @@
    to *OPTVAL (which is OPTLEN bytes long).
    Returns 0 on success, -1 for errors.  */
 int
-setsockopt (fd, level, optname, optval, optlen)
+__setsockopt (fd, level, optname, optval, optlen)
      int fd;
      int level;
      int optname;
@@ -34,5 +34,7 @@ setsockopt (fd, level, optname, optval, 
   return -1;
 }
 
+weak_alias (__setsockopt, setsockopt)
+
 stub_warning (setsockopt)
 #include <stub-tag.h>
--- libc/sysdeps/generic/bind.c.jj	Thu Aug 23 18:49:24 2001
+++ libc/sysdeps/generic/bind.c	Sat May 11 22:59:44 2002
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1995, 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 1995, 1996, 1997, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -21,7 +21,7 @@
 
 /* Give the socket FD the local address ADDR (which is LEN bytes long).  */
 int
-bind (fd, addr, len)
+__bind (fd, addr, len)
      int fd;
      __CONST_SOCKADDR_ARG addr;
      socklen_t len;
@@ -30,6 +30,7 @@ bind (fd, addr, len)
   return -1;
 }
 
+weak_alias (__bind, bind)
 
 stub_warning (bind)
 #include <stub-tag.h>
--- libc/sysdeps/generic/listen.c.jj	Thu Aug 23 18:49:33 2001
+++ libc/sysdeps/generic/listen.c	Sat May 11 22:59:55 2002
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1995, 1996, 1997, 2001 Free Software Foundation, Inc.
+/* Copyright (C) 1991,1995,1996,1997,2001,2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -23,7 +23,7 @@
    N connection requests will be queued before further requests are refused.
    Returns 0 on success, -1 for errors.  */
 int
-listen (fd, n)
+__listen (fd, n)
      int fd;
      int n;
 {
@@ -31,6 +31,7 @@ listen (fd, n)
   return -1;
 }
 
+weak_alias (__listen, listen)
 
 stub_warning (listen)
 #include <stub-tag.h>
--- libc/sysdeps/generic/getsockname.c.jj	Thu Aug 23 18:49:29 2001
+++ libc/sysdeps/generic/getsockname.c	Sat May 11 23:00:02 2002
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1995, 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 1995, 1996, 1997, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -21,7 +21,7 @@
 
 /* Put the local address of FD into *ADDR and its length in *LEN.  */
 int
-getsockname (fd, addr, len)
+__getsockname (fd, addr, len)
      int fd;
      __SOCKADDR_ARG addr;
      socklen_t *len;
@@ -30,6 +30,7 @@ getsockname (fd, addr, len)
   return -1;
 }
 
+weak_alias (__getsockname, getsockname)
 
 stub_warning (getsockname)
 #include <stub-tag.h>
--- libc/sysdeps/mach/hurd/sendto.c.jj	Tue Apr 30 12:55:01 2002
+++ libc/sysdeps/mach/hurd/sendto.c	Fri May 10 21:08:24 2002
@@ -27,12 +27,12 @@
 /* Send N bytes of BUF on socket FD to peer at address ADDR (which is
    ADDR_LEN bytes long).  Returns the number sent, or -1 for errors.  */
 ssize_t
-sendto (int fd,
-	const void *buf,
-	size_t n,
-	int flags,
-	const struct sockaddr_un *addr,
-	socklen_t addr_len)
+__sendto (int fd,
+	  const void *buf,
+	  size_t n,
+	  int flags,
+	  const struct sockaddr_un *addr,
+	  socklen_t addr_len)
 {
   addr_port_t aport;
   error_t err;
@@ -81,3 +81,5 @@ sendto (int fd,
 
   return err ? __hurd_dfail (fd, err) : wrote;
 }
+
+weak_alias (__sendto, sendto)
--- libc/sysdeps/mach/hurd/bind.c.jj	Tue Apr 30 12:54:55 2002
+++ libc/sysdeps/mach/hurd/bind.c	Fri May 10 21:08:24 2002
@@ -30,7 +30,7 @@
 
 /* Give the socket FD the local address ADDR (which is LEN bytes long).  */
 int
-bind  (int fd, __CONST_SOCKADDR_ARG addrarg, socklen_t len)
+__bind  (int fd, __CONST_SOCKADDR_ARG addrarg, socklen_t len)
 {
   addr_port_t aport;
   error_t err;
@@ -121,3 +121,5 @@ bind  (int fd, __CONST_SOCKADDR_ARG addr
 
   return err ? __hurd_dfail (fd, err) : 0;
 }
+
+weak_alias (__bind, bind)
--- libc/sysdeps/mach/hurd/listen.c.jj	Thu Aug 23 18:50:04 2001
+++ libc/sysdeps/mach/hurd/listen.c	Sat May 11 23:00:10 2002
@@ -1,4 +1,4 @@
-/* Copyright (C) 1992, 1994, 1997, 2001 Free Software Foundation, Inc.
+/* Copyright (C) 1992, 1994, 1997, 2001, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -26,9 +26,8 @@
    N connection requests will be queued before further requests are refused.
    Returns 0 on success, -1 for errors.  */
 
-/* XXX should be __listen ? */
 int
-listen (fd, n)
+__listen (fd, n)
      int fd;
      int n;
 {
@@ -37,3 +36,5 @@ listen (fd, n)
     return __hurd_dfail (fd, err);
   return 0;
 }
+
+weak_alias (__listen, listen)
--- libc/sysdeps/mach/hurd/setsockopt.c.jj	Tue Apr 30 12:55:01 2002
+++ libc/sysdeps/mach/hurd/setsockopt.c	Fri May 10 21:08:24 2002
@@ -25,13 +25,12 @@
 /* Set socket FD's option OPTNAME at protocol level LEVEL
    to *OPTVAL (which is OPTLEN bytes long).
    Returns 0 on success, -1 for errors.  */
-/* XXX __setsockopt ? */
 int
-setsockopt (int fd,
-	    int level,
-	    int optname,
-	    const void *optval,
-	    socklen_t optlen)
+__setsockopt (int fd,
+	      int level,
+	      int optname,
+	      const void *optval,
+	      socklen_t optlen)
 {
   error_t err = HURD_DPORT_USE (fd, __socket_setopt (port,
 						     level, optname,
@@ -40,3 +39,5 @@ setsockopt (int fd,
     return __hurd_dfail (fd, err);
   return 0;
 }
+
+weak_alias (__setsockopt, setsockopt)
--- libc/sysdeps/mach/hurd/recvmsg.c.jj	Sun Jul 29 14:26:40 2001
+++ libc/sysdeps/mach/hurd/recvmsg.c	Sat May 11 23:00:17 2002
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001 Free Software Foundation, Inc.
+/* Copyright (C) 2001, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -142,3 +142,4 @@ __libc_recvmsg (int fd, struct msghdr *m
 }
 
 weak_alias (__libc_recvmsg, recvmsg)
+weak_alias (__libc_recvmsg, __recvmsg)
--- libc/sysdeps/mach/hurd/recvfrom.c.jj	Thu Aug 23 18:50:04 2001
+++ libc/sysdeps/mach/hurd/recvfrom.c	Sat May 11 23:00:23 2002
@@ -1,4 +1,4 @@
-/* Copyright (C) 1994, 1997, 1999, 2001 Free Software Foundation, Inc.
+/* Copyright (C) 1994, 1997, 1999, 2001, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -28,7 +28,7 @@
    the sender, and store the actual size of the address in *ADDR_LEN.
    Returns the number of bytes read or -1 for errors.  */
 ssize_t
-recvfrom (fd, buf, n, flags, addrarg, addr_len)
+__recvfrom (fd, buf, n, flags, addrarg, addr_len)
      int fd;
      void *buf;
      size_t n;
@@ -103,3 +103,5 @@ recvfrom (fd, buf, n, flags, addrarg, ad
 
   return nread;
 }
+
+weak_alias (__recvfrom, recvfrom)
--- libc/sysdeps/mach/hurd/sendmsg.c.jj	Sun Jul 29 14:26:40 2001
+++ libc/sysdeps/mach/hurd/sendmsg.c	Sat May 11 23:00:27 2002
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001 Free Software Foundation, Inc.
+/* Copyright (C) 2001, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -150,3 +150,4 @@ __libc_sendmsg (int fd, const struct msg
 }
 
 weak_alias (__libc_sendmsg, sendmsg)
+weak_alias (__libc_sendmsg, __sendmsg)
--- libc/sysdeps/mach/hurd/getsockname.c.jj	Thu Aug 23 18:50:04 2001
+++ libc/sysdeps/mach/hurd/getsockname.c	Sat May 11 23:00:32 2002
@@ -1,4 +1,4 @@
-/* Copyright (C) 1992, 1994, 1997, 1999 Free Software Foundation, Inc.
+/* Copyright (C) 1992, 1994, 1997, 1999, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -25,7 +25,7 @@
 
 /* Put the local address of FD into *ADDR and its length in *LEN.  */
 int
-getsockname (fd, addrarg, len)
+__getsockname (fd, addrarg, len)
      int fd;
      __SOCKADDR_ARG addrarg;
      socklen_t *len;
@@ -59,3 +59,5 @@ getsockname (fd, addrarg, len)
 
   return 0;
 }
+
+weak_alias (__getsockname, getsockname)
--- libc/sysdeps/unix/inet/syscalls.list.jj	Thu Jul 27 16:00:06 2000
+++ libc/sysdeps/unix/inet/syscalls.list	Fri May 10 21:08:24 2002
@@ -1,23 +1,23 @@
 # File name	Caller	Syscall name	# args	Strong name	Weak names
 
 accept		-	accept		i:iBN	__libc_accept	accept
-bind		-	bind		i:ipi	bind
+bind		-	bind		i:ipi	__bind		bind
 connect		-	connect		i:ipi	__libc_connect	__connect connect
 gethostid	-	gethostid	i:	gethostid
 gethostname	-	gethostname	i:bn	__gethostname	gethostname
 getpeername	-	getpeername	i:ibN	getpeername
 getsockname	-	getsockname	i:ibN	getsockname
 getsockopt	-	getsockopt	i:iiiBN	getsockopt
-listen		-	listen		i:ii	listen
+listen		-	listen		i:ii	__listen	listen
 recv		-	recv		i:ibni	__libc_recv	recv
-recvfrom	-	recvfrom	i:ibniBN	__libc_recvfrom	recvfrom
-recvmsg		-	recvmsg		i:ipi	__libc_recvmsg	recvmsg
+recvfrom	-	recvfrom	i:ibniBN	__libc_recvfrom __recvfrom recvfrom
+recvmsg		-	recvmsg		i:ipi	__libc_recvmsg	__recvmsg recvmsg
 send		-	send		i:ibni	__libc_send	__send send
-sendmsg		-	sendmsg		i:ipi	__libc_sendmsg	sendmsg
-sendto		-	sendto		i:ibnibn	__libc_sendto	sendto
+sendmsg		-	sendmsg		i:ipi	__libc_sendmsg	__sendmsg sendmsg
+sendto		-	sendto		i:ibnibn	__libc_sendto	__sendto sendto
 sethostid	-	sethostid	i:i	sethostid
 sethostname	-	sethostname	i:pi	sethostname
-setsockopt	-	setsockopt	i:iiibn	setsockopt
+setsockopt	-	setsockopt	i:iiibn	setsockopt	__setsockopt
 shutdown	-	shutdown	i:ii	shutdown
 socket		-	socket		i:iii	socket
 socketpair	-	socketpair	i:iiif	socketpair
--- libc/sysdeps/unix/sysv/aix/sendmsg.c.jj	Thu Aug 23 18:50:37 2001
+++ libc/sysdeps/unix/sysv/aix/sendmsg.c	Sat May 11 23:00:37 2002
@@ -1,4 +1,4 @@
-/* Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc.
+/* Copyright (C) 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -21,7 +21,10 @@
 extern int nsendmsg (int s, const void *uap_msg, int flags);
 
 ssize_t
-sendmsg (int fd, const struct msghdr *message, int flags)
+__sendmsg (int fd, const struct msghdr *message, int flags)
 {
   return nsendmsg (fd, message, flags);
 }
+
+weak_alias (__sendmsg, sendmsg)
+
--- libc/sysdeps/unix/sysv/aix/recvmsg.c.jj	Thu Aug 23 18:50:37 2001
+++ libc/sysdeps/unix/sysv/aix/recvmsg.c	Sat May 11 23:00:41 2002
@@ -1,4 +1,4 @@
-/* Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc.
+/* Copyright (C) 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -21,7 +21,9 @@
 extern ssize_t nrecvmsg (int s, struct msghdr *uap_msg, int flags);
 
 ssize_t
-recvmsg (int fd, struct msghdr *message, int flags)
+__recvmsg (int fd, struct msghdr *message, int flags)
 {
   return nrecvmsg (fd, message, flags);
 }
+
+weak_alias (__recvmsg, recvmsg)
--- libc/sysdeps/unix/sysv/aix/recvfrom.c.jj	Thu Aug 23 18:50:37 2001
+++ libc/sysdeps/unix/sysv/aix/recvfrom.c	Sat May 11 23:00:45 2002
@@ -1,4 +1,4 @@
-/* Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc.
+/* Copyright (C) 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -22,8 +22,10 @@ extern ssize_t nrecvfrom (int s, void *u
 			  void *uap_from, socklen_t *uap_fromlenaddr);
 
 ssize_t
-recvfrom (int fd, void *buf, size_t n, int flags, __SOCKADDR_ARG addr,
-	  socklen_t *addr_len)
+__recvfrom (int fd, void *buf, size_t n, int flags, __SOCKADDR_ARG addr,
+	    socklen_t *addr_len)
 {
   return nrecvfrom (fd, buf, n, flags, addr.__sockaddr__, addr_len);
 }
+
+weak_alias (__recvfrom, recvfrom)
--- libc/sysdeps/unix/sysv/aix/getsockname.c.jj	Thu Aug 23 18:50:37 2001
+++ libc/sysdeps/unix/sysv/aix/getsockname.c	Sat May 11 23:00:49 2002
@@ -1,4 +1,4 @@
-/* Copyright (C) 2000 Free Software Foundation, Inc.
+/* Copyright (C) 2000, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -21,7 +21,9 @@
 extern int ngetsockname (int s, void *uap_asa, int *uap_alen);
 
 int
-getsockname (int fd, __SOCKADDR_ARG addr, socklen_t *len)
+__getsockname (int fd, __SOCKADDR_ARG addr, socklen_t *len)
 {
   return ngetsockname (fd, addr.__sockaddr__, len);
 }
+
+weak_alias (__getsockname, getsockname)
--- libc/sysdeps/unix/sysv/linux/alpha/syscalls.list.jj	Thu Apr 25 22:02:22 2002
+++ libc/sysdeps/unix/sysv/linux/alpha/syscalls.list	Fri May 10 21:08:24 2002
@@ -43,10 +43,10 @@ getsockopt	-	getsockopt	5	__getsockopt	g
 listen		-	listen		2	__listen	listen
 recv		-	recv		4	__libc_recv	__recv recv
 recvfrom	-	recvfrom	6	__libc_recvfrom	__recvfrom recvfrom
-recvmsg		-	recvmsg		3	__libc_recvmsg	recvmsg
+recvmsg		-	recvmsg		3	__libc_recvmsg	__recvmsg recvmsg
 ptrace		-	ptrace		4	__ptrace	ptrace
 send		-	send		4	__libc_send	__send send
-sendmsg		-	sendmsg		3	__libc_sendmsg	sendmsg
+sendmsg		-	sendmsg		3	__libc_sendmsg	__sendmsg sendmsg
 sendto		-	sendto		6	__libc_sendto	__sendto sendto
 setsockopt	-	setsockopt	5	__setsockopt	setsockopt
 shutdown	-	shutdown	2	__shutdown	shutdown
--- libc/sysdeps/unix/sysv/linux/ia64/syscalls.list.jj	Thu Apr 25 22:02:25 2002
+++ libc/sysdeps/unix/sysv/linux/ia64/syscalls.list	Fri May 10 21:08:24 2002
@@ -39,9 +39,9 @@ getsockopt	-	getsockopt	i:iiiBN	__getsoc
 listen		-	listen		i:ii	__listen	listen
 recv		-	recv		i:ibni	__libc_recv	__recv recv
 recvfrom	-	recvfrom	i:ibniBN	__libc_recvfrom	__recvfrom recvfrom
-recvmsg		-	recvmsg		i:ipi	__libc_recvmsg	recvmsg
+recvmsg		-	recvmsg		i:ipi	__libc_recvmsg	__recvmsg recvmsg
 send		-	send		i:ibni	__libc_send	__send send
-sendmsg		-	sendmsg		i:ipi	__libc_sendmsg	sendmsg
+sendmsg		-	sendmsg		i:ipi	__libc_sendmsg	__sendmsg sendmsg
 sendto		-	sendto		i:ibnibn	__libc_sendto	__sendto sendto
 setsockopt	-	setsockopt	i:iiibn	__setsockopt	setsockopt
 shutdown	-	shutdown	i:ii	__shutdown	shutdown
--- libc/sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list.jj	Thu Apr 25 22:02:28 2002
+++ libc/sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list	Fri May 10 21:08:24 2002
@@ -34,9 +34,9 @@ getsockopt	-	getsockopt	i:iiiBN	__getsoc
 listen		-	listen		i:ii	__listen	listen
 recv		-	recv		i:ibni	__libc_recv	__recv recv
 recvfrom	-	recvfrom	i:ibniBN	__libc_recvfrom	__recvfrom recvfrom
-recvmsg		-	recvmsg		i:ipi	__libc_recvmsg	recvmsg
+recvmsg		-	recvmsg		i:ipi	__libc_recvmsg	__recvmsg recvmsg
 send		-	send		i:ibni	__libc_send	__send send
-sendmsg		-	sendmsg		i:ipi	__libc_sendmsg	sendmsg
+sendmsg		-	sendmsg		i:ipi	__libc_sendmsg	__sendmsg sendmsg
 sendto		-	sendto		i:ibnibn	__libc_sendto	__sendto sendto
 setsockopt	-	setsockopt	i:iiibn	__setsockopt	setsockopt
 shutdown	-	shutdown	i:ii	__shutdown	shutdown
--- libc/sysdeps/unix/sysv/linux/hppa/syscalls.list.jj	Thu Apr 25 22:02:22 2002
+++ libc/sysdeps/unix/sysv/linux/hppa/syscalls.list	Fri May 10 21:08:24 2002
@@ -23,9 +23,9 @@ getsockopt	-	getsockopt	i:iiiBN	__getsoc
 listen		-	listen		i:ii	__listen	listen
 recv		-	recv		i:ibni	__libc_recv	__recv recv
 recvfrom	-	recvfrom	i:ibniBN	__libc_recvfrom	__recvfrom recvfrom
-recvmsg		-	recvmsg		i:ipi	__libc_recvmsg	recvmsg
+recvmsg		-	recvmsg		i:ipi	__libc_recvmsg	__recvmsg recvmsg
 send		-	send		i:ibni	__libc_send	__send send
-sendmsg		-	sendmsg		i:ipi	__libc_sendmsg	sendmsg
+sendmsg		-	sendmsg		i:ipi	__libc_sendmsg	__sendmsg sendmsg
 sendto		-	sendto		i:ibnibn	__libc_sendto	__sendto sendto
 setsockopt	-	setsockopt	i:iiibn	__setsockopt	setsockopt
 shutdown	-	shutdown	i:ii	__shutdown	shutdown
--- libc/sysdeps/unix/sysv/linux/x86_64/syscalls.list.jj	Thu Apr 25 22:02:31 2002
+++ libc/sysdeps/unix/sysv/linux/x86_64/syscalls.list	Fri May 10 21:08:24 2002
@@ -38,8 +38,8 @@ getsockname	-	getsockname	i:ipp	__getsoc
 getsockopt	-	getsockopt	i:iiiBN	__getsockopt	getsockopt
 listen		-	listen		i:ii	__listen	listen
 recvfrom	-	recvfrom	i:ibniBN	__libc_recvfrom	__recvfrom recvfrom
-recvmsg		-	recvmsg		i:ipi	__libc_recvmsg	recvmsg
-sendmsg		-	sendmsg		i:ipi	__libc_sendmsg	sendmsg
+recvmsg		-	recvmsg		i:ipi	__libc_recvmsg	__recvmsg recvmsg
+sendmsg		-	sendmsg		i:ipi	__libc_sendmsg	__sendmsg sendmsg
 sendto		-	sendto		i:ibnibn	__libc_sendto	__sendto sendto
 setsockopt	-	setsockopt	i:iiibn	__setsockopt	setsockopt
 shutdown	-	shutdown	i:ii	__shutdown	shutdown
--- libc/sysdeps/unix/sysv/linux/recvfrom.S.jj	Thu Jul 16 13:35:38 1998
+++ libc/sysdeps/unix/sysv/linux/recvfrom.S	Fri May 10 21:08:24 2002
@@ -2,3 +2,4 @@
 #define	__socket __libc_recvfrom
 #define	NARGS	6
 #include <socket.S>
+weak_alias (__libc_recvfrom, __recvfrom)
--- libc/sysdeps/unix/sysv/linux/recvmsg.S.jj	Sat Aug  8 22:01:06 1998
+++ libc/sysdeps/unix/sysv/linux/recvmsg.S	Fri May 10 21:08:24 2002
@@ -2,3 +2,4 @@
 #define	__socket __libc_recvmsg
 #define	NARGS	3
 #include <socket.S>
+weak_alias (__libc_recvmsg, __recvmsg)
--- libc/sysdeps/unix/sysv/linux/sendmsg.S.jj	Sat Aug  8 22:01:08 1998
+++ libc/sysdeps/unix/sysv/linux/sendmsg.S	Fri May 10 21:08:24 2002
@@ -2,3 +2,4 @@
 #define	__socket __libc_sendmsg
 #define	NARGS	3
 #include <socket.S>
+weak_alias (__libc_sendmsg, __sendmsg)
--- libc/sysdeps/unix/sysv/linux/sendto.S.jj	Thu Jul 16 13:34:59 1998
+++ libc/sysdeps/unix/sysv/linux/sendto.S	Fri May 10 21:08:24 2002
@@ -2,3 +2,4 @@
 #define	__socket __libc_sendto
 #define	NARGS	6
 #include <socket.S>
+weak_alias (__libc_sendto, __sendto)
--- libc/sysdeps/unix/sysv/linux/setsockopt.S.jj	Thu Jul 16 13:35:00 1998
+++ libc/sysdeps/unix/sysv/linux/setsockopt.S	Fri May 10 21:08:24 2002
@@ -2,3 +2,4 @@
 #define	NARGS	5
 #define NO_WEAK_ALIAS	1
 #include <socket.S>
+weak_alias (setsockopt, __setsockopt)
--- libc/sysdeps/unix/sysv/linux/bind.S.jj	Thu Jul 16 13:34:57 1998
+++ libc/sysdeps/unix/sysv/linux/bind.S	Fri May 10 21:08:24 2002
@@ -2,3 +2,4 @@
 #define	NARGS	3
 #define NO_WEAK_ALIAS	1
 #include <socket.S>
+weak_alias (bind, __bind)
--- libc/sysdeps/unix/sysv/linux/listen.S.jj	Thu Jul 16 13:35:37 1998
+++ libc/sysdeps/unix/sysv/linux/listen.S	Fri May 10 21:08:24 2002
@@ -2,3 +2,4 @@
 #define	NARGS	2
 #define NO_WEAK_ALIAS	1
 #include <socket.S>
+weak_alias (listen, __listen)
--- libc/sysdeps/unix/sysv/linux/getsockname.S.jj	Thu Jul 16 13:34:58 1998
+++ libc/sysdeps/unix/sysv/linux/getsockname.S	Fri May 10 21:08:24 2002
@@ -2,3 +2,4 @@
 #define	NARGS	3
 #define NO_WEAK_ALIAS	1
 #include <socket.S>
+weak_alias (getsockname, __getsockname)

	Jakub


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]