OSDN Git Service

Hide *clnt|pmap|svc* and some rpc. inet/rpc is full of relocs ...
authorPeter S. Mazinger <ps.m@gmx.net>
Wed, 7 Dec 2005 00:50:06 +0000 (00:50 -0000)
committerPeter S. Mazinger <ps.m@gmx.net>
Wed, 7 Dec 2005 00:50:06 +0000 (00:50 -0000)
44 files changed:
include/libc-internal.h
libc/inet/rpc/auth_unix.c
libc/inet/rpc/clnt_generic.c
libc/inet/rpc/clnt_perror.c
libc/inet/rpc/clnt_raw.c
libc/inet/rpc/clnt_simple.c
libc/inet/rpc/clnt_tcp.c
libc/inet/rpc/clnt_udp.c
libc/inet/rpc/clnt_unix.c
libc/inet/rpc/get_myaddress.c
libc/inet/rpc/getrpcent.c
libc/inet/rpc/pmap_clnt.c
libc/inet/rpc/pmap_getmaps.c
libc/inet/rpc/pmap_getport.c
libc/inet/rpc/pmap_rmt.c
libc/inet/rpc/rcmd.c
libc/inet/rpc/rexec.c
libc/inet/rpc/rpc_prot.c
libc/inet/rpc/svc.c
libc/inet/rpc/svc_run.c
libc/inet/rpc/svc_simple.c
libc/inet/rpc/svc_tcp.c
libc/inet/rpc/svc_udp.c
libc/inet/rpc/svc_unix.c
libc/inet/rpc/xdr.c
libc/misc/regex/_regex.h
libc/misc/regex/regex.c
libc/misc/regex/regex_old.c
libc/misc/wctype/wctype.c
libc/misc/wordexp/wordexp.c
libc/stdio/perror.c
libc/stdio/popen.c
libc/stdio/scanf.c
libc/stdio/vfprintf.c
libc/stdlib/realpath.c
libc/stdlib/stdlib.c
libc/stdlib/strtod.c
libc/stdlib/unix_grantpt.c
libc/string/strcmp.c
libc/string/wcscmp.c
libc/sysdeps/linux/arm/ioperm.c
libc/sysdeps/linux/common/dup2.c
libc/sysdeps/linux/common/readlink.c
libc/unistd/daemon.c

index 8e79b0c..feb27b8 100644 (file)
@@ -173,6 +173,9 @@ extern ssize_t __write(int __fd, __const void *__buf, size_t __n) attribute_hidd
 extern int __close(int __fd) attribute_hidden;
 extern __pid_t __getpid (void) attribute_hidden;
 
+/* #include <stdio.h> */
+extern void __perror (__const char *__s) attribute_hidden;
+
 /* #include <stdlib.h> */
 extern char *__getenv (__const char *__name) attribute_hidden;
 
index 9c16774..ca4e89b 100644 (file)
@@ -322,7 +322,7 @@ marshal_new_auth (AUTH *auth)
   xdrmem_create (xdrs, au->au_marshed, MAX_AUTH_BYTES, XDR_ENCODE);
   if ((!xdr_opaque_auth (xdrs, &(auth->ah_cred))) ||
       (!xdr_opaque_auth (xdrs, &(auth->ah_verf))))
-    perror (_("auth_none.c - Fatal marshalling problem"));
+    __perror (_("auth_none.c - Fatal marshalling problem"));
   else
     au->au_mpos = XDR_GETPOS (xdrs);
 
index 3e29984..1b30d2e 100644 (file)
  * Copyright (C) 1987, Sun Microsystems, Inc.
  */
 
+#define clnttcp_create __clnttcp_create
+#define clntudp_create __clntudp_create
+#define clntunix_create __clntunix_create
+
 #define __FORCE_GLIBC
 #include <features.h>
 
index 6561e26..9173f17 100644 (file)
@@ -71,105 +71,6 @@ _buf (void)
   return buf;
 }
 
-/*
- * Print reply error info
- */
-char *
-clnt_sperror (CLIENT * rpch, const char *msg)
-{
-  char chrbuf[1024];
-  struct rpc_err e;
-  char *err;
-  char *str = _buf ();
-  char *strstart = str;
-  int len;
-
-  if (str == NULL)
-    return NULL;
-  CLNT_GETERR (rpch, &e);
-
-  len = sprintf (str, "%s: ", msg);
-  str += len;
-
-  (void) __strcpy(str, clnt_sperrno(e.re_status));
-  str += __strlen(str);
-
-  switch (e.re_status)
-    {
-    case RPC_SUCCESS:
-    case RPC_CANTENCODEARGS:
-    case RPC_CANTDECODERES:
-    case RPC_TIMEDOUT:
-    case RPC_PROGUNAVAIL:
-    case RPC_PROCUNAVAIL:
-    case RPC_CANTDECODEARGS:
-    case RPC_SYSTEMERROR:
-    case RPC_UNKNOWNHOST:
-    case RPC_UNKNOWNPROTO:
-    case RPC_PMAPFAILURE:
-    case RPC_PROGNOTREGISTERED:
-    case RPC_FAILED:
-      break;
-
-    case RPC_CANTSEND:
-    case RPC_CANTRECV:
-      strerror_r (e.re_errno, chrbuf, sizeof chrbuf);
-      len = sprintf (str, "; errno = %s", chrbuf); 
-      str += len;
-      break;
-
-    case RPC_VERSMISMATCH:
-      len= sprintf (str, _("; low version = %lu, high version = %lu"),
-                   e.re_vers.low, e.re_vers.high);
-      str += len;
-      break;
-
-    case RPC_AUTHERROR:
-      err = auth_errmsg (e.re_why);
-      (void) __strcpy(str, _("; why = "));
-      str += __strlen(str);
-
-      if (err != NULL)
-       {
-         (void) __strcpy(str, err);
-         str += __strlen(str);
-       }
-      else
-       {
-         len = sprintf (str, _("(unknown authentication error - %d)"),
-                        (int) e.re_why);
-         str += len;
-       }
-      break;
-
-    case RPC_PROGVERSMISMATCH:
-      len = sprintf (str, _("; low version = %lu, high version = %lu"),
-                    e.re_vers.low, e.re_vers.high);
-      str += len;
-      break;
-
-    default:                   /* unknown */
-      len = sprintf (str, "; s1 = %lu, s2 = %lu", e.re_lb.s1, e.re_lb.s2);
-      str += len;
-      break;
-    }
-  *str = '\n';
-  *++str = '\0';
-  return (strstart);
-}
-
-void
-clnt_perror (CLIENT * rpch, const char *msg)
-{
-#ifdef USE_IN_LIBIO
-  if (_IO_fwide (stderr, 0) > 0)
-    (void) __fwprintf (stderr, L"%s", clnt_sperror (rpch, msg));
-  else
-#endif
-    (void) fputs (clnt_sperror (rpch, msg), stderr);
-}
-
-
 struct rpc_errtab
 {
   enum clnt_stat status;
@@ -275,8 +176,8 @@ static const struct rpc_errtab rpc_errlist[] =
 /*
  * This interface for use by clntrpc
  */
-char *
-clnt_sperrno (enum clnt_stat stat)
+char attribute_hidden *
+__clnt_sperrno (enum clnt_stat stat)
 {
   size_t i;
 
@@ -289,18 +190,118 @@ clnt_sperrno (enum clnt_stat stat)
     }
   return _("RPC: (unknown error code)");
 }
