OSDN Git Service

Last portion of libc_hidden_proto removal.
[uclinux-h8/uClibc.git] / libc / inet / rpc / svc_simple.c
index 0b77304..d50f014 100644 (file)
@@ -27,7 +27,7 @@
  * 2550 Garcia Avenue
  * Mountain View, California  94043
  */
-#if !defined(lint) && defined(SCCSIDS)
+#if 0
 static char sccsid[] = "@(#)svc_simple.c 1.18 87/08/11 Copyr 1984 Sun Micro";
 #endif
 
@@ -37,14 +37,14 @@ static char sccsid[] = "@(#)svc_simple.c 1.18 87/08/11 Copyr 1984 Sun Micro";
  *
  * Copyright (C) 1984, Sun Microsystems, Inc.
  */
+
 #define __FORCE_GLIBC
-#define _GNU_SOURCE
 #include <features.h>
 
 #include <stdio.h>
 #include <string.h>
 #include <unistd.h>
-#include <rpc/rpc.h>
+#include "rpc_private.h"
 #include <rpc/pmap_clnt.h>
 #include <sys/socket.h>
 #include <netdb.h>
@@ -55,6 +55,19 @@ static char sccsid[] = "@(#)svc_simple.c 1.18 87/08/11 Copyr 1984 Sun Micro";
 # define fputs(s, f) _IO_fputs (s, f)
 #endif
 
+/* Experimentally off - libc_hidden_proto(strdup) */
+/* Experimentally off - libc_hidden_proto(memset) */
+/* libc_hidden_proto(asprintf) */
+/* libc_hidden_proto(fputs) */
+/* libc_hidden_proto(write) */
+/* libc_hidden_proto(exit) */
+/* libc_hidden_proto(svc_sendreply) */
+/* libc_hidden_proto(svc_register) */
+/* libc_hidden_proto(svcerr_decode) */
+/* libc_hidden_proto(svcudp_create) */
+/* libc_hidden_proto(pmap_unset) */
+/* libc_hidden_proto(xdr_void) */
+
 struct proglst_
   {
     char *(*p_progname) (char *);
@@ -63,20 +76,22 @@ struct proglst_
     xdrproc_t p_inproc, p_outproc;
     struct proglst_ *p_nxt;
   };
-#ifdef _RPC_THREAD_SAFE_
-#define proglst ((struct proglst_ *)RPC_THREAD_VARIABLE(svcsimple_proglst_s))
+#ifdef __UCLIBC_HAS_THREADS__
+#define proglst (*(struct proglst_ **)&RPC_THREAD_VARIABLE(svcsimple_proglst_s))
 #else
 static struct proglst_ *proglst;
 #endif
 
 
 static void universal (struct svc_req *rqstp, SVCXPRT *transp_s);
-#ifdef _RPC_THREAD_SAFE_
-#define transp ((SVCXPRT *)RPC_THREAD_VARIABLE(svcsimple_transp_s))
+#ifdef __UCLIBC_HAS_THREADS__
+#define transp (*(SVCXPRT **)&RPC_THREAD_VARIABLE(svcsimple_transp_s))
 #else
 static SVCXPRT *transp;
 #endif
 
+int registerrpc (u_long prognum, u_long versnum, u_long procnum,
+            char *(*progname) (char *), xdrproc_t inproc, xdrproc_t outproc);
 int
 registerrpc (u_long prognum, u_long versnum, u_long procnum,
             char *(*progname) (char *), xdrproc_t inproc, xdrproc_t outproc)
@@ -161,7 +176,7 @@ universal (struct svc_req *rqstp, SVCXPRT *transp_l)
     if (pl->p_prognum == prog && pl->p_procnum == proc)
       {
        /* decode arguments into a CLEAN buffer */
-       bzero (xdrbuf, sizeof (xdrbuf));        /* required ! */
+       memset (xdrbuf, 0, sizeof (xdrbuf));    /* required ! */
        if (!svc_getargs (transp_l, pl->p_inproc, xdrbuf))
          {
            svcerr_decode (transp_l);