ypupd.h 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  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. #ifndef __RPCSVC_YPUPD_H__
  35. #define __RPCSVC_YPUPD_H__
  36. #include <features.h>
  37. #include <rpc/rpc.h>
  38. #define MAXMAPNAMELEN 255
  39. #define MAXYPDATALEN 1023
  40. #define MAXERRMSGLEN 255
  41. __BEGIN_DECLS
  42. typedef struct {
  43. u_int yp_buf_len;
  44. char *yp_buf_val;
  45. } yp_buf;
  46. extern bool_t xdr_yp_buf (XDR *, yp_buf*);
  47. struct ypupdate_args {
  48. char *mapname;
  49. yp_buf key;
  50. yp_buf datum;
  51. };
  52. typedef struct ypupdate_args ypupdate_args;
  53. extern bool_t xdr_ypupdate_args (XDR *, ypupdate_args*);
  54. struct ypdelete_args {
  55. char *mapname;
  56. yp_buf key;
  57. };
  58. typedef struct ypdelete_args ypdelete_args;
  59. extern bool_t xdr_ypdelete_args (XDR *, ypdelete_args*);
  60. #define YPU_PROG 100028
  61. #define YPU_VERS 1
  62. #define YPU_CHANGE 1
  63. extern u_int * ypu_change_1 (ypupdate_args *, CLIENT *);
  64. extern u_int * ypu_change_1_svc (ypupdate_args *, struct svc_req *);
  65. #define YPU_INSERT 2
  66. extern u_int * ypu_insert_1 (ypupdate_args *, CLIENT *);
  67. extern u_int * ypu_insert_1_svc (ypupdate_args *, struct svc_req *);
  68. #define YPU_DELETE 3
  69. extern u_int * ypu_delete_1 (ypdelete_args *, CLIENT *);
  70. extern u_int * ypu_delete_1_svc (ypdelete_args *, struct svc_req *);
  71. #define YPU_STORE 4
  72. extern u_int * ypu_store_1 (ypupdate_args *, CLIENT *);
  73. extern u_int * ypu_store_1_svc (ypupdate_args *, struct svc_req *);
  74. __END_DECLS
  75. #endif /* !__RPCSVC_YPUPD_H__ */