* clnt_perror.c (clnt_spcreateerror): Enumerate missing cases in
authorEzra Peisach <epeisach@mit.edu>
Tue, 5 Jun 2001 15:46:16 +0000 (15:46 +0000)
committerEzra Peisach <epeisach@mit.edu>
Tue, 5 Jun 2001 15:46:16 +0000 (15:46 +0000)
switch.

* getrpcport.c: Include string.h for memmove() prototype and
pmap_clnt.h for pmap_getport() prototype.

* rpc_dtablesize.c (_gssrpc_rpc_dtablesize): Declare as returning int.
* get_myaddress.c (gssrpc_get_myaddress): Likewise.

* rpc_prot.c (gssrpc_xdr_accepted_reply, sunrpc_seterr_reply):
Enumerate missing cases for switch.
(rejected): Fix typo: RPC_VERMISMATCH -> RPC_MISMATCH for
enumerated switch.

   * svc_auth.c: Add braces to svcauthsw[] initialization.

* svc_simple.c: Include pmap_clnt.h for pmap_unset prototype.

* bindresvport.c, clnt_simple.c, clnt_tcp.c, clnt_udp.c, pmap_clnt.c,
pmap_getmaps.c, pmap_gtport.c, pmap_rmt.c, svc_tcp.c, svc_udp.c:
Include unistd.h for close() prototype.

* xdr.c (xdr_opaque): Specify internal buffer as ints.
(xdr_u_int32): Declare as returning bool_t.

* clnt_generic.c, rpc_callmsg.c, svc_auth_unix.c, xdr_mem.c:
Include string.h for memmove() prototype.

* xdr_rec.c: Include string.h for memmove() prototype. Add dummy
XDR_FREE cases for switches.

* xdr_reference.c (xdr_reference): Add XDR_ENCODE case. (gcc warning).
* xdr_array.c (xdr_array): Likewise.

* auth.h: Include gssrpc/xdr.h and provide prototype for
gssrpc_xdr_opaque_auth().

* auth_gssapi.h: Add prototypes for auth_gssapi_seal_seq() and
auth_gssapi_unseal_seq().

* clnt.h: Add prototype for _gssrpc_rpc_dtablesize().

* rpc.h: Add prototypes for gssrpc_get_myaddress() and
gssrpc_bindresvport().

git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@13269 dc483132-0cff-0310-8789-dd5450dbe970

30 files changed:
src/lib/rpc/ChangeLog
src/lib/rpc/auth.h
src/lib/rpc/auth_gssapi.h
src/lib/rpc/bindresvport.c
src/lib/rpc/clnt.h
src/lib/rpc/clnt_generic.c
src/lib/rpc/clnt_perror.c
src/lib/rpc/clnt_simple.c
src/lib/rpc/clnt_tcp.c
src/lib/rpc/clnt_udp.c
src/lib/rpc/get_myaddress.c
src/lib/rpc/getrpcport.c
src/lib/rpc/pmap_clnt.c
src/lib/rpc/pmap_getmaps.c
src/lib/rpc/pmap_getport.c
src/lib/rpc/pmap_rmt.c
src/lib/rpc/rpc.h
src/lib/rpc/rpc_callmsg.c
src/lib/rpc/rpc_dtablesize.c
src/lib/rpc/rpc_prot.c
src/lib/rpc/svc_auth.c
src/lib/rpc/svc_auth_unix.c
src/lib/rpc/svc_simple.c
src/lib/rpc/svc_tcp.c
src/lib/rpc/svc_udp.c
src/lib/rpc/xdr.c
src/lib/rpc/xdr_array.c
src/lib/rpc/xdr_mem.c
src/lib/rpc/xdr_rec.c
src/lib/rpc/xdr_reference.c

