File indexing completed on 2025-01-18 10:12:36
0001
0002
0003
0004
0005
0006 #ifndef _BOOTPARAM_PROT_H_RPCGEN
0007 #define _BOOTPARAM_PROT_H_RPCGEN
0008
0009 #include <rpc/rpc.h>
0010
0011
0012 #ifdef __cplusplus
0013 extern "C" {
0014 #endif
0015
0016 #include <rpc/types.h>
0017 #include <sys/time.h>
0018 #include <sys/errno.h>
0019 #include <nfs/nfs.h>
0020 #define MAX_MACHINE_NAME 255
0021 #define MAX_PATH_LEN 1024
0022 #define MAX_FILEID 32
0023 #define IP_ADDR_TYPE 1
0024
0025 typedef char *bp_machine_name_t;
0026
0027 typedef char *bp_path_t;
0028
0029 typedef char *bp_fileid_t;
0030
0031 struct ip_addr_t {
0032 char net;
0033 char host;
0034 char lh;
0035 char impno;
0036 };
0037 typedef struct ip_addr_t ip_addr_t;
0038
0039 struct bp_address {
0040 int address_type;
0041 union {
0042 ip_addr_t ip_addr;
0043 } bp_address_u;
0044 };
0045 typedef struct bp_address bp_address;
0046
0047 struct bp_whoami_arg {
0048 bp_address client_address;
0049 };
0050 typedef struct bp_whoami_arg bp_whoami_arg;
0051
0052 struct bp_whoami_res {
0053 bp_machine_name_t client_name;
0054 bp_machine_name_t domain_name;
0055 bp_address router_address;
0056 };
0057 typedef struct bp_whoami_res bp_whoami_res;
0058
0059 struct bp_getfile_arg {
0060 bp_machine_name_t client_name;
0061 bp_fileid_t file_id;
0062 };
0063 typedef struct bp_getfile_arg bp_getfile_arg;
0064
0065 struct bp_getfile_res {
0066 bp_machine_name_t server_name;
0067 bp_address server_address;
0068 bp_path_t server_path;
0069 };
0070 typedef struct bp_getfile_res bp_getfile_res;
0071
0072 #define BOOTPARAMPROG 100026
0073 #define BOOTPARAMVERS 1
0074
0075 #if defined(__STDC__) || defined(__cplusplus)
0076 #define BOOTPARAMPROC_WHOAMI 1
0077 extern bp_whoami_res * bootparamproc_whoami_1(bp_whoami_arg *, CLIENT *);
0078 extern bp_whoami_res * bootparamproc_whoami_1_svc(bp_whoami_arg *, struct svc_req *);
0079 #define BOOTPARAMPROC_GETFILE 2
0080 extern bp_getfile_res * bootparamproc_getfile_1(bp_getfile_arg *, CLIENT *);
0081 extern bp_getfile_res * bootparamproc_getfile_1_svc(bp_getfile_arg *, struct svc_req *);
0082 extern int bootparamprog_1_freeresult (SVCXPRT *, xdrproc_t, caddr_t);
0083
0084 #else
0085 #define BOOTPARAMPROC_WHOAMI 1
0086 extern bp_whoami_res * bootparamproc_whoami_1();
0087 extern bp_whoami_res * bootparamproc_whoami_1_svc();
0088 #define BOOTPARAMPROC_GETFILE 2
0089 extern bp_getfile_res * bootparamproc_getfile_1();
0090 extern bp_getfile_res * bootparamproc_getfile_1_svc();
0091 extern int bootparamprog_1_freeresult ();
0092 #endif
0093
0094
0095
0096 #if defined(__STDC__) || defined(__cplusplus)
0097 extern bool_t xdr_bp_machine_name_t (XDR *, bp_machine_name_t*);
0098 extern bool_t xdr_bp_path_t (XDR *, bp_path_t*);
0099 extern bool_t xdr_bp_fileid_t (XDR *, bp_fileid_t*);
0100 extern bool_t xdr_ip_addr_t (XDR *, ip_addr_t*);
0101 extern bool_t xdr_bp_address (XDR *, bp_address*);
0102 extern bool_t xdr_bp_whoami_arg (XDR *, bp_whoami_arg*);
0103 extern bool_t xdr_bp_whoami_res (XDR *, bp_whoami_res*);
0104 extern bool_t xdr_bp_getfile_arg (XDR *, bp_getfile_arg*);
0105 extern bool_t xdr_bp_getfile_res (XDR *, bp_getfile_res*);
0106
0107 #else
0108 extern bool_t xdr_bp_machine_name_t ();
0109 extern bool_t xdr_bp_path_t ();
0110 extern bool_t xdr_bp_fileid_t ();
0111 extern bool_t xdr_ip_addr_t ();
0112 extern bool_t xdr_bp_address ();
0113 extern bool_t xdr_bp_whoami_arg ();
0114 extern bool_t xdr_bp_whoami_res ();
0115 extern bool_t xdr_bp_getfile_arg ();
0116 extern bool_t xdr_bp_getfile_res ();
0117
0118 #endif
0119
0120 #ifdef __cplusplus
0121 }
0122 #endif
0123
0124 #endif