+strong_alias(__clnt_sperrno,clnt_sperrno)
 
 void
 clnt_perrno (enum clnt_stat num)
 {
 #ifdef USE_IN_LIBIO
   if (_IO_fwide (stderr, 0) > 0)
-    (void) __fwprintf (stderr, L"%s", clnt_sperrno (num));
+    (void) __fwprintf (stderr, L"%s", __clnt_sperrno (num));
   else
 #endif
-    (void) fputs (clnt_sperrno (num), stderr);
+    (void) fputs (__clnt_sperrno (num), stderr);
+}
+
+/*
+ * Print reply error info
+ */
+char attribute_hidden *
+__clnt_sperror (CLIENT * rpch, const char *msg)
+{
+  char chrbuf[1024];
+  struct rpc_err e;
+  char *err;
+  char *str = _buf ();
+  char *strstart = str;
+  int len;
+
+  if (str == NULL)
+    return NULL;
+  CLNT_GETERR (rpch, &e);
+
+  len = sprintf (str, "%s: ", msg);
+  str += len;
+
+  (void) __strcpy(str, __clnt_sperrno(e.re_status));
+  str += __strlen(str);
+
+  switch (e.re_status)
+    {
+    case RPC_SUCCESS:
+    case RPC_CANTENCODEARGS:
+    case RPC_CANTDECODERES:
+    case RPC_TIMEDOUT:
+    case RPC_PROGUNAVAIL:
+    case RPC_PROCUNAVAIL:
+    case RPC_CANTDECODEARGS:
+    case RPC_SYSTEMERROR:
+    case RPC_UNKNOWNHOST:
+    case RPC_UNKNOWNPROTO:
+    case RPC_PMAPFAILURE:
+    case RPC_PROGNOTREGISTERED:
+    case RPC_FAILED:
+      break;
+
+    case RPC_CANTSEND:
+    case RPC_CANTRECV:
+      strerror_r (e.re_errno, chrbuf, sizeof chrbuf);
+      len = sprintf (str, "; errno = %s", chrbuf); 
+      str += len;
+      break;
+
+    case RPC_VERSMISMATCH:
+      len= sprintf (str, _("; low version = %lu, high version = %lu"),
+                   e.re_vers.low, e.re_vers.high);
+      str += len;
+      break;
+
+    case RPC_AUTHERROR:
+      err = auth_errmsg (e.re_why);
+      (void) __strcpy(str, _("; why = "));
+      str += __strlen(str);
+
+      if (err != NULL)
+       {
+         (void) __strcpy(str, err);
+         str += __strlen(str);
+       }
+      else
+       {
+         len = sprintf (str, _("(unknown authentication error - %d)"),
+                        (int) e.re_why);
+         str += len;
+       }
+      break;
+
+    case RPC_PROGVERSMISMATCH:
+      len = sprintf (str, _("; low version = %lu, high version = %lu"),
+                    e.re_vers.low, e.re_vers.high);
+      str += len;
+      break;
+
+    default:                   /* unknown */
+      len = sprintf (str, "; s1 = %lu, s2 = %lu", e.re_lb.s1, e.re_lb.s2);
+      str += len;
+      break;
+    }
+  *str = '\n';
+  *++str = '\0';
+  return (strstart);
 }
+strong_alias(__clnt_sperror,clnt_sperror)
 
+void attribute_hidden
+__clnt_perror (CLIENT * rpch, const char *msg)
+{
+#ifdef USE_IN_LIBIO
+  if (_IO_fwide (stderr, 0) > 0)
+    (void) __fwprintf (stderr, L"%s", __clnt_sperror (rpch, msg));
+  else
+#endif
+    (void) fputs (__clnt_sperror (rpch, msg), stderr);
+}
+strong_alias(__clnt_perror,clnt_perror)
 
 char attribute_hidden *
 __clnt_spcreateerror (const char *msg)
@@ -316,7 +317,7 @@ __clnt_spcreateerror (const char *msg)
   ce = &get_rpc_createerr ();
   len = sprintf (str, "%s: ", msg);
   cp = str + len;
-  (void) __strcpy(cp, clnt_sperrno (ce->cf_stat));
+  (void) __strcpy(cp, __clnt_sperrno (ce->cf_stat));
   cp += __strlen(cp);
 
   switch (ce->cf_stat)
@@ -325,7 +326,7 @@ __clnt_spcreateerror (const char *msg)
       (void) __strcpy(cp, " - ");
       cp += __strlen(cp);
 
-      (void) __strcpy(cp, clnt_sperrno (ce->cf_error.re_status));
+      (void) __strcpy(cp, __clnt_sperrno (ce->cf_error.re_status));
       cp += __strlen(cp);
 
       break;
index 4114349..1dbbbb8 100644 (file)
@@ -44,6 +44,7 @@ static char sccsid[] = "@(#)clnt_raw.c 1.22 87/08/11 Copyr 1984 Sun Micro";
 
 #define authnone_create __authnone_create
 #define xdrmem_create __xdrmem_create
+#define svc_getreq __svc_getreq
 
 #define __FORCE_GLIBC
 #include <features.h>
@@ -116,7 +117,7 @@ clntraw_create (u_long prog, u_long vers)
   xdrmem_create (xdrs, clp->mashl_callmsg, MCALL_MSG_SIZE, XDR_ENCODE);
   if (!xdr_callhdr (xdrs, &call_msg))
     {
-      perror (_ ("clnt_raw.c - Fatal header serialization error."));
+      __perror (_ ("clnt_raw.c - Fatal header serialization error."));
     }
   clp->mcnt = XDR_GETPOS (xdrs);
   XDR_DESTROY (xdrs);
index dede4a0..9105fc2 100644 (file)
@@ -38,6 +38,8 @@ static char sccsid[] = "@(#)clnt_simple.c 1.35 87/08/11 Copyr 1984 Sun Micro";
  * Copyright (C) 1984, Sun Microsystems, Inc.
  */
 
+#define clntudp_create __clntudp_create
+
 #define __FORCE_GLIBC
 #include <features.h>
 
index c04265d..99c5751 100644 (file)
@@ -122,8 +122,8 @@ static struct clnt_ops tcp_ops =
  * NB: The rpch->cl_auth is set null authentication.  Caller may wish to set this
  * something more useful.
  */