index 423ea0c0a75b3a18c5138aee8226278a268ebb09..52e60ac010b89cac17d6a83b25315b53de02a4f3 100644 (file)
@@ -1,3 +1,50 @@
+2001-06-05  Ezra Peisach  <epeisach@mit.edu>
+
+       * clnt_perror.c (clnt_spcreateerror): Enumerate missing cases in
+       switch.
+
+       * getrpcport.c: Include string.h for memmove() prototype and
+       pmap_clnt.h for pmap_getport() prototype.
+
+       * rpc_dtablesize.c (_gssrpc_rpc_dtablesize): Declare as returning int.
+       * get_myaddress.c (gssrpc_get_myaddress): Likewise.
+
+       * rpc_prot.c (gssrpc_xdr_accepted_reply, sunrpc_seterr_reply):
+       Enumerate missing cases for switch.
+       (rejected): Fix typo: RPC_VERMISMATCH -> RPC_MISMATCH for
+       enumerated switch.
+
+       * svc_auth.c: Add braces to svcauthsw[] initialization.
+
+       * svc_simple.c: Include pmap_clnt.h for pmap_unset prototype.
+
+       * bindresvport.c, clnt_simple.c, clnt_tcp.c, clnt_udp.c, pmap_clnt.c,
+       pmap_getmaps.c, pmap_gtport.c, pmap_rmt.c, svc_tcp.c, svc_udp.c:
+       Include unistd.h for close() prototype.
+
+       * xdr.c (xdr_opaque): Specify internal buffer as ints.
+       (xdr_u_int32): Declare as returning bool_t.
+
+       * clnt_generic.c, rpc_callmsg.c, svc_auth_unix.c, xdr_mem.c:
+       Include string.h for memmove() prototype.
+
+       * xdr_rec.c: Include string.h for memmove() prototype. Add dummy
+       XDR_FREE cases for switches.
+
+       * xdr_reference.c (xdr_reference): Add XDR_ENCODE case. (gcc warning). 
+       * xdr_array.c (xdr_array): Likewise.
+
+       * auth.h: Include gssrpc/xdr.h and provide prototype for
+       gssrpc_xdr_opaque_auth().
+
+       * auth_gssapi.h: Add prototypes for auth_gssapi_seal_seq() and
+       auth_gssapi_unseal_seq().
+
+       * clnt.h: Add prototype for _gssrpc_rpc_dtablesize(). 
+
+       * rpc.h: Add prototypes for gssrpc_get_myaddress() and
+       gssrpc_bindresvport().
+
 2001-03-07  Ken Raeburn  <raeburn@mit.edu>
 
        * configure.in: Check for strerror.
index 5a0ad0da95f3731b1e1b349947fe8b2e4e7f9d69..5f221c0a6a70df32fede265c7db9fd9e04046028 100644 (file)
@@ -39,6 +39,8 @@
  */
 
 
+#include <gssrpc/xdr.h>
+
 #define MAX_AUTH_BYTES 400
 #define MAXNETNAMELEN  255     /* maximum length of network user's name */
 
@@ -207,3 +209,10 @@ extern AUTH *authdes_create();
  * need to accept this value until 1.0 is dead.
  */
 #define AUTH_GSSAPI_COMPAT             4
+
+/*
+ * XDR an opaque authentication struct.
+ */
+#define xdr_opaque_auth           gssrpc_xdr_opaque_auth
+
+extern bool_t xdr_opaque_auth (XDR *, struct opaque_auth *);
index 2cdd20f2fe397af178c5b27bd59c48ecf8a97119..5f462a03902948ef2ea94fd07062abb0edf8af18 100644 (file)
@@ -111,6 +111,13 @@ PROTOTYPE((CLIENT *clnt, char *service_name));
 void auth_gssapi_display_status
 PROTOTYPE((char *msg, OM_uint32 major,
           OM_uint32 minor)); 
+
+bool_t auth_gssapi_seal_seq
+PROTOTYPE((gss_ctx_id_t context, rpc_u_int32 seq_num, gss_buffer_t out_buf));
+
+bool_t auth_gssapi_unseal_seq
+PROTOTYPE((gss_ctx_id_t context, gss_buffer_t in_buf, rpc_u_int32 *seq_num));
+
 bool_t _svcauth_gssapi_set_names
 PROTOTYPE((auth_gssapi_name *names, int num));
 void _svcauth_gssapi_unset_names
