aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1998-06-16 11:43:48 +0000
committerUlrich Drepper <drepper@redhat.com>1998-06-16 11:43:48 +0000
commit91eee4dd69397fa6e7b328022670d459f582b047 (patch)
tree85ba752cb426bcfa60e04a2d5e88efae378bfd04 /nis/rpcsvc
parentUpdate. (diff)
downloadglibc-91eee4dd69397fa6e7b328022670d459f582b047.tar.gz
glibc-91eee4dd69397fa6e7b328022670d459f582b047.tar.bz2
glibc-91eee4dd69397fa6e7b328022670d459f582b047.zip
Update.
1998-06-16 Thorsten Kukuk <kukuk@vt.uni-paderborn.de> * sunrpc/svc.c: Check for NULL pointer. * nis/libnsl.map: Add public NIS+ xdr functions. * nis/rpcsvc/nis_callback.h: New file. * nis/rpcsvc/nis.h: Move xdr_* functions from here ... * nis/nis_xdr.h: ... here. * nis/nis_add.c: Use internal _xdr_* functions, check for NULL pointers, use NIS+ defines where possible. * nis/nis_cache.c: Likewise. * nis/nis_cache2_xdr.c: Likewise. * nis/nis_call.c: Likewise. * nis/nis_checkpoint.c: Likewise. * nis/nis_clone_dir.c: Likewise. * nis/nis_clone_obj.c: Likewise. * nis/nis_clone_res.c: Likewise. * nis/nis_creategroup.c: Likewise. * nis/nis_file.c: Likewise. * nis/nis_free.c: Likewise. * nis/nis_getservlist.c: Likewise. * nis/nis_local_names.c: likewise. * nis/nis_lookup.c: Likewise. * nis/nis_mkdir.c: Likewise. * nis/nis_modify.c: Likewise. * nis/nis_ping.c: Likewise. * nis/nis_print.c: Likewise. * nis/nis_remove.c: Likewise. * nis/nis_removemember.c: Likewise. * nis/nis_rmdir.c: Likewise. * nis/nis_server.c: Likewise. * nis/nis_table.c: Likewise. * nis/nis_util.c: Likewise. * nis/nis_verifygroup.c: Likewise. * nis/nis_xdr.c: Likewise. * nis/nis_callback.c: Likewise, and move xdr functions from here ... * nis/nis_xdr.c: ... to here.
Diffstat (limited to 'nis/rpcsvc')
-rw-r--r--nis/rpcsvc/nis.h31
-rw-r--r--nis/rpcsvc/nis_callback.h71
2 files changed, 71 insertions, 31 deletions
diff --git a/nis/rpcsvc/nis.h b/nis/rpcsvc/nis.h
index c0d25325c1..3148a8d8b2 100644
--- a/nis/rpcsvc/nis.h
+++ b/nis/rpcsvc/nis.h
@@ -81,10 +81,8 @@ struct nis_attr {
} zattr_val;
};
typedef struct nis_attr nis_attr;
-extern bool_t xdr_nis_attr __P ((XDR *, nis_attr*));
typedef char *nis_name;
-extern bool_t xdr_nis_name __P ((XDR *, nis_name*));
enum zotypes {
BOGUS_OBJ = 0,
@@ -105,7 +103,6 @@ enum zotypes {
NIS_PRIVATE_OBJ = 7
};
typedef enum zotypes zotypes;
-extern bool_t xdr_zotypes __P ((XDR *, zotypes*));
enum nstype {
UNKNOWN = 0,
@@ -119,14 +116,12 @@ enum nstype {
CDS = 8,
};
typedef enum nstype nstype;
-extern bool_t xdr_nstype __P ((XDR *, nstype*));
struct oar_mask {
u_long oa_rights;
zotypes oa_otype;
};
typedef struct oar_mask oar_mask;
-extern bool_t xdr_oar_mask __P ((XDR *, oar_mask*));
struct endpoint {
char *uaddr;
@@ -134,7 +129,6 @@ struct endpoint {
char *proto;
};
typedef struct endpoint endpoint;
-extern bool_t xdr_endpoint __P ((XDR *, endpoint*));
struct nis_server {
nis_name name;
@@ -146,7 +140,6 @@ struct nis_server {
netobj pkey;
};
typedef struct nis_server nis_server;
-extern bool_t xdr_nis_server __P ((XDR *, nis_server*));
struct directory_obj {
nis_name do_name;
@@ -162,7 +155,6 @@ struct directory_obj {
} do_armask;
};
typedef struct directory_obj directory_obj;
-extern bool_t xdr_directory_obj __P ((XDR *, directory_obj*));
#define EN_BINARY 1
#define EN_CRYPT 2
@@ -178,7 +170,6 @@ struct entry_col {
} ec_value;
};
typedef struct entry_col entry_col;
-extern bool_t xdr_entry_col __P ((XDR *, entry_col*));
struct entry_obj {
char *en_type;
@@ -188,7 +179,6 @@ struct entry_obj {
} en_cols;
};
typedef struct entry_obj entry_obj;
-extern bool_t xdr_entry_obj __P ((XDR *, entry_obj*));
struct group_obj {
u_long gr_flags;
@@ -198,7 +188,6 @@ struct group_obj {
} gr_members;
};
typedef struct group_obj group_obj;
-extern bool_t xdr_group_obj __P ((XDR *, group_obj*));
struct link_obj {
zotypes li_rtype;
@@ -209,7 +198,6 @@ struct link_obj {
nis_name li_name;
};
typedef struct link_obj link_obj;
-extern bool_t xdr_link_obj __P ((XDR *, link_obj*));
#define TA_BINARY 1
#define TA_CRYPT 2
@@ -225,7 +213,6 @@ struct table_col {
u_long tc_rights;
};
typedef struct table_col table_col;
-extern bool_t xdr_table_col __P ((XDR *, table_col*));
struct table_obj {
char *ta_type;
@@ -238,7 +225,6 @@ struct table_obj {
char *ta_path;
};
typedef struct table_obj table_obj;
-extern bool_t xdr_table_obj __P ((XDR *, table_obj*));
struct objdata {
zotypes zo_type;
@@ -255,14 +241,12 @@ struct objdata {
} objdata_u;
};
typedef struct objdata objdata;
-extern bool_t xdr_objdata __P ((XDR *, objdata*));
struct nis_oid {
u_long ctime;
u_long mtime;
};
typedef struct nis_oid nis_oid;
-extern bool_t xdr_nis_oid __P ((XDR *, nis_oid*));
struct nis_object {
nis_oid zo_oid;
@@ -275,7 +259,6 @@ struct nis_object {
objdata zo_data;
};
typedef struct nis_object nis_object;
-extern bool_t xdr_nis_object __P ((XDR *, nis_object*));
#endif /* if __nis_object_h */
@@ -330,7 +313,6 @@ enum nis_error {
NIS_DUMPLATER = 47,
};
typedef enum nis_error nis_error;
-extern bool_t xdr_nis_error __P ((XDR *, nis_error*));
struct nis_result {
nis_error status;
@@ -345,7 +327,6 @@ struct nis_result {
u_long cticks;
};
typedef struct nis_result nis_result;
-extern bool_t xdr_nis_result __P ((XDR *, nis_result*));
struct ns_request {
nis_name ns_name;
@@ -355,7 +336,6 @@ struct ns_request {
} ns_object;
};
typedef struct ns_request ns_request;
-extern bool_t xdr_ns_request __P ((XDR *, ns_request*));
struct ib_request {
nis_name ibr_name;
@@ -376,14 +356,12 @@ struct ib_request {
netobj ibr_cookie;
};
typedef struct ib_request ib_request;
-extern bool_t xdr_ib_request __P ((XDR *, ib_request*));
struct ping_args {
nis_name dir;
u_long stamp;
};
typedef struct ping_args ping_args;
-extern bool_t xdr_ping_args __P ((XDR *, ping_args*));
enum log_entry_t {
LOG_NOP = 0,
@@ -397,7 +375,6 @@ enum log_entry_t {
UPD_STAMP = 8,
};
typedef enum log_entry_t log_entry_t;
-extern bool_t xdr_log_entry_t __P ((XDR *, log_entry_t*));
struct log_entry {
u_long le_time;
@@ -411,7 +388,6 @@ struct log_entry {
nis_object le_object;
};
typedef struct log_entry log_entry;
-extern bool_t xdr_log_entry __P ((XDR *, log_entry*));
struct log_result {
nis_error lr_status;
@@ -422,7 +398,6 @@ struct log_result {
} lr_entries;
};
typedef struct log_result log_result;
-extern bool_t xdr_log_result __P ((XDR *, log_result*));
struct cp_result {
nis_error cp_status;
@@ -430,14 +405,12 @@ struct cp_result {
u_long cp_dticks;
};
typedef struct cp_result cp_result;
-extern bool_t xdr_cp_result __P ((XDR *, cp_result*));
struct nis_tag {
u_long tag_type;
char *tag_val;
};
typedef struct nis_tag nis_tag;
-extern bool_t xdr_nis_tag __P ((XDR *, nis_tag*));
struct nis_taglist {
struct {
@@ -446,7 +419,6 @@ struct nis_taglist {
} tags;
};
typedef struct nis_taglist nis_taglist;
-extern bool_t xdr_nis_taglist __P ((XDR *, nis_taglist*));
struct dump_args {
nis_name da_dir;
@@ -457,14 +429,12 @@ struct dump_args {
} da_cbhost;
};
typedef struct dump_args dump_args;
-extern bool_t xdr_dump_args __P ((XDR *, dump_args*));
struct fd_args {
nis_name dir_name;
nis_name requester;
};
typedef struct fd_args fd_args;
-extern bool_t xdr_fd_args __P ((XDR *, fd_args*));
struct fd_result {
nis_error status;
@@ -479,7 +449,6 @@ struct fd_result {
} signature;
};
typedef struct fd_result fd_result;
-extern bool_t xdr_fd_result __P ((XDR *, fd_result*));
/* Generic client creating flags */
#define ZMH_VC 1
diff --git a/nis/rpcsvc/nis_callback.h b/nis/rpcsvc/nis_callback.h
new file mode 100644
index 0000000000..526a633831
--- /dev/null
+++ b/nis/rpcsvc/nis_callback.h
@@ -0,0 +1,71 @@
+/*
+ * Sun RPC is a product of Sun Microsystems, Inc. and is provided for
+ * unrestricted use provided that this legend is included on all tape
+ * media and as a part of the software program in whole or part. Users
+ * may copy or modify Sun RPC without charge, but are not authorized
+ * to license or distribute it to anyone else except as part of a product or
+ * program developed by the user or with the express written consent of
+ * Sun Microsystems, Inc.
+ *
+ * SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE
+ * WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE.
+ *
+ * Sun RPC is provided with no support and without any obligation on the
+ * part of Sun Microsystems, Inc. to assist in its use, correction,
+ * modification or enhancement.
+ *
+ * SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE
+ * INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY SUN RPC
+ * OR ANY PART THEREOF.
+ *
+ * In no event will Sun Microsystems, Inc. be liable for any lost revenue
+ * or profits or other special, indirect and consequential damages, even if
+ * Sun has been advised of the possibility of such damages.
+ *
+ * Sun Microsystems, Inc.
+ * 2550 Garcia Avenue
+ * Mountain View, California 94043
+ */
+#ifndef _RPCSVC_NIS_CALLBACK_H
+#define _RPCSVC_NIS_CALLBACK_H 1
+
+#include <rpc/rpc.h>
+#include <rpcsvc/nis.h>
+
+__BEGIN_DECLS
+
+typedef nis_object *obj_p;
+
+struct cback_data {
+ struct {
+ u_int entries_len;
+ obj_p *entries_val;
+ } entries;
+};
+typedef struct cback_data cback_data;
+
+#define CB_PROG ((u_long)100302)
+#define CB_VERS ((u_long)1)
+
+#define CBPROC_RECEIVE ((u_long)1)
+extern bool_t * cbproc_receive_1 __P ((cback_data *, CLIENT *));
+extern bool_t * cbproc_receive_1_svc __P ((cback_data *, struct svc_req *));
+
+#define CBPROC_FINISH ((u_long)2)
+extern void * cbproc_finish_1 __P ((void *, CLIENT *));
+extern void * cbproc_finish_1_svc __P ((void *, struct svc_req *));
+
+#define CBPROC_ERROR ((u_long)3)
+extern void * cbproc_error_1 __P ((nis_error *, CLIENT *));
+extern void * cbproc_error_1_svc __P ((nis_error *, struct svc_req *));
+extern int cb_prog_1_freeresult __P ((SVCXPRT *, xdrproc_t, caddr_t));
+
+/* the xdr functions */
+
+extern bool_t xdr_obj_p __P ((XDR *, obj_p*));
+extern bool_t xdr_cback_data __P ((XDR *, cback_data*));
+
+__END_DECLS
+
+#endif /* !_RPCVSC_NIS_CALLBACK_H */