diff options
author | Ulrich Drepper <drepper@redhat.com> | 1997-08-29 21:01:47 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 1997-08-29 21:01:47 +0000 |
commit | 800d775e426b9c0af63f711b79b09bf540c97456 (patch) | |
tree | ff7858571c81f2e6077c5e35b465494052984876 /nis/nis_server.c | |
parent | 39e16978c3b4ac8eaf2201fac56316623910d9da (diff) | |
download | glibc-800d775e426b9c0af63f711b79b09bf540c97456.tar.gz |
Update.cvs/libc-ud-970829
1997-08-29 21:45 Ulrich Drepper <drepper@cygnus.com>
* sunrpc/auth_des.c: New file. Copied from former secure_rpc add-on.
* sunrpc/authdes_prot.c: New file. Likewise.
* sunrpc/des.h: New file. Likewise.
* sunrpc/des_crypt.c: New file. Likewise.
* sunrpc/des_soft.c: New file. Likewise.
* sunrpc/key_call.c: New file. Likewise.
* sunrpc/key_prot.c: New file. Likewise.
* sunrpc/netname.c: New file. Likewise.
* sunrpc/openchild.c: New file. Likewise.
* sunrpc/rtime.c: New file. Likewise.
* sunrpc/svc_auth.c: New file. Likewise.
* sunrpc/svcauth_des.c: New file. Likewise.
* sunrpc/xcrypt.c: New file. Likewise.
* sunrpc/rpc/auth.h: New file. Likewise.
* sunrpc/rpc/auth_des.h: New file. Likewise.
* sunrpc/rpc/des_crypt.h: New file. Likewise.
* sunrpc/rpc/key_prot.h: New file. Likewise.
* sunrpc/rpcsvc/key_prot.x: New file. Likewise.
* sysdeps/generic/svc_auth.h: Removed.
* sysdeps/generic/rpc/auth.h: Removed.
* sysdeps/generic/rpc/auth_des.h: Removed.
* sysdeps/stub/des_impl.c: New file. Stub version for DES.
* sunrpc/Makefile (rpcsvc): Add keyprot.x.
(headers): Add des_crypt.h and key_prot.h.
(routines): Add auth_des, authdes_prot, des_crypt, des_impl, des_soft,
key_call, key_prot, netname, openchild, rtime, svcauth_des, xcrypt.
(distribute): Add des.h.
* db2/Makefile: Add all headers and other files to distribute.
(others): Add db_printlog.
* sysdeps/mach/hurd/Dist: Add net/* headers.
* sysdeps/mach/hurd/mips/Dist: New file.
* sysdeps/powerpc/Dist: Add fe_nomask.c and t_sqrt.c.
* sysdeps/sparc/Dist: Add sys/trap.h.
* sysdeps/sparc/sparc32/Dist: Remove sys/trap.h.
* sysdeps/sparc/sparc32/sparcv8/Dist: New file.
* sysdeps/unix/sysv/linux/mips/Dist: Add sgidefs.h.
* sysdeps/unix/sysv/linux/sparc/Dist: Add sys/trap.h.
* sysdeps/unix/sysv/linux/sparc/sparc32/Dist: Remove sys/trap.h.
Add previously missing assembler files for PPC.
* sysdeps/powerpc/add_n.s: New file.
* sysdeps/powerpc/addmul_1.s: New file.
* sysdeps/powerpc/lshift.s: New file.
* sysdeps/powerpc/memset.s: New file.
* sysdeps/powerpc/mul_1.s: New file.
* sysdeps/powerpc/rshift.s: New file.
* sysdeps/powerpc/strchr.s: New file.
* sysdeps/powerpc/strcmp.s: New file.
* sysdeps/powerpc/sub_n.s: New file.
* sysdeps/powerpc/submul_1.s: New file.
1997-08-28 18:42 Thorsten Kukuk <kukuk@uni-paderborn.de>
* nis/nis_server.c: Rewritten to fix a lot of bugs.
1997-08-28 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* md5-crypt/Makefile (LDFLAGS-md5crypt.so, libmd5crypt-map): New
variables.
in NLSPATH environment variable. Patch by HJ Lu <hjl@gnu.ai.mit.edu>.
Diffstat (limited to 'nis/nis_server.c')
-rw-r--r-- | nis/nis_server.c | 81 |
1 files changed, 19 insertions, 62 deletions
diff --git a/nis/nis_server.c b/nis/nis_server.c index 5274a3bfc4..0df608a153 100644 --- a/nis/nis_server.c +++ b/nis/nis_server.c @@ -19,7 +19,6 @@ #include <string.h> #include <rpcsvc/nis.h> -#include <rpcsvc/nislib.h> #include "nis_intern.h" nis_error @@ -29,42 +28,21 @@ nis_servstate (const nis_server *serv, const nis_tag *tags, nis_taglist taglist; nis_taglist tagres; + *result = 0; tagres.tags.tags_len = 0; tagres.tags.tags_val = NULL; - *result = NULL; taglist.tags.tags_len = numtags; taglist.tags.tags_val = (nis_tag *) tags; if (serv == NULL) - { - if (__do_niscall (NULL, NIS_SERVSTATE, (xdrproc_t) xdr_nis_taglist, - (caddr_t) &taglist, (xdrproc_t) xdr_nis_taglist, - (caddr_t) &tagres, 0) != RPC_SUCCESS) - return NIS_RPCERROR; - } - else - { - if (__do_niscall2 (serv, 1, NIS_SERVSTATE, (xdrproc_t) xdr_nis_taglist, - (caddr_t) &taglist, (xdrproc_t) xdr_nis_taglist, - (caddr_t) &tagres, 0) != RPC_SUCCESS) - return NIS_RPCERROR; - } - if (tagres.tags.tags_len > 0) - { - u_long i; - - result = malloc (sizeof (nis_tag *) * tagres.tags.tags_len); - if (result == NULL) - return NIS_NOMEMORY; - for (i = 0; i < tagres.tags.tags_len; ++i) - { - result[i] = malloc (sizeof (nis_tag)); - if (result[i] == NULL) - return NIS_NOMEMORY; - result[i]->tag_val = strdup (tagres.tags.tags_val[i].tag_val); - result[i]->tag_type = tagres.tags.tags_val[i].tag_type; - } - } + return NIS_BADOBJECT; + + if (__do_niscall2 (serv, 1, NIS_SERVSTATE, (xdrproc_t) xdr_nis_taglist, + (caddr_t) &taglist, (xdrproc_t) xdr_nis_taglist, + (caddr_t) &tagres, 0) != RPC_SUCCESS) + return NIS_RPCERROR; + + *result = tagres.tags.tags_val; return NIS_SUCCESS; } @@ -76,42 +54,21 @@ nis_stats (const nis_server *serv, const nis_tag *tags, nis_taglist taglist; nis_taglist tagres; + *result = NULL; tagres.tags.tags_len = 0; tagres.tags.tags_val = NULL; - *result = NULL; taglist.tags.tags_len = numtags; taglist.tags.tags_val = (nis_tag *) tags; if (serv == NULL) - { - if (__do_niscall (NULL, NIS_STATUS, (xdrproc_t) xdr_nis_taglist, - (caddr_t) &taglist, (xdrproc_t) xdr_nis_taglist, - (caddr_t) &tagres, 0) != RPC_SUCCESS) - return NIS_RPCERROR; - } - else - { - if (__do_niscall2 (serv, 1, NIS_STATUS, (xdrproc_t) xdr_nis_taglist, - (caddr_t) &taglist, (xdrproc_t) xdr_nis_taglist, - (caddr_t) &tagres, 0) != RPC_SUCCESS) - return NIS_RPCERROR; - } - if (tagres.tags.tags_len > 0) - { - u_long i; - - result = malloc (sizeof (nis_tag *) * tagres.tags.tags_len); - if (result == NULL) - return NIS_NOMEMORY; - for (i = 0; i < tagres.tags.tags_len; ++i) - { - result[i] = malloc (sizeof (nis_tag)); - if (result[i] == NULL) - return NIS_NOMEMORY; - result[i]->tag_val = strdup (tagres.tags.tags_val[i].tag_val); - result[i]->tag_type = tagres.tags.tags_val[i].tag_type; - } - } + return NIS_BADOBJECT; + + if (__do_niscall2 (serv, 1, NIS_STATUS, (xdrproc_t) xdr_nis_taglist, + (caddr_t) &taglist, (xdrproc_t) xdr_nis_taglist, + (caddr_t) &tagres, 0) != RPC_SUCCESS) + return NIS_RPCERROR; + + *result = tagres.tags.tags_val; return NIS_SUCCESS; } @@ -122,6 +79,6 @@ nis_freetags (nis_tag *tags, const int numtags) int i; for (i = 0; i < numtags; ++i) - free (tags->tag_val); + free (tags[i].tag_val); free (tags); } |