index b006e30f3e04d2c6493a03633d65b2019403f023..ca041dfc1c48cea6f9c0426dabc0459933d827ca 100644 (file)
@@ -1,4 +1,6 @@
+#if !defined(lint) && defined(SCCSIDS)
 static  char sccsid[] = "@(#)bindresvport.c    2.2 88/07/29 4.0 RPCSRC 1.8 88/02/08 SMI";
+#endif
 /*
  * Sun RPC is a product of Sun Microsystems, Inc. and is provided for
  * unrestricted use provided that this legend is included on all tape
@@ -33,6 +35,7 @@ static  char sccsid[] = "@(#)bindresvport.c   2.2 88/07/29 4.0 RPCSRC 1.8 88/02/08
  */
 
 #include <string.h>
+#include <unistd.h>
 #include <sys/types.h>
 #include <sys/errno.h>
 #include <sys/socket.h>
@@ -41,6 +44,7 @@ static  char sccsid[] = "@(#)bindresvport.c   2.2 88/07/29 4.0 RPCSRC 1.8 88/02/08
 /*
  * Bind a socket to a privileged IP port
  */
+int
 gssrpc_bindresvport(sd, sin)
        int sd;
        struct sockaddr_in *sin;
index 1f82700d00b5abd1d916be624c1bedba4f1f296a..f308dd999689fcbe4f7fd14fcfeac72706198898 100644 (file)
@@ -298,6 +298,8 @@ extern CLIENT *clnttcp_create();
 extern CLIENT *clntudp_create();
 extern CLIENT *clntudp_bufcreate();
 
+#define _rpc_dtablesize _gssrpc_rpc_dtablesize
+extern int _rpc_dtablesize(void);
 /*
  * Print why creation failed
  */
@@ -339,8 +341,6 @@ extern struct rpc_createerr rpc_createerr;
 #define clnt_sperrno           gssrpc_clnt_sperrno
 char *clnt_sperrno(/* enum clnt_stat num */);  /* string */
 
-
-
 #define UDPMSGSIZE     8800    /* rpc imposed limit on udp msg size */
 #define RPCSMALLMSGSIZE        400     /* a more reasonable packet size */
 
index c59ac94296f07c732a78070ad259bcb9e2ae3cd3..b0eed3d328f59e2c0daaf66e68fdc81b266f9c58 100644 (file)
@@ -33,6 +33,7 @@ static char sccsid[] = "@(#)clnt_generic.c 1.4 87/08/11 (C) 1987 SMI";
 /*
  * Copyright (C) 1987, Sun Microsystems, Inc.
  */
+#include <string.h>
 #include <gssrpc/rpc.h>
 #include <sys/socket.h>
 #include <sys/errno.h>
index 7d05cc476f735ce3fda59c72bc5aea908adda230..50168dff444ac85808044cddece4ff3f3e07840f 100644 (file)
@@ -282,6 +282,25 @@ clnt_spcreateerror(s)
                                       rpc_createerr.cf_error.re_errno);
                }
                break;
+
+       case RPC_CANTSEND:
+       case RPC_CANTDECODERES:
+       case RPC_CANTENCODEARGS:
+       case RPC_SUCCESS:
+       case RPC_UNKNOWNPROTO:
+       case RPC_PROGNOTREGISTERED:
+       case RPC_FAILED:
+       case RPC_UNKNOWNHOST:
+       case RPC_CANTDECODEARGS:
+       case RPC_PROCUNAVAIL:
+       case RPC_PROGVERSMISMATCH:
+       case RPC_PROGUNAVAIL:
+       case RPC_AUTHERROR:
+       case RPC_VERSMISMATCH:
+       case RPC_TIMEDOUT:
+       case RPC_CANTRECV:
+       default:
+           break;
        }
        (void) strncat(str, "\n", BUFSIZ - 1 - strlen(str));
        return (str);
index 2f203d73fc9248e7d1dbb580a768f5ac55b724d0..f6faf26a1e1ef584df66ecb4475c525d8e4f8392 100644 (file)
@@ -39,6 +39,8 @@ static char sccsid[] = "@(#)clnt_simple.c 1.35 87/08/11 Copyr 1984 Sun Micro";
  */
 
 #include <stdio.h>
