1 /* 2 * Sun RPC is a product of Sun Microsystems, Inc. and is provided for 3 * unrestricted use provided that this legend is included on all tape 4 * media and as a part of the software program in whole or part. Users 5 * may copy or modify Sun RPC without charge, but are not authorized 6 * to license or distribute it to anyone else except as part of a product or 7 * program developed by the user or with the express written consent of 8 * Sun Microsystems, Inc. 9 * 10 * SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE 11 * WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR 12 * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE. 13 * 14 * Sun RPC is provided with no support and without any obligation on the 15 * part of Sun Microsystems, Inc. to assist in its use, correction, 16 * modification or enhancement. 17 * 18 * SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE 19 * INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY SUN RPC 20 * OR ANY PART THEREOF. 21 * 22 * In no event will Sun Microsystems, Inc. be liable for any lost revenue 23 * or profits or other special, indirect and consequential damages, even if 24 * Sun has been advised of the possibility of such damages. 25 * 26 * Sun Microsystems, Inc. 27 * 2550 Garcia Avenue 28 * Mountain View, California 94043 29 */ 30 /* 31 * Copyright (c) 1986, 1990 by Sun Microsystems, Inc. 32 */ 33 /* from @(#)ypupdate_prot.x 1.3 91/03/11 TIRPC 1.0 */ 34 35 #ifndef __RPCSVC_YPUPD_H__ 36 #define __RPCSVC_YPUPD_H__ 37 38 #include <features.h> 39 40 #include <rpc/rpc.h> 41 42 #define MAXMAPNAMELEN 255 43 #define MAXYPDATALEN 1023 44 #define MAXERRMSGLEN 255 45 46 __BEGIN_DECLS 47 48 typedef struct { 49 u_int yp_buf_len; 50 char *yp_buf_val; 51 } yp_buf; 52 53 extern bool_t xdr_yp_buf (XDR *, yp_buf*); 54 55 struct ypupdate_args { 56 char *mapname; 57 yp_buf key; 58 yp_buf datum; 59 }; 60 typedef struct ypupdate_args ypupdate_args; 61 62 extern bool_t xdr_ypupdate_args (XDR *, ypupdate_args*); 63 64 struct ypdelete_args { 65 char *mapname; 66 yp_buf key; 67 }; 68 typedef struct ypdelete_args ypdelete_args; 69 70 extern bool_t xdr_ypdelete_args (XDR *, ypdelete_args*); 71 72 #define YPU_PROG 100028 73 #define YPU_VERS 1 74 75 #define YPU_CHANGE 1 76 extern u_int * ypu_change_1 (ypupdate_args *, CLIENT *); 77 extern u_int * ypu_change_1_svc (ypupdate_args *, struct svc_req *); 78 #define YPU_INSERT 2 79 extern u_int * ypu_insert_1 (ypupdate_args *, CLIENT *); 80 extern u_int * ypu_insert_1_svc (ypupdate_args *, struct svc_req *); 81 #define YPU_DELETE 3 82 extern u_int * ypu_delete_1 (ypdelete_args *, CLIENT *); 83 extern u_int * ypu_delete_1_svc (ypdelete_args *, struct svc_req *); 84 #define YPU_STORE 4 85 extern u_int * ypu_store_1 (ypupdate_args *, CLIENT *); 86 extern u_int * ypu_store_1_svc (ypupdate_args *, struct svc_req *); 87 88 __END_DECLS 89 90 #endif /* !__RPCSVC_YPUPD_H__ */ 91