-CLIENT *
-clnttcp_create (struct sockaddr_in *raddr, u_long prog, u_long vers,
+CLIENT attribute_hidden *
+__clnttcp_create (struct sockaddr_in *raddr, u_long prog, u_long vers,
                int *sockp, u_int sendsz, u_int recvsz)
 {
   CLIENT *h;
@@ -239,6 +239,7 @@ fooy:
   mem_free ((caddr_t) h, sizeof (CLIENT));
   return ((CLIENT *) NULL);
 }
+strong_alias(__clnttcp_create,clnttcp_create)
 
 static enum clnt_stat
 clnttcp_call (h, proc, xdr_args, args_ptr, xdr_results, results_ptr, timeout)
index 4aba505..81fe9f7 100644 (file)
@@ -129,8 +129,8 @@ struct cu_data
  * sendsz and recvsz are the maximum allowable packet sizes that can be
  * sent and received.
  */
-CLIENT *
-clntudp_bufcreate (struct sockaddr_in *raddr, u_long program, u_long version,
+CLIENT attribute_hidden *
+__clntudp_bufcreate (struct sockaddr_in *raddr, u_long program, u_long version,
                   struct timeval wait, int *sockp, u_int sendsz,
                   u_int recvsz)
 {
@@ -227,19 +227,16 @@ fooy:
     mem_free ((caddr_t) cl, sizeof (CLIENT));
   return (CLIENT *) NULL;
 }
+strong_alias(__clntudp_bufcreate,clntudp_bufcreate)
 
-CLIENT *
-clntudp_create (raddr, program, version, wait, sockp)
-     struct sockaddr_in *raddr;
-     u_long program;
-     u_long version;
-     struct timeval wait;
-     int *sockp;
+CLIENT attribute_hidden *
+__clntudp_create (struct sockaddr_in *raddr, u_long program, u_long version, struct timeval wait, int *sockp)
 {
 
-  return clntudp_bufcreate (raddr, program, version, wait, sockp,
+  return __clntudp_bufcreate (raddr, program, version, wait, sockp,
                            UDPMSGSIZE, UDPMSGSIZE);
 }
+strong_alias(__clntudp_create,clntudp_create)
 
 static int
 is_network_up (int sock)
index 3af68d9..3dbcc8d 100644 (file)
@@ -120,8 +120,8 @@ static struct clnt_ops unix_ops =
  * NB: The rpch->cl_auth is set null authentication.  Caller may wish to set this
  * something more useful.
  */
-CLIENT *
-clntunix_create (struct sockaddr_un *raddr, u_long prog, u_long vers,
+CLIENT attribute_hidden *
+__clntunix_create (struct sockaddr_un *raddr, u_long prog, u_long vers,
                 int *sockp, u_int sendsz, u_int recvsz)
 {
   CLIENT *h;
@@ -218,6 +218,7 @@ fooy:
   mem_free ((caddr_t) h, sizeof (CLIENT));
   return (CLIENT *) NULL;
 }
+strong_alias(__clntunix_create,clntunix_create)
 
 static enum clnt_stat
 clntunix_call (h, proc, xdr_args, args_ptr, xdr_results, results_ptr, timeout)
index ef2c2f5..684e4d7 100644 (file)
@@ -67,14 +67,14 @@ get_myaddress (struct sockaddr_in *addr)
 
   if ((s = socket (AF_INET, SOCK_DGRAM, 0)) < 0)
     {
-      perror ("get_myaddress: socket");
+      __perror ("get_myaddress: socket");
       exit (1);
     }
   ifc.ifc_len = sizeof (buf);
   ifc.ifc_buf = buf;
   if (ioctl (s, SIOCGIFCONF, (char *) &ifc) < 0)
     {
-      perror (_("get_myaddress: ioctl (get interface configuration)"));
+      __perror (_("get_myaddress: ioctl (get interface configuration)"));
       exit (1);
     }
 
@@ -85,7 +85,7 @@ get_myaddress (struct sockaddr_in *addr)
       ifreq = *ifr;
       if (ioctl (s, SIOCGIFFLAGS, (char *) &ifreq) < 0)
        {
-          perror ("get_myaddress: ioctl");
+          __perror ("get_myaddress: ioctl");
           exit (1);
        }
       if ((ifreq.ifr_flags & IFF_UP) && (ifr->ifr_addr.sa_family == AF_INET)
index 47a0b0c..bc6ab70 100644 (file)
@@ -73,41 +73,26 @@ static struct rpcdata *_rpcdata(void)
        return d;
 }
 
-struct rpcent *getrpcbynumber(register int number)
+void attribute_hidden __endrpcent(void)
 {
        register struct rpcdata *d = _rpcdata();
-       register struct rpcent *rpc;
 
        if (d == NULL)
-               return NULL;
-       setrpcent(0);
-       while ((rpc = getrpcent())) {
-               if (rpc->r_number == number)
-                       break;
+               return;
+       if (d->stayopen)
+               return;
+       if (d->current) {
+               free(d->current);
+               d->current = NULL;
        }
-       endrpcent();
-       return rpc;
-}
-
-struct rpcent *getrpcbyname(const char *name)
-{
-       struct rpcent *rpc;
-       char **rp;
-
-       setrpcent(0);
-       while ((rpc = getrpcent())) {
-               if (__strcmp(rpc->r_name, name) == 0)
-                       return rpc;
-               for (rp = rpc->r_aliases; *rp != NULL; rp++) {
-                       if (__strcmp(*rp, name) == 0)
-                               return rpc;
-               }
+       if (d->rpcf) {
+               fclose(d->rpcf);
+               d->rpcf = NULL;
        }
-       endrpcent();
-       return NULL;
 }
+strong_alias(__endrpcent,endrpcent)
 
-void setrpcent(int f)
+void attribute_hidden __setrpcent(int f)
 {
        register struct rpcdata *d = _rpcdata();
 
@@ -122,24 +107,7 @@ void setrpcent(int f)
        d->current = NULL;
        d->stayopen |= f;
 }
-
-void endrpcent()
-{
-       register struct rpcdata *d = _rpcdata();
-
-       if (d == NULL)
-               return;
-       if (d->stayopen)
-               return;
-       if (d->current) {
-               free(d->current);
-               d->current = NULL;
-       }
-       if (d->rpcf) {
-               fclose(d->rpcf);
-               d->rpcf = NULL;
-       }
-}
+strong_alias(__setrpcent,setrpcent)
 
 static struct rpcent *interpret(struct rpcdata *);
 
@@ -150,7 +118,7 @@ static struct rpcent *__get_next_rpcent(struct rpcdata *d)
        return interpret(d);
 }
 
-struct rpcent *getrpcent()
+struct rpcent attribute_hidden *__getrpcent(void)
 {
        register struct rpcdata *d = _rpcdata();
 
@@ -160,6 +128,43 @@ struct rpcent *getrpcent()
                return NULL;
        return __get_next_rpcent(d);
 }
+strong_alias(__getrpcent,getrpcent)
+
+struct rpcent attribute_hidden *__getrpcbynumber(register int number)
+{
+       register struct rpcdata *d = _rpcdata();
+       register struct rpcent *rpc;
+
+       if (d == NULL)
+               return NULL;
+       __setrpcent(0);
+       while ((rpc = __getrpcent())) {
+               if (rpc->r_number == number)
+                       break;
+       }
+       __endrpcent();
+       return rpc;
+}
+strong_alias(__getrpcbynumber,getrpcbynumber)
+
+struct rpcent attribute_hidden *__getrpcbyname(const char *name)
+{
+       struct rpcent *rpc;
+       char **rp;
+
+       __setrpcent(0);
+       while ((rpc = __getrpcent())) {
+               if (__strcmp(rpc->r_name, name) == 0)
+                       return rpc;
+               for (rp = rpc->r_aliases; *rp != NULL; rp++) {
+                       if (__strcmp(*rp, name) == 0)
+                               return rpc;
+               }
+       }
+       __endrpcent();
+       return NULL;
+}
+strong_alias(__getrpcbyname,getrpcbyname)
 
 #ifdef __linux__
 static char *firstwhite(char *s)
@@ -319,7 +324,7 @@ int getrpcbynumber_r(int number, struct rpcent *result_buf, char *buffer,
 {
        int ret;
        LOCK;
-       ret = __copy_rpcent(getrpcbynumber(number), result_buf, buffer, buflen, result);
+       ret = __copy_rpcent(__getrpcbynumber(number), result_buf, buffer, buflen, result);
        UNLOCK;
        return ret;
 }
@@ -329,7 +334,7 @@ int getrpcbyname_r(const char *name, struct rpcent *result_buf, char *buffer,
 {
        int ret;
        LOCK;
-       ret = __copy_rpcent(getrpcbyname(name), result_buf, buffer, buflen, result);
+       ret = __copy_rpcent(__getrpcbyname(name), result_buf, buffer, buflen, result);
        UNLOCK;
        return ret;
 }
@@ -339,7 +344,7 @@ int getrpcent_r(struct rpcent *result_buf, char *buffer,
 {
        int ret;
        LOCK;
-       ret = __copy_rpcent(getrpcent(), result_buf, buffer, buflen, result);
+       ret = __copy_rpcent(__getrpcent(), result_buf, buffer, buflen, result);
        UNLOCK;
        return ret;
 }
index 39d846f..6667454 100644 (file)
@@ -34,6 +34,9 @@
  * Client interface to pmap rpc service.
  */
 
+#define clnt_perror __clnt_perror
+#define clntudp_bufcreate __clntudp_bufcreate
+
 #define __FORCE_GLIBC
 #include <features.h>
 
@@ -64,14 +67,14 @@ __get_myaddress (struct sockaddr_in *addr)
 
   if ((s = socket (AF_INET, SOCK_DGRAM, 0)) < 0)
     {
-      perror ("__get_myaddress: socket");
+      __perror ("__get_myaddress: socket");
       exit (1);
     }
   ifc.ifc_len = sizeof (buf);
   ifc.ifc_buf = buf;
   if (ioctl (s, SIOCGIFCONF, (char *) &ifc) < 0)
     {
-      perror (_("__get_myaddress: ioctl (get interface configuration)"));
+      __perror (_("__get_myaddress: ioctl (get interface configuration)"));
       exit (1);
     }
 
@@ -82,7 +85,7 @@ __get_myaddress (struct sockaddr_in *addr)
       ifreq = *ifr;
       if (ioctl (s, SIOCGIFFLAGS, (char *) &ifreq) < 0)
         {
-          perror ("__get_myaddress: ioctl");
+          __perror ("__get_myaddress: ioctl");
           exit (1);
         }
       if ((ifreq.ifr_flags & IFF_UP) && (ifr->ifr_addr.sa_family == AF_INET)
@@ -148,8 +151,8 @@ strong_alias(__pmap_set,pmap_set)
  * Remove the mapping between program,version and port.
  * Calls the pmap service remotely to do the un-mapping.
  */
-bool_t
-pmap_unset (u_long program, u_long version)
+bool_t attribute_hidden
+__pmap_unset (u_long program, u_long version)
 {
   struct sockaddr_in myaddress;
   int socket = -1;
@@ -172,3 +175,4 @@ pmap_unset (u_long program, u_long version)
   /* (void)__close(socket); CLNT_DESTROY already closed it */
   return rslt;
 }
+strong_alias(__pmap_unset,pmap_unset)
index 4ec2d40..84736e0 100644 (file)
@@ -39,6 +39,9 @@ static char sccsid[] = "@(#)pmap_getmaps.c 1.10 87/08/11 Copyr 1984 Sun Micro";
  * Copyright (C) 1984, Sun Microsystems, Inc.
  */
 
+#define clnt_perror __clnt_perror
+#define clnttcp_create __clnttcp_create
+
 #include <rpc/rpc.h>
 #include <rpc/pmap_prot.h>
 #include <rpc/pmap_clnt.h>
index 7949274..1981cfa 100644 (file)
@@ -38,6 +38,8 @@ static char sccsid[] = "@(#)pmap_getport.c 1.9 87/08/11 Copyr 1984 Sun Micro";
  * Copyright (C) 1984, Sun Microsystems, Inc.
  */
 
+#define clntudp_bufcreate __clntudp_bufcreate
+
 #include <rpc/rpc.h>
 #include <rpc/pmap_prot.h>
 #include <rpc/pmap_clnt.h>
index 5a78ba2..d612bec 100644 (file)
@@ -42,6 +42,7 @@ static char sccsid[] = "@(#)pmap_rmt.c 1.21 87/08/27 Copyr 1984 Sun Micro";
 #define authunix_create_default __authunix_create_default
 #define xdrmem_create __xdrmem_create
 #define inet_makeaddr __inet_makeaddr
+#define clntudp_create __clntudp_create
 
 #define __FORCE_GLIBC
 #include <features.h>
@@ -189,7 +190,7 @@ getbroadcastnets (struct in_addr *addrs, int sock, char *buf)
   ifc.ifc_buf = buf;
   if (ioctl (sock, SIOCGIFCONF, (char *) &ifc) < 0)
     {
-      perror (_("broadcast: ioctl (get interface configuration)"));
+      __perror (_("broadcast: ioctl (get interface configuration)"));
       return (0);
     }
   ifr = ifc.ifc_req;
@@ -198,7 +199,7 @@ getbroadcastnets (struct in_addr *addrs, int sock, char *buf)
       ifreq = *ifr;
       if (ioctl (sock, SIOCGIFFLAGS, (char *) &ifreq) < 0)
        {
-         perror (_("broadcast: ioctl (get interface flags)"));
+         __perror (_("broadcast: ioctl (get interface flags)"));
          continue;
        }
       if ((ifreq.ifr_flags & IFF_BROADCAST) &&
@@ -268,14 +269,14 @@ clnt_broadcast (prog, vers, proc, xargs, argsp, xresults, resultsp, eachresult)
    */
   if ((sock = socket (AF_INET, SOCK_DGRAM, IPPROTO_UDP)) < 0)
     {
-      perror (_("Cannot create socket for broadcast rpc"));
+      __perror (_("Cannot create socket for broadcast rpc"));
       stat = RPC_CANTSEND;
       goto done_broad;
     }
 #ifdef SO_BROADCAST
   if (setsockopt (sock, SOL_SOCKET, SO_BROADCAST, &on, sizeof (on)) < 0)
     {
-      perror (_("Cannot set socket option SO_BROADCAST"));
+      __perror (_("Cannot set socket option SO_BROADCAST"));
       stat = RPC_CANTSEND;
       goto done_broad;
     }
@@ -326,7 +327,7 @@ clnt_broadcast (prog, vers, proc, xargs, argsp, xresults, resultsp, eachresult)
                      (struct sockaddr *) &baddr,
                      sizeof (struct sockaddr)) != outlen)
            {
-             perror (_("Cannot send broadcast packet"));
+             __perror (_("Cannot send broadcast packet"));
              stat = RPC_CANTSEND;
              goto done_broad;
            }
@@ -351,7 +352,7 @@ clnt_broadcast (prog, vers, proc, xargs, argsp, xresults, resultsp, eachresult)
        case -1:                /* some kind of error */
          if (errno == EINTR)
            goto recv_again;
-         perror (_("Broadcast poll problem"));
+         __perror (_("Broadcast poll problem"));
          stat = RPC_CANTRECV;
          goto done_broad;
 
@@ -364,7 +365,7 @@ clnt_broadcast (prog, vers, proc, xargs, argsp, xresults, resultsp, eachresult)
        {
          if (errno == EINTR)
            goto try_again;
-         perror (_("Cannot receive reply to broadcast"));
+         __perror (_("Cannot receive reply to broadcast"));
          stat = RPC_CANTRECV;
          goto done_broad;
        }
index 43fe44c..bd95a7e 100644 (file)
@@ -173,7 +173,7 @@ int rcmd(ahost, rport, locuser, remuser, cmd, fd2p)
                        (void)fprintf(stderr, "connect to address %s: ",
                            inet_ntoa(sin.sin_addr));
                        __set_errno (oerrno);
-                       perror(0);
+                       __perror(0);
                        hp->h_addr_list++;
                        bcopy(hp->h_addr_list[0], &sin.sin_addr,
                              MIN (sizeof (sin.sin_addr), hp->h_length));
index b93cf76..e5e8d42 100644 (file)
@@ -87,7 +87,7 @@ __rexec_af(char **ahost, int rport, const char *name, const char *pass, const ch
 retry:
        s = socket(res0->ai_family, res0->ai_socktype, 0);
        if (s < 0) {
-               perror("rexec: socket");
+               __perror("rexec: socket");
                return (-1);
        }
        if (connect(s, res0->ai_addr, res0->ai_addrlen) < 0) {
@@ -97,7 +97,7 @@ retry:
                        timo *= 2;
                        goto retry;
                }
-               perror(res0->ai_canonname);
+               __perror(res0->ai_canonname);
                return (-1);
        }
        if (fd2p == 0) {
@@ -115,7 +115,7 @@ retry:
                listen(s2, 1);
                sa2len = sizeof (sa2);
                if (getsockname(s2, (struct sockaddr *)&sa2, &sa2len) < 0) {
-                       perror("getsockname");
+                       __perror("getsockname");
                        (void) __close(s2);
                        goto bad;
                } else if (sa2len != SA_LEN((struct sockaddr *)&sa2)) {
@@ -134,7 +134,7 @@ retry:
                  s3 = accept(s2, (struct sockaddr *)&from, &len);
                  __close(s2);
                  if (s3 < 0) {
-                       perror("accept");
+                       __perror("accept");
                        port = 0;
                        goto bad;
                  }
@@ -154,7 +154,7 @@ retry:
          free ((char *) pass);
 
        if (__read(s, &c, 1) != 1) {
-               perror(*ahost);
+               __perror(*ahost);
                goto bad;
        }
        if (c != 0) {
index c64ddf8..bbe7b57 100644 (file)
@@ -44,6 +44,9 @@ static char sccsid[] = "@(#)rpc_prot.c 1.36 87/08/11 Copyr 1984 Sun Micro";
  * routines are also in this program.
  */
 
+#define xdr_bytes __xdr_bytes
+#define xdr_union __xdr_union
+
 #define __FORCE_GLIBC
 #include <features.h>
 
index faccab5..727abcb 100644 (file)
@@ -37,6 +37,7 @@
  */
 
 #define pmap_set __pmap_set
+#define pmap_unset __pmap_unset
 
 #define _authenticate _authenticate_internal
 #define _rpc_dtablesize _rpc_dtablesize_internal
@@ -174,8 +175,8 @@ done:
 /* Add a service program to the callout list.
    The dispatch routine will be called when a rpc request for this
    program number comes in. */
-bool_t
-svc_register (SVCXPRT * xprt, rpcprog_t prog, rpcvers_t vers,
+bool_t attribute_hidden
+__svc_register (SVCXPRT * xprt, rpcprog_t prog, rpcvers_t vers,
              void (*dispatch) (struct svc_req *, SVCXPRT *),
              rpcproc_t protocol)
 {
@@ -205,10 +206,11 @@ pmap_it:
 
   return TRUE;
 }
+strong_alias(__svc_register,svc_register)
 
 /* Remove a service program from the callout list. */
-void
-svc_unregister (rpcprog_t prog, rpcvers_t vers)
+void attribute_hidden
+__svc_unregister (rpcprog_t prog, rpcvers_t vers)
 {
   struct svc_callout *prev;
   register struct svc_callout *s;
@@ -226,6 +228,7 @@ svc_unregister (rpcprog_t prog, rpcvers_t vers)
   /* now unregister the information with the local binder service */
   pmap_unset (prog, vers);
 }
+strong_alias(__svc_unregister,svc_unregister)
 
 /* ******************* REPLY GENERATION ROUTINES  ************ */
 
@@ -260,8 +263,8 @@ svcerr_noproc (register SVCXPRT *xprt)
 }
 
 /* Can't decode args error reply */
-void
-svcerr_decode (register SVCXPRT *xprt)
+void attribute_hidden
+__svcerr_decode (register SVCXPRT *xprt)
 {
   struct rpc_msg rply;
 
@@ -271,6 +274,7 @@ svcerr_decode (register SVCXPRT *xprt)
   rply.acpted_rply.ar_stat = GARBAGE_ARGS;
   SVC_REPLY (xprt, &rply);
 }
+strong_alias(__svcerr_decode,svcerr_decode)
 
 /* Some system error */
 void
@@ -307,8 +311,8 @@ svcerr_weakauth (SVCXPRT *xprt)
 }
 
 /* Program unavailable error reply */
-void
-svcerr_noprog (register SVCXPRT *xprt)
+void attribute_hidden
+__svcerr_noprog (register SVCXPRT *xprt)
 {
   struct rpc_msg rply;
 
@@ -318,10 +322,11 @@ svcerr_noprog (register SVCXPRT *xprt)
   rply.acpted_rply.ar_stat = PROG_UNAVAIL;
   SVC_REPLY (xprt, &rply);
 }
+strong_alias(__svcerr_noprog,svcerr_noprog)
 
 /* Program version mismatch error reply */
-void
-svcerr_progvers (register SVCXPRT *xprt, rpcvers_t low_vers,
+void attribute_hidden
+__svcerr_progvers (register SVCXPRT *xprt, rpcvers_t low_vers,
                 rpcvers_t high_vers)
 {
   struct rpc_msg rply;
@@ -334,6 +339,7 @@ svcerr_progvers (register SVCXPRT *xprt, rpcvers_t low_vers,
   rply.acpted_rply.ar_vers.high = high_vers;
   SVC_REPLY (xprt, &rply);
 }
+strong_alias(__svcerr_progvers,svcerr_progvers)
 
 /* ******************* SERVER INPUT STUFF ******************* */
 
@@ -353,58 +359,8 @@ svcerr_progvers (register SVCXPRT *xprt, rpcvers_t low_vers,
  * is mallocated in kernel land.
  */
 
-void
-svc_getreq (int rdfds)
-{
-  fd_set readfds;
-
-  FD_ZERO (&readfds);
-  readfds.fds_bits[0] = rdfds;
-  svc_getreqset (&readfds);
-}
-
-void
-svc_getreqset (fd_set *readfds)
-{
-  register u_int32_t mask;
-  register u_int32_t *maskp;
-  register int setsize;
-  register int sock;
-  register int bit;
-
-  setsize = _rpc_dtablesize ();
-  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);
-}
-
-void
-svc_getreq_poll (struct pollfd *pfdp, int pollretval)
-{
-  register int i;
-  register int fds_found;
-
-  for (i = fds_found = 0; i < svc_max_pollfd && fds_found < pollretval; ++i)
-    {
-      register struct pollfd *p = &pfdp[i];
-
-      if (p->fd != -1 && p->revents)
-       {
-         /* fd has input waiting */
-         ++fds_found;
-
-         if (p->revents & POLLNVAL)
-           xprt_unregister (xports[p->fd]);
-         else
-           svc_getreq_common (p->fd);
-       }
-    }
-}
-
-
-void
-svc_getreq_common (const int fd)
+void attribute_hidden
+__svc_getreq_common (const int fd)
 {
   enum xprt_stat stat;
   struct rpc_msg msg;
@@ -478,9 +434,9 @@ svc_getreq_common (const int fd)
          /* if we got here, the program or version
             is not served ... */
          if (prog_found)
-           svcerr_progvers (xprt, low_vers, high_vers);
+           __svcerr_progvers (xprt, low_vers, high_vers);
          else
-           svcerr_noprog (xprt);
+           __svcerr_noprog (xprt);
          /* Fall through to ... */
        }
     call_done:
@@ -492,6 +448,59 @@ svc_getreq_common (const int fd)
     }
   while (stat == XPRT_MOREREQS);
 }
+strong_alias(__svc_getreq_common,svc_getreq_common)
+
+void attribute_hidden
+__svc_getreqset (fd_set *readfds)
+{
+  register u_int32_t mask;
+  register u_int32_t *maskp;
+  register int setsize;
+  register int sock;
+  register int bit;
+
+  setsize = _rpc_dtablesize ();
+  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);
+}
+strong_alias(__svc_getreqset,svc_getreqset)
+
+void attribute_hidden
+__svc_getreq (int rdfds)
+{
+  fd_set readfds;
+
+  FD_ZERO (&readfds);
+  readfds.fds_bits[0] = rdfds;
+  __svc_getreqset (&readfds);
+}
+strong_alias(__svc_getreq,svc_getreq)
+
+void attribute_hidden
+__svc_getreq_poll (struct pollfd *pfdp, int pollretval)
+{
+  register int i;
+  register int fds_found;
+
+  for (i = fds_found = 0; i < svc_max_pollfd && fds_found < pollretval; ++i)
+    {
+      register struct pollfd *p = &pfdp[i];
+
+      if (p->fd != -1 && p->revents)
+       {
+         /* fd has input waiting */
+         ++fds_found;
+
+         if (p->revents & POLLNVAL)
+           xprt_unregister (xports[p->fd]);
+         else
+           __svc_getreq_common (p->fd);
+       }
+    }
+}
+strong_alias(__svc_getreq_poll,svc_getreq_poll)
 
 #ifdef __UCLIBC_HAS_THREADS__
 
@@ -500,7 +509,7 @@ void attribute_hidden __rpc_thread_svc_cleanup (void)
   struct svc_callout *svcp;
 
   while ((svcp = svc_head) != NULL)
-    svc_unregister (svcp->sc_prog, svcp->sc_vers);
+    __svc_unregister (svcp->sc_prog, svcp->sc_vers);
 }
 
 #endif /* __UCLIBC_HAS_THREADS__ */
index c0d3b34..b463208 100644 (file)
@@ -31,6 +31,8 @@
  * Wait for input, call server program.
  */
 
+#define svc_getreq_poll __svc_getreq_poll
+
 /* used by svc_[max_]pollfd */
 #define __rpc_thread_svc_pollfd __rpc_thread_svc_pollfd_internal
 #define __rpc_thread_svc_max_pollfd __rpc_thread_svc_max_pollfd_internal
@@ -80,7 +82,7 @@ svc_run (void)
          free (my_pollfd);
          if (errno == EINTR)
            continue;
-         perror (_("svc_run: - poll failed"));
+         __perror (_("svc_run: - poll failed"));
          return;
        case 0:
          free (my_pollfd);
index e9a43b9..e0509be 100644 (file)
@@ -39,6 +39,10 @@ static char sccsid[] = "@(#)svc_simple.c 1.18 87/08/11 Copyr 1984 Sun Micro";
  */
 
 #define svc_sendreply __svc_sendreply
+#define svc_register __svc_register
+#define svcerr_decode __svcerr_decode
+#define svcudp_create __svcudp_create
+#define pmap_unset __pmap_unset
 
 #define __FORCE_GLIBC
 #define _GNU_SOURCE
index 20deb87..58c8ed1 100644 (file)
@@ -159,7 +159,7 @@ svctcp_create (int sock, u_int sendsize, u_int recvsize)
     {
       if ((sock = socket (AF_INET, SOCK_STREAM, IPPROTO_TCP)) < 0)
        {
-         perror (_("svc_tcp.c - tcp socket creation problem"));
+         __perror (_("svc_tcp.c - tcp socket creation problem"));
          return (SVCXPRT *) NULL;
        }
       madesock = TRUE;
@@ -174,7 +174,7 @@ svctcp_create (int sock, u_int sendsize, u_int recvsize)
   if ((getsockname (sock, (struct sockaddr *) &addr, &len) != 0) ||
       (listen (sock, 2) != 0))
     {
-      perror (_("svc_tcp.c - cannot getsockname or listen"));
+      __perror (_("svc_tcp.c - cannot getsockname or listen"));
       if (madesock)
        (void) __close (sock);
       return (SVCXPRT *) NULL;
index ab6f96e..019e402 100644 (file)
@@ -115,10 +115,8 @@ struct svcudp_data
  * see (svc.h, xprt_register).
  * The routines returns NULL if a problem occurred.
  */
-SVCXPRT *
-svcudp_bufcreate (sock, sendsz, recvsz)
-     int sock;
-     u_int sendsz, recvsz;
+SVCXPRT attribute_hidden *
+__svcudp_bufcreate (int sock, u_int sendsz, u_int recvsz)
 {
   bool_t madesock = FALSE;
   SVCXPRT *xprt;
@@ -132,7 +130,7 @@ svcudp_bufcreate (sock, sendsz, recvsz)
     {
       if ((sock = socket (AF_INET, SOCK_DGRAM, IPPROTO_UDP)) < 0)
        {
-         perror (_("svcudp_create: socket creation problem"));
+         __perror (_("svcudp_create: socket creation problem"));
          return (SVCXPRT *) NULL;
        }
       madesock = TRUE;
@@ -146,7 +144,7 @@ svcudp_bufcreate (sock, sendsz, recvsz)
     }
   if (getsockname (sock, (struct sockaddr *) &addr, &len) != 0)
     {
-      perror (_("svcudp_create - cannot getsockname"));
+      __perror (_("svcudp_create - cannot getsockname"));
       if (madesock)
        (void) __close (sock);
       return (SVCXPRT *) NULL;
@@ -206,14 +204,15 @@ svcudp_bufcreate (sock, sendsz, recvsz)
   xprt_register (xprt);
   return xprt;
 }
+strong_alias(__svcudp_bufcreate,svcudp_bufcreate)
 
-SVCXPRT *
-svcudp_create (sock)
-     int sock;
+SVCXPRT attribute_hidden *
+__svcudp_create (int sock)
 {
 
-  return svcudp_bufcreate (sock, UDPMSGSIZE, UDPMSGSIZE);
+  return __svcudp_bufcreate (sock, UDPMSGSIZE, UDPMSGSIZE);
 }
+strong_alias(__svcudp_create,svcudp_create)
 
 static enum xprt_stat
 svcudp_stat (xprt)
index bc4cb2c..0b7d964 100644 (file)
@@ -154,7 +154,7 @@ svcunix_create (int sock, u_int sendsize, u_int recvsize, char *path)
     {
       if ((sock = socket (AF_UNIX, SOCK_STREAM, 0)) < 0)
        {
-         perror (_("svc_unix.c - AF_UNIX socket creation problem"));
+         __perror (_("svc_unix.c - AF_UNIX socket creation problem"));
          return (SVCXPRT *) NULL;
        }
       madesock = TRUE;
@@ -170,7 +170,7 @@ svcunix_create (int sock, u_int sendsize, u_int recvsize, char *path)
   if (getsockname (sock, (struct sockaddr *) &addr, &len) != 0
       || listen (sock, 2) != 0)
     {
-      perror (_("svc_unix.c - cannot getsockname or listen"));
+      __perror (_("svc_unix.c - cannot getsockname or listen"));
       if (madesock)
        __close (sock);
       return (SVCXPRT *) NULL;
index 46e2144..c608cd2 100644 (file)
@@ -519,12 +519,8 @@ xdr_opaque (XDR *xdrs, caddr_t cp, u_int cnt)
  * *cpp is a pointer to the bytes, *sizep is the count.
  * If *cpp is NULL maxsize bytes are allocated
  */
-bool_t
-xdr_bytes (xdrs, cpp, sizep, maxsize)
-     XDR *xdrs;
-     char **cpp;
-     u_int *sizep;
-     u_int maxsize;
+bool_t attribute_hidden
+__xdr_bytes (XDR *xdrs, char **cpp, u_int *sizep, u_int maxsize)
 {
   char *sp = *cpp;     /* sp is the actual string pointer */
   u_int nodesize;
@@ -581,6 +577,7 @@ xdr_bytes (xdrs, cpp, sizep, maxsize)
     }
   return FALSE;
 }
+strong_alias(__xdr_bytes,xdr_bytes)
 
 /*
  * Implemented here due to commonality of the object.
@@ -591,7 +588,7 @@ xdr_netobj (xdrs, np)
      struct netobj *np;
 {
 
-  return xdr_bytes (xdrs, &np->n_bytes, &np->n_len, MAX_NETOBJ_SZ);
+  return __xdr_bytes (xdrs, &np->n_bytes, &np->n_len, MAX_NETOBJ_SZ);
 }
 
 /*
@@ -605,13 +602,8 @@ xdr_netobj (xdrs, np)
  * routine may be called.
  * If there is no specific or default routine an error is returned.
  */
-bool_t
-xdr_union (xdrs, dscmp, unp, choices, dfault)
-     XDR *xdrs;
-     enum_t *dscmp;            /* enum to decide which arm to work on */
-     char *unp;                        /* the union itself */
-     const struct xdr_discrim *choices;        /* [value, xdr proc] for each arm */
-     xdrproc_t dfault;         /* default xdr routine */
+bool_t attribute_hidden
+__xdr_union (XDR *xdrs, enum_t *dscmp, char *unp, const struct xdr_discrim *choices, xdrproc_t dfault)
 {
   enum_t dscm;
 
@@ -640,7 +632,7 @@ xdr_union (xdrs, dscmp, unp, choices, dfault)
   return ((dfault == NULL_xdrproc_t) ? FALSE :
          (*dfault) (xdrs, unp, LASTUNSIGNED));
 }
-
+strong_alias(__xdr_union,xdr_union)
 
 /*
  * Non-portable xdr primitives.
index cf3a5a2..01bb211 100644 (file)
@@ -4,42 +4,42 @@
 #include <regex.h>
 
 /* Document internal interfaces.  */
-extern reg_syntax_t __re_set_syntax (reg_syntax_t syntax);
+extern reg_syntax_t __re_set_syntax (reg_syntax_t syntax) attribute_hidden;
 
 extern const char *__re_compile_pattern (const char *pattern, size_t length,
-                                        struct re_pattern_buffer *buffer);
+                                        struct re_pattern_buffer *buffer) attribute_hidden;
 
-extern int __re_compile_fastmap (struct re_pattern_buffer *buffer);
+extern int __re_compile_fastmap (struct re_pattern_buffer *buffer) attribute_hidden;
 
 extern int __re_search (struct re_pattern_buffer *buffer, const char *string,
                        int length, int start, int range,
-                       struct re_registers *regs);
+                       struct re_registers *regs) attribute_hidden;
 
 extern int __re_search_2
   (struct re_pattern_buffer *buffer, const char *string1,
    int length1, const char *string2, int length2,
-   int start, int range, struct re_registers *regs, int stop);
+   int start, int range, struct re_registers *regs, int stop) attribute_hidden;
 
 extern int __re_match
   (struct re_pattern_buffer *buffer, const char *string,
-   int length, int start, struct re_registers *regs);
+   int length, int start, struct re_registers *regs) attribute_hidden;
 
 extern int __re_match_2
   (struct re_pattern_buffer *buffer, const char *string1,
    int length1, const char *string2, int length2,
-   int start, struct re_registers *regs, int stop);
+   int start, struct re_registers *regs, int stop) attribute_hidden;
 
 extern void __re_set_registers
   (struct re_pattern_buffer *buffer, struct re_registers *regs,
-   unsigned num_regs, regoff_t *starts, regoff_t *ends);
+   unsigned num_regs, regoff_t *starts, regoff_t *ends) attribute_hidden;
 
-extern int __regcomp (regex_t *__preg, const char *__pattern, int __cflags);
+extern int __regcomp (regex_t *__preg, const char *__pattern, int __cflags) attribute_hidden;
 
 extern int __regexec (const regex_t *__preg, const char *__string,
-                     size_t __nmatch, regmatch_t __pmatch[], int __eflags);
+                     size_t __nmatch, regmatch_t __pmatch[], int __eflags) attribute_hidden;
 
 extern size_t __regerror (int __errcode, const regex_t *__preg,
-                         char *__errbuf, size_t __errbuf_size);
+                         char *__errbuf, size_t __errbuf_size) attribute_hidden;
 
-extern void __regfree (regex_t *__preg);
+extern void __regfree (regex_t *__preg) attribute_hidden;
 #endif
index 789e78b..0eefa85 100644 (file)
 #include <stdint.h>
 #ifdef __UCLIBC_HAS_WCHAR__
 #define RE_ENABLE_I18N
+#define wcscoll __wcscoll
+#define mbrtowc __mbrtowc
+#define iswctype __iswctype
+#define iswlower __iswlower
+#define iswalnum __iswalnum
 #include <wchar.h>
 #include <wctype.h>
 
+/* attribute_hidden produces text relocation */
+//extern int __wcscoll (__const wchar_t *__s1, __const wchar_t *__s2) __THROW /*attribute_hidden*/;
+
 extern size_t __wcrtomb (char *__restrict __s, wchar_t __wc,
                       mbstate_t *__restrict __ps) attribute_hidden;
 
@@ -42,7 +50,7 @@ extern wint_t __btowc (int __c) attribute_hidden;
 
 extern wctype_t __wctype (__const char *__property) attribute_hidden;
 
-extern int __iswctype (wint_t __wc, wctype_t __desc) /*attribute_hidden*/;
+//extern int __iswctype (wint_t __wc, wctype_t __desc) /*attribute_hidden*/;
 #endif
 
 #define memcmp __memcmp
@@ -55,10 +63,9 @@ extern int __iswctype (wint_t __wc, wctype_t __desc) /*attribute_hidden*/;
 #define strncpy __strncpy
 #define getenv __getenv
 #define strcasecmp __strcasecmp
-#define wcscoll __wcscoll
 
 extern void *__mempcpy (void *__restrict __dest,
-                       __const void *__restrict __src, size_t __n) /*attribute_hidden*/;
+                       __const void *__restrict __src, size_t __n) attribute_hidden;
 #endif
 
 /* Make sure noone compiles this code with a C++ compiler.  */
index 486e29c..ab471ee 100644 (file)
 #define wcslen __wcslen
 /* for some reason this does not work */
 #define memcpy __memcpy
+#define mbrtowc __mbrtowc
 #define wcscoll __wcscoll
+#define iswctype __iswctype
+#define iswalnum __iswalnum
 
 /* To exclude some unwanted junk.... */
 #undef _LIBC
index c256400..77d7572 100644 (file)
@@ -48,7 +48,7 @@ extern wctype_t __wctype (__const char *__property) attribute_hidden;
 #include <xlocale.h>
 extern wint_t __towlower_l(wint_t __wc, __locale_t __locale) __THROW;
 extern wint_t __towupper_l(wint_t __wc, __locale_t __locale) __THROW;
-extern int __iswctype_l(wint_t __wc, wctype_t __desc, __locale_t __locale) __THROW;
+//extern int __iswctype_l(wint_t __wc, wctype_t __desc, __locale_t __locale) __THROW attribute_hidden;
 extern wint_t __towctrans_l(wint_t __wc, wctrans_t __desc, __locale_t __locale) __THROW;
 #endif /* __UCLIBC_HAS_XLOCALE__ */
 
@@ -181,10 +181,10 @@ enum {
 #ifdef __UCLIBC_DO_XLOCALE
 
 extern int __iswctype_l (wint_t __wc, wctype_t __desc, __locale_t __locale)
-     __THROW;
+     __THROW attribute_hidden;
 
 #define ISW_FUNC_BODY(NAME) \
-int __PASTE3(__isw,NAME,_l) (wint_t wc, __locale_t l) \
+int attribute_hidden __PASTE3(__isw,NAME,_l) (wint_t wc, __locale_t l) \
 { \
        return __iswctype_l(wc, __PASTE2(_CTYPE_is,NAME), l); \
 } \
@@ -192,13 +192,14 @@ weak_alias(__PASTE3(__isw,NAME,_l), __PASTE3(isw,NAME,_l))
 
 #else  /* __UCLIBC_DO_XLOCALE */
 
-extern int __iswctype (wint_t __wc, wctype_t __desc) __THROW;
+extern int __iswctype (wint_t __wc, wctype_t __desc) __THROW attribute_hidden;
 
 #define ISW_FUNC_BODY(NAME) \
-int __PASTE2(isw,NAME) (wint_t wc) \
+int attribute_hidden __PASTE2(__isw,NAME) (wint_t wc) \
 { \
        return __iswctype(wc, __PASTE2(_CTYPE_is,NAME)); \
-}
+} \
+weak_alias(__PASTE2(__isw,NAME), __PASTE2(isw,NAME))
 
 #endif /* __UCLIBC_DO_XLOCALE */
 /**********************************************************************/
@@ -514,7 +515,7 @@ strong_alias(__wctype,wctype)
 #warning REMINDER: Currently wctype_l simply calls wctype.
 #endif /* __UCLIBC_MJN3_ONLY__ */
 
-wctype_t __wctype_l (const char *property, __locale_t locale)
+wctype_t attribute_hidden __wctype_l (const char *property, __locale_t locale)
 {
        return __wctype(property);
 }
@@ -568,7 +569,7 @@ static const unsigned short int desc2flag[] = {
 
 #ifdef __UCLIBC_HAS_CTYPE_TABLES__
 
-int __iswctype(wint_t wc, wctype_t desc)
+int attribute_hidden __iswctype(wint_t wc, wctype_t desc)
 {
        /* Note... wctype_t is unsigned. */
 
@@ -582,7 +583,7 @@ int __iswctype(wint_t wc, wctype_t desc)
 
 #else  /* __UCLIBC_HAS_CTYPE_TABLES__ */
 
-int __iswctype(wint_t wc, wctype_t desc)
+int attribute_hidden __iswctype(wint_t wc, wctype_t desc)
 {
        /* This is lame, but it is here just to get it working for now. */
 
@@ -641,14 +642,14 @@ int __iswctype(wint_t wc, wctype_t desc)
 
 #if defined(L_iswctype) && defined(__UCLIBC_HAS_XLOCALE__)
 
-int __iswctype(wint_t wc, wctype_t desc)
+int attribute_hidden __iswctype(wint_t wc, wctype_t desc)
 {
        return __iswctype_l(wc, desc, __UCLIBC_CURLOCALE);
 }
 
 #else  /* defined(L_iswctype) && defined(__UCLIBC_HAS_XLOCALE__) */
 
-int ISWCTYPE(wint_t wc, wctype_t desc)
+int attribute_hidden ISWCTYPE(wint_t wc, wctype_t desc)
 {
        unsigned int sc, n, i0, i1;
        unsigned char d = __CTYPE_unclassified;
index 9cdeaf1..7cac06f 100644 (file)
@@ -28,6 +28,7 @@
 #define kill __kill
 #define getuid __getuid
 #define execve __execve
+#define dup2 __dup2
 
 #define _GNU_SOURCE
 #include <sys/cdefs.h>
index 26a0ceb..d69ccd5 100644 (file)
@@ -11,7 +11,7 @@
 #warning CONSIDER: Increase buffer size for error message (non-%m case)?
 #endif
 
-void perror(register const char *s)
+void attribute_hidden __perror(register const char *s)
 {
        /* If the program is calling perror, it's a safe bet that printf and
         * friends are used as well.  It is also possible that the calling
@@ -34,3 +34,4 @@ void perror(register const char *s)
        }
 #endif
 }
+strong_alias(__perror,perror)
index 2e9985a..00c2d7b 100644 (file)
@@ -16,6 +16,7 @@
 
 #define waitpid __waitpid
 #define execl __execl
+#define dup2 __dup2
 
 #include <stdio.h>
 #include <stdlib.h>
index 19484d5..4db939f 100644 (file)
@@ -47,6 +47,7 @@
 #define mbsrtowcs __mbsrtowcs
 #define mbrtowc __mbrtowc
 #define ungetc __ungetc
+#define iswspace __iswspace
 
 #define _ISOC99_SOURCE                 /* for LLONG_MAX primarily... */
 #define _GNU_SOURCE
index e3f389a..d835038 100644 (file)
@@ -93,6 +93,7 @@
 #define wcsnlen __wcsnlen
 #define wcsrtombs __wcsrtombs
 #define mbsrtowcs __mbsrtowcs
+#define btowc __btowc
 
 #define _ISOC99_SOURCE                 /* for ULLONG primarily... */
 #define _GNU_SOURCE
index 7266ba4..2a018b4 100644 (file)
@@ -13,6 +13,8 @@
  * GNU Library Public License for more details.
  */
 
+#define readlink __readlink
+
 #ifdef HAVE_CONFIG_H
 #include <config.h>
 #endif
index 04c85d3..0c78c4c 100644 (file)
@@ -36,6 +36,8 @@
 #define mbsrtowcs __mbsrtowcs
 #define mbrtowc __mbrtowc
 #define mbrlen __mbrlen
+#define iswspace __iswspace
+#define iswspace_l __iswspace_l
 
 #define _ISOC99_SOURCE                 /* for ULLONG primarily... */
 #define _GNU_SOURCE
index 47f809f..1468877 100644 (file)
@@ -95,6 +95,9 @@
 
 /**********************************************************************/
 
+#define iswspace __iswspace
+#define iswspace_l __iswspace_l
+
 #define _ISOC99_SOURCE 1
 #define _GNU_SOURCE
 #include <stdlib.h>
index 1f1c4df..bf451a4 100644 (file)
@@ -22,6 +22,7 @@
 #define getuid __getuid
 #define setrlimit __setrlimit
 #define waitpid __waitpid
+#define dup2 __dup2
 
 #include <assert.h>
 #include <errno.h>
index 654ca30..5cdbe6f 100644 (file)
@@ -13,7 +13,7 @@ strong_alias(__strcmp, strcmp)
 
 #ifdef __LOCALE_C_ONLY
 weak_alias(__strcmp, __strcoll)
-strong_alias(__strcoll, strcoll)
+weak_alias(__strcmp, strcoll)
 #endif
 
 #undef L_strcmp
index 5501a4d..5051481 100644 (file)
@@ -14,7 +14,7 @@ strong_alias(__wcscmp, wcscmp)
 
 #ifdef __LOCALE_C_ONLY
 weak_alias(__wcscmp, __wcscoll)
-strong_alias(__wcscoll, wcscoll)
+weak_alias(__wcscmp, wcscoll)
 #endif
 
 #undef L_strcmp
index f887d54..d69d475 100644 (file)
@@ -33,6 +33,8 @@
    the area affected (this is a kernel limitation).  So we now just
    enable all the ports all of the time.  */
 
+#define readlink __readlink
+
 #include <errno.h>
 #include <fcntl.h>
 #include <stdio.h>
index a5a832f..71164aa 100644 (file)
@@ -9,4 +9,6 @@
 
 #include "syscalls.h"
 #include <unistd.h>
-_syscall2(int, dup2, int, oldfd, int, newfd);
+#define __NR___dup2 __NR_dup2
+attribute_hidden _syscall2(int, __dup2, int, oldfd, int, newfd);
+strong_alias(__dup2,dup2)
index 8ebb5ea..45db1a6 100644 (file)
@@ -9,4 +9,6 @@
 
 #include "syscalls.h"
 #include <unistd.h>
-_syscall3(int, readlink, const char *, path, char *, buf, size_t, bufsiz);
+#define __NR___readlink __NR_readlink
+attribute_hidden _syscall3(int, __readlink, const char *, path, char *, buf, size_t, bufsiz);
+strong_alias(__readlink,readlink)
index 3c54ad2..a1dfabf 100644 (file)
@@ -23,6 +23,8 @@
  * Original copyright notice is retained at the end of this file.
  */
 
+#define dup2 __dup2
+
 #include <stdio.h>
 #include <features.h>
 #include <fcntl.h>