+/* for close() */
+#include <unistd.h>
 #include <gssrpc/rpc.h>
 #include <sys/socket.h>
 #include <netdb.h>
@@ -51,6 +53,7 @@ static struct callrpc_private {
        char    *oldhost;
 } *callrpc_private;
 
+int
 gssrpc_callrpc(host, prognum, versnum, procnum, inproc, in, outproc, out)
        char *host;
        xdrproc_t inproc, outproc;
index f87da78b1988af2ecb77402c9b17a192c8591ff4..6f81ea1367c939e302e9af9b423c0b3e6f5a6866 100644 (file)
@@ -51,6 +51,7 @@ static char sccsid[] = "@(#)clnt_tcp.c 1.37 87/10/05 Copyr 1984 Sun Micro";
  */
 
 #include <stdio.h>
+#include <unistd.h>
 #include <gssrpc/rpc.h>
 #include <sys/socket.h>
 #include <netdb.h>
index df3945a4868cbc79033832d8c0d8dea01bf5bd8c..7a8b03c1403c9d75cde99ca79f805b9eaa007998 100644 (file)
@@ -38,6 +38,7 @@ static char sccsid[] = "@(#)clnt_udp.c 1.39 87/08/11 Copyr 1984 Sun Micro";
  */
 
 #include <stdio.h>
+#include <unistd.h>
 #include <gssrpc/rpc.h>
 #include <sys/socket.h>
 #include <sys/ioctl.h>
