1 /* 2 * Please do not edit this file. 3 * It was generated using rpcgen. 4 */ 5 6 #ifndef _NSM_ADDR_H_RPCGEN 7 #define _NSM_ADDR_H_RPCGEN 8 9 #include <rpc/rpc.h> 10 #ifndef _KERNEL 11 #include <synch.h> 12 #include <thread.h> 13 #endif /* !_KERNEL */ 14 15 #ifdef __cplusplus 16 extern "C" { 17 #endif 18 19 /* 20 * Copyright 2005 Sun Microsystems, Inc. All rights reserved. 21 * Use is subject to license terms. 22 * 23 * CDDL HEADER START 24 * 25 * The contents of this file are subject to the terms of the 26 * Common Development and Distribution License, Version 1.0 only 27 * (the "License"). You may not use this file except in compliance 28 * with the License. 29 * 30 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 31 * or http://www.opensolaris.org/os/licensing. 32 * See the License for the specific language governing permissions 33 * and limitations under the License. 34 * 35 * When distributing Covered Code, include this CDDL HEADER in each 36 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 37 * If applicable, add the following below this CDDL HEADER, with the 38 * fields enclosed by brackets "[]" replaced with your own identifying 39 * information: Portions Copyright [yyyy] [name of copyright owner] 40 * 41 * CDDL HEADER END 42 */ 43 44 #pragma ident "%Z%%M% %I% %E% SMI" 45 46 /* from nsm_addr.x */ 47 48 /* 49 * This is the definition for the REG procedure which is used 50 * to register name/address pairs with statd. 51 */ 52 53 54 enum nsm_addr_res { 55 nsm_addr_succ = 0, 56 nsm_addr_fail = 1 57 }; 58 typedef enum nsm_addr_res nsm_addr_res; 59 60 struct reg1args { 61 u_int family; 62 char *name; 63 netobj address; 64 }; 65 typedef struct reg1args reg1args; 66 67 struct reg1res { 68 nsm_addr_res status; 69 }; 70 typedef struct reg1res reg1res; 71 72 /* 73 * This is the definition for the UNREG procedure which is used 74 * to unregister an address (and its associated name, if that name 75 * has no other addresses registered with it) with statd. 76 */ 77 78 struct unreg1args { 79 u_int family; 80 char *name; 81 netobj address; 82 }; 83 typedef struct unreg1args unreg1args; 84 85 struct unreg1res { 86 nsm_addr_res status; 87 }; 88 typedef struct unreg1res unreg1res; 89 90 /* 91 * This is the definition for the NSM address registration network 92 * protocol which is used to privately support address registration 93 * with the status daemon statd (NSM). 94 */ 95 96 #define NSM_ADDR_PROGRAM 100133 97 #define NSM_ADDR_V1 1 98 99 #if defined(__STDC__) || defined(__cplusplus) 100 #define NSMADDRPROC1_NULL 0 101 extern enum clnt_stat nsmaddrproc1_null_1(void *, void *, CLIENT *); 102 extern bool_t nsmaddrproc1_null_1_svc(void *, void *, struct svc_req *); 103 #define NSMADDRPROC1_REG 1 104 extern enum clnt_stat nsmaddrproc1_reg_1(reg1args *, reg1res *, CLIENT *); 105 extern bool_t nsmaddrproc1_reg_1_svc(reg1args *, reg1res *, struct svc_req *); 106 #define NSMADDRPROC1_UNREG 2 107 extern enum clnt_stat nsmaddrproc1_unreg_1(unreg1args *, unreg1res *, CLIENT *); 108 extern bool_t nsmaddrproc1_unreg_1_svc(unreg1args *, unreg1res *, struct svc_req *); 109 extern int nsm_addr_program_1_freeresult(SVCXPRT *, xdrproc_t, caddr_t); 110 111 #else /* K&R C */ 112 #define NSMADDRPROC1_NULL 0 113 extern enum clnt_stat nsmaddrproc1_null_1(); 114 extern bool_t nsmaddrproc1_null_1_svc(); 115 #define NSMADDRPROC1_REG 1 116 extern enum clnt_stat nsmaddrproc1_reg_1(); 117 extern bool_t nsmaddrproc1_reg_1_svc(); 118 #define NSMADDRPROC1_UNREG 2 119 extern enum clnt_stat nsmaddrproc1_unreg_1(); 120 extern bool_t nsmaddrproc1_unreg_1_svc(); 121 extern int nsm_addr_program_1_freeresult(); 122 #endif /* K&R C */ 123 124 /* the xdr functions */ 125 126 #if defined(__STDC__) || defined(__cplusplus) 127 extern bool_t xdr_nsm_addr_res(XDR *, nsm_addr_res*); 128 extern bool_t xdr_reg1args(XDR *, reg1args*); 129 extern bool_t xdr_reg1res(XDR *, reg1res*); 130 extern bool_t xdr_unreg1args(XDR *, unreg1args*); 131 extern bool_t xdr_unreg1res(XDR *, unreg1res*); 132 133 #else /* K&R C */ 134 extern bool_t xdr_nsm_addr_res(); 135 extern bool_t xdr_reg1args(); 136 extern bool_t xdr_reg1res(); 137 extern bool_t xdr_unreg1args(); 138 extern bool_t xdr_unreg1res(); 139 140 #endif /* K&R C */ 141 142 #ifdef __cplusplus 143 } 144 #endif 145 146 #endif /* !_NSM_ADDR_H_RPCGEN */ 147