@@ -436,7 +437,6 @@ clntudp_control(cl, request, info)
        char *info;
 {
        register struct cu_data *cu = (struct cu_data *)cl->cl_private;
-       int len;
        
        switch (request) {
        case CLSET_TIMEOUT:
index 13bafa00917e0d7d3c0f95b3ee1339d89a7cc06b..9f79cda1b730898af8f1f8d4cb7e1178c82eb38b 100644 (file)
@@ -48,6 +48,7 @@ static char sccsid[] = "@(#)get_myaddress.c 1.4 87/08/11 Copyr 1984 Sun Micro";
 /* 
  * don't use gethostbyname, which would invoke yellow pages
  */
+int
 gssrpc_get_myaddress(addr)
        struct sockaddr_in *addr;
 {
index 4a80b9c2eb4262e31eca60f1f5eaf9bb58fdc220..e553302efbf553acf8968e233333b64163b4a7bd 100644 (file)
@@ -36,10 +36,13 @@ static  char sccsid[] = "@(#)getrpcport.c 1.3 87/08/11 SMI";
  */
 
 #include <stdio.h>
+#include <string.h>
 #include <gssrpc/rpc.h>
+#include <gssrpc/pmap_clnt.h>
 #include <netdb.h>
 #include <sys/socket.h>
 
+int
 gssrpc_getrpcport(host, prognum, versnum, proto)
        char *host;
 {
index a82d8599fdff5377c23261278f30ebd01fc88f96..e2d47ecad4222a378e705381a2ff3ebe08b3ab8d 100644 (file)
@@ -38,6 +38,7 @@ static char sccsid[] = "@(#)pmap_clnt.c 1.37 87/08/11 Copyr 1984 Sun Micro";
  * Copyright (C) 1984, Sun Microsystems, Inc.
  */
 
+#include <unistd.h>
 #include <gssrpc/rpc.h>
 #include <gssrpc/pmap_prot.h>
 #include <gssrpc/pmap_clnt.h>
index 9252aa137814bff795cbf8f36d9048f1270b47f7..187749338c3de321962413de923a8acf71057b5c 100644 (file)
@@ -45,6 +45,7 @@ static char sccsid[] = "@(#)pmap_getmaps.c 1.10 87/08/11 Copyr 1984 Sun Micro";
 #include <sys/socket.h>
 #include <netdb.h>
 #include <stdio.h>
+#include <unistd.h>
 #include <errno.h>
 #ifdef OSF1
 #include <net/route.h>
index 2075280f21f20518222175d5cea2fff35f301406..6fbd141042ba6c7ce2fb415739d531620b22eaf1 100644 (file)
@@ -38,6 +38,7 @@ static char sccsid[] = "@(#)pmap_getport.c 1.9 87/08/11 Copyr 1984 Sun Micro";
  * Copyright (C) 1984, Sun Microsystems, Inc.
  */
 
+#include <unistd.h>
 #include <gssrpc/rpc.h>
 #include <gssrpc/pmap_prot.h>
 #include <gssrpc/pmap_clnt.h>
index dc9735d846deab93ee1c0711d682854073595928..faa1fc206e47ecaf09c0ad6a4d983ff14f899d33 100644 (file)
@@ -39,6 +39,7 @@ static char sccsid[] = "@(#)pmap_rmt.c 1.21 87/08/27 Copyr 1984 Sun Micro";
  * Copyright (C) 1984, Sun Microsystems, Inc.
  */
 
+#include <unistd.h>
 #include <gssrpc/rpc.h>
 #include <gssrpc/pmap_prot.h>
 #include <gssrpc/pmap_clnt.h>
index 203e5ef090e6bb75fdad76784f74f8d5fc43da96..bd12dcf01c9bea8cbb0a9df4c5cb68f1bb03b066 100644 (file)
 #include <gssrpc/netdb.h>      /* structures and routines to parse /etc/rpc */
 #endif
 
+/*
+ * get the local host's IP address without consulting
+ * name service library functions
+ */
+#define get_myaddress  gssrpc_get_myaddress
+extern void get_myaddress (struct sockaddr_in *);
+
+#define bindresvport   gssrpc_bindresvport
+extern int bindresvport(int, struct sockaddr_in *);
+
 #endif /* ndef __RPC_HEADER__ */
index 83ce05712819f99a0874294e043e31a1adfaab4a..a1de54464f00f6a8df322c154b5f677c603f12fc 100644 (file)
@@ -39,7 +39,7 @@ static char sccsid[] = "@(#)rpc_callmsg.c 1.4 87/08/11 Copyr 1984 Sun Micro";
  */
 
 #include <sys/param.h>
-
+#include <string.h>
 #include <gssrpc/rpc.h>
 
 /*
index d7b07c867b525b785b6456e39e36b2a449bda644..c26f87b96b2cd374d6962485d2beefdb1b576745 100644 (file)
@@ -37,6 +37,7 @@ static char sccsid[] = "@(#)rpc_dtablesize.c 1.2 87/08/11 Copyr 1987 Sun Micro";
  * Cache the result of getdtablesize(), so we don't have to do an
  * expensive system call every time.
  */
+int 
 _gssrpc_rpc_dtablesize()
 {
        static int size;
index 853dca79d4a92c39806c75bacc5760f65b0a2897..92391118a041fa40cc7ec67938f437771f6f7d68 100644 (file)
@@ -102,6 +102,12 @@ gssrpc_xdr_accepted_reply(xdrs, ar)
                if (! xdr_u_int32(xdrs, &(ar->ar_vers.low)))
                        return (FALSE);
                return (xdr_u_int32(xdrs, &(ar->ar_vers.high)));
+
+       case GARBAGE_ARGS:
+       case SYSTEM_ERR:
+       case PROC_UNAVAIL:
+       case PROG_UNAVAIL:
+               break;
        }
        return (TRUE);  /* TRUE => open ended set of problems */
 }
@@ -225,7 +231,7 @@ rejected(rjct_stat, error)
 
        switch (rjct_stat) {
 
-       case RPC_VERSMISMATCH:
+       case RPC_MISMATCH:
                error->re_status = RPC_VERSMISMATCH;
                return;
 
@@ -283,5 +289,23 @@ sunrpc_seterr_reply(msg, error)
                error->re_vers.low = msg->acpted_rply.ar_vers.low;
                error->re_vers.high = msg->acpted_rply.ar_vers.high;
                break;
+
+       case RPC_FAILED:
+       case RPC_SUCCESS:
+       case RPC_PROGNOTREGISTERED:
+       case RPC_PMAPFAILURE:
+       case RPC_UNKNOWNPROTO:
+       case RPC_UNKNOWNHOST:
+       case RPC_SYSTEMERROR:
+       case RPC_CANTDECODEARGS:
+       case RPC_PROCUNAVAIL:
+       case RPC_PROGUNAVAIL:
+       case RPC_TIMEDOUT:
+       case RPC_CANTRECV:
+       case RPC_CANTSEND:
+       case RPC_CANTDECODERES:
+       case RPC_CANTENCODEARGS:
+       default:
+               break;
        }
 }
index e0e3dc50e9afab896f8ad6906edff4b5c3b74243..b5b3eb5713c97f968407531ad5f125335af05708 100644 (file)
@@ -65,11 +65,11 @@ static struct svcauthsw_type {
      unsigned int flavor;
      enum auth_stat (*authenticator)();
 } svcauthsw[] = {
-     AUTH_GSSAPI, _svcauth_gssapi,             /* AUTH_GSSAPI */
-     AUTH_NONE, _svcauth_null,                 /* AUTH_NULL */
-     AUTH_GSSAPI_COMPAT, _svcauth_gssapi,      /* AUTH_GSSAPI_COMPAT */
-     AUTH_UNIX, _svcauth_unix,                 /* AUTH_UNIX */
-     AUTH_SHORT, _svcauth_short,               /* AUTH_SHORT */
+     {AUTH_GSSAPI, _svcauth_gssapi},           /* AUTH_GSSAPI */
+     {AUTH_NONE, _svcauth_null},               /* AUTH_NULL */
+     {AUTH_GSSAPI_COMPAT, _svcauth_gssapi},    /* AUTH_GSSAPI_COMPAT */
+     {AUTH_UNIX, _svcauth_unix},               /* AUTH_UNIX */
+     {AUTH_SHORT, _svcauth_short},             /* AUTH_SHORT */
 };
 static int svcauthnum = sizeof(svcauthsw) / sizeof(struct svcauthsw_type);
 
index 781b350fd3639c65d31e34e10fb1e4d0fddc0bf6..48632b2248b1298110603982a75a0592ef44a449 100644 (file)
@@ -43,6 +43,7 @@ static char sccsid[] = "@(#)svc_auth_unix.c 1.28 88/02/08 Copyr 1984 Sun Micro";
  */
 
 #include <stdio.h>
+#include <string.h>
 #include <gssrpc/rpc.h>
 
 /*
index 780eafff5088a1684415f062304aa31a443915b3..9a58cf6269d3358e0e5aca31747d2f937bb0ef47 100644 (file)
@@ -40,6 +40,7 @@ static char sccsid[] = "@(#)svc_simple.c 1.18 87/08/11 Copyr 1984 Sun Micro";
 
 #include <stdio.h>
 #include <gssrpc/rpc.h>
+#include <gssrpc/pmap_clnt.h>
 #include <sys/socket.h>
 #include <netdb.h>
 
@@ -54,6 +55,7 @@ static void universal();
 static SVCXPRT *transp;
 static struct proglst *pl;
 
+int
 gssrpc_registerrpc(prognum, versnum, procnum, progname, inproc, outproc)
        char *(*progname)();
        xdrproc_t inproc, outproc;
index cece276cdf86f709a0c1a6bfd60ca58d8429e179..6fe3b30058e28c83d194c34db6e845c3c9d5273b 100644 (file)
@@ -42,12 +42,14 @@ static char sccsid[] = "@(#)svc_tcp.c 1.21 87/08/11 Copyr 1984 Sun Micro";
  */
 
 #include <stdio.h>
+#include <unistd.h>
 #include <gssrpc/rpc.h>
 #include <sys/socket.h>
 #include <errno.h>
 #include <stdlib.h>
-/*extern bool_t abort();*.
+/*extern bool_t abort();
 extern errno;
+*/
 
 /*
  * Ops vector for TCP/IP based rpc service handle
index c17b4acbbfed79aae3c2fa0dfd7b98fdde7c2c48..7dca8a0832f27918aab80946c6ed9fab25272dea 100644 (file)
@@ -40,6 +40,7 @@ static char sccsid[] = "@(#)svc_udp.c 1.24 87/08/11 Copyr 1984 Sun Micro";
  */
 
 #include <stdio.h>
+#include <unistd.h>
 #include <gssrpc/rpc.h>
 #include <sys/socket.h>
 #include <errno.h>
@@ -378,6 +379,7 @@ struct udp_cache {
  * Enable use of the cache. 
  * Note: there is no disable.
  */
+int
 gssrpc_svcudp_enablecache(transp, size)
        SVCXPRT *transp;
        rpc_u_int32 size;
index 29085da52c310140505522d6acd880afef53ffff..755c0dc412ef4a9c16d04ed2faa32a184d04a6a8 100644 (file)
@@ -119,6 +119,8 @@ xdr_int(xdrs, ip)
        } else {
                return (xdr_short(xdrs, (short *)ip));
        }
+       /*NOTREACHED*/
+       return(FALSE);
 #endif
 }
 
@@ -383,7 +385,7 @@ xdr_opaque(xdrs, cp, cnt)
        register unsigned int cnt;
 {
        register unsigned int rndup;
-       static crud[BYTES_PER_XDR_UNIT];
+       static int crud[BYTES_PER_XDR_UNIT];
 
        /*
         * if no data we are done
@@ -515,6 +517,7 @@ xdr_int32(xdrs, ip)
   }
 }
 
+bool_t
 xdr_u_int32(xdrs, up)
        XDR *xdrs;
        rpc_u_int32 *up;
@@ -619,6 +622,8 @@ xdr_string(xdrs, cpp, maxsize)
        case XDR_ENCODE:
                size = strlen(sp);
                break;
+       case XDR_DECODE:
+               break;
        }
        if (! xdr_u_int(xdrs, &size)) {
                return (FALSE);
index 7c4c70e36d3db139d708a9057e8441fa0fee62e4..a1841abe70c7d40072df366f6f7deb5310db2cd3 100644 (file)
@@ -100,6 +100,9 @@ xdr_array(xdrs, addrp, sizep, maxsize, elsize, elproc)
 
                case XDR_FREE:
                        return (TRUE);
+
+               case XDR_ENCODE:
+                       break;
        }
        
        /*
index d32b39136deace51aca5b498a7c628a2e4cb03e6..c09b21245fcce5f4b84ee2b17a3e07845058f117 100644 (file)
@@ -47,6 +47,7 @@ static char sccsid[] = "@(#)xdr_mem.c 1.19 87/08/11 Copyr 1984 Sun Micro";
 #include <gssrpc/xdr.h>
 #include <netinet/in.h>
 #include <stdio.h>
+#include <string.h>
 
 static bool_t  xdrmem_getlong();
 static bool_t  xdrmem_putlong();
index 01605be060368c2d9d7e52e5e62fa2224e8a486a..fd140f1baae022a99435e0dc27f2a63d3246161a 100644 (file)
@@ -54,6 +54,7 @@ static char sccsid[] = "@(#)xdr_rec.c 1.21 87/08/11 Copyr 1984 Sun Micro";
 #include <netinet/in.h>
 
 #include <unistd.h>
+#include <string.h>
 
 static unsigned int    fix_buf_size();
 static bool_t   flush_out();
@@ -360,6 +361,9 @@ xdrrec_setpos(xdrs, pos)
                                return (TRUE);
                        }
                        break;
+
+               case XDR_FREE:
+                       break;
                }
        return (FALSE);
 }
@@ -389,6 +393,9 @@ xdrrec_inline(xdrs, len)
                        rstrm->in_finger += len;
                }
                break;
+
+       case XDR_FREE:
+               break;
        }
        return (buf);
 }
index 7d891a81610363791b3486d0f8911caaaa7ed5a9..501f621217e2935117c7c0bc572cdf1ec51a53de 100644 (file)
@@ -79,6 +79,9 @@ xdr_reference(xdrs, pp, size, proc)
                        }
                        memset(loc, 0, (int)size);
                        break;
+
+               case XDR_ENCODE:
+                       break;
        }
 
        stat = (*proc)(xdrs, loc, LASTUNSIGNED);