xref: /csrg-svn/usr.sbin/amd/rpcx/amq.h (revision 44928)
1*44928Smckusick /*
2*44928Smckusick  * $Id: amq.h,v 5.2 90/06/23 22:20:13 jsp Rel $
3*44928Smckusick  *
4*44928Smckusick  * Copyright (c) 1990 Jan-Simon Pendry
5*44928Smckusick  * Copyright (c) 1990 Imperial College of Science, Technology & Medicine
6*44928Smckusick  * Copyright (c) 1990 The Regents of the University of California.
7*44928Smckusick  * All rights reserved.
8*44928Smckusick  *
9*44928Smckusick  * This code is derived from software contributed to Berkeley by
10*44928Smckusick  * Jan-Simon Pendry at Imperial College, London.
11*44928Smckusick  *
12*44928Smckusick  * %sccs.include.redist.c%
13*44928Smckusick  *
14*44928Smckusick  *	@(#)amq.h	5.1 (Berkeley) 07/19/90
15*44928Smckusick  */
16*44928Smckusick 
17*44928Smckusick #define AMQ_STRLEN 1024
18*44928Smckusick 
19*44928Smckusick typedef char *amq_string;
20*44928Smckusick bool_t xdr_amq_string();
21*44928Smckusick 
22*44928Smckusick 
23*44928Smckusick typedef long *time_type;
24*44928Smckusick bool_t xdr_time_type();
25*44928Smckusick 
26*44928Smckusick 
27*44928Smckusick struct amq_mount_tree {
28*44928Smckusick 	amq_string mt_mountinfo;
29*44928Smckusick 	amq_string mt_directory;
30*44928Smckusick 	amq_string mt_mountpoint;
31*44928Smckusick 	amq_string mt_type;
32*44928Smckusick 	time_type mt_mounttime;
33*44928Smckusick 	u_short mt_mountuid;
34*44928Smckusick 	int mt_getattr;
35*44928Smckusick 	int mt_lookup;
36*44928Smckusick 	int mt_readdir;
37*44928Smckusick 	int mt_readlink;
38*44928Smckusick 	int mt_statfs;
39*44928Smckusick 	struct amq_mount_tree *mt_next;
40*44928Smckusick 	struct amq_mount_tree *mt_child;
41*44928Smckusick };
42*44928Smckusick typedef struct amq_mount_tree amq_mount_tree;
43*44928Smckusick bool_t xdr_amq_mount_tree();
44*44928Smckusick 
45*44928Smckusick 
46*44928Smckusick typedef amq_mount_tree *amq_mount_tree_p;
47*44928Smckusick bool_t xdr_amq_mount_tree_p();
48*44928Smckusick 
49*44928Smckusick 
50*44928Smckusick struct amq_mount_info {
51*44928Smckusick 	amq_string mi_type;
52*44928Smckusick 	amq_string mi_mountpt;
53*44928Smckusick 	amq_string mi_mountinfo;
54*44928Smckusick 	amq_string mi_fserver;
55*44928Smckusick 	int mi_error;
56*44928Smckusick 	int mi_refc;
57*44928Smckusick 	int mi_up;
58*44928Smckusick };
59*44928Smckusick typedef struct amq_mount_info amq_mount_info;
60*44928Smckusick bool_t xdr_amq_mount_info();
61*44928Smckusick 
62*44928Smckusick 
63*44928Smckusick typedef struct {
64*44928Smckusick 	u_int amq_mount_info_list_len;
65*44928Smckusick 	amq_mount_info *amq_mount_info_list_val;
66*44928Smckusick } amq_mount_info_list;
67*44928Smckusick bool_t xdr_amq_mount_info_list();
68*44928Smckusick 
69*44928Smckusick 
70*44928Smckusick typedef struct {
71*44928Smckusick 	u_int amq_mount_tree_list_len;
72*44928Smckusick 	amq_mount_tree_p *amq_mount_tree_list_val;
73*44928Smckusick } amq_mount_tree_list;
74*44928Smckusick bool_t xdr_amq_mount_tree_list();
75*44928Smckusick 
76*44928Smckusick 
77*44928Smckusick struct amq_mount_stats {
78*44928Smckusick 	int as_drops;
79*44928Smckusick 	int as_stale;
80*44928Smckusick 	int as_mok;
81*44928Smckusick 	int as_merr;
82*44928Smckusick 	int as_uerr;
83*44928Smckusick };
84*44928Smckusick typedef struct amq_mount_stats amq_mount_stats;
85*44928Smckusick bool_t xdr_amq_mount_stats();
86*44928Smckusick 
87*44928Smckusick 
88*44928Smckusick enum amq_opt {
89*44928Smckusick 	AMOPT_DEBUG = 0,
90*44928Smckusick 	AMOPT_LOGFILE = 1,
91*44928Smckusick 	AMOPT_XLOG = 2,
92*44928Smckusick 	AMOPT_FLUSHMAPC = 3
93*44928Smckusick };
94*44928Smckusick typedef enum amq_opt amq_opt;
95*44928Smckusick bool_t xdr_amq_opt();
96*44928Smckusick 
97*44928Smckusick 
98*44928Smckusick struct amq_setopt {
99*44928Smckusick 	amq_opt as_opt;
100*44928Smckusick 	amq_string as_str;
101*44928Smckusick };
102*44928Smckusick typedef struct amq_setopt amq_setopt;
103*44928Smckusick bool_t xdr_amq_setopt();
104*44928Smckusick 
105*44928Smckusick 
106*44928Smckusick #define AMQ_PROGRAM ((u_long)300019)
107*44928Smckusick #define AMQ_VERSION ((u_long)1)
108*44928Smckusick #define AMQPROC_NULL ((u_long)0)
109*44928Smckusick extern voidp amqproc_null_1();
110*44928Smckusick #define AMQPROC_MNTTREE ((u_long)1)
111*44928Smckusick extern amq_mount_tree_p *amqproc_mnttree_1();
112*44928Smckusick #define AMQPROC_UMNT ((u_long)2)
113*44928Smckusick extern voidp amqproc_umnt_1();
114*44928Smckusick #define AMQPROC_STATS ((u_long)3)
115*44928Smckusick extern amq_mount_stats *amqproc_stats_1();
116*44928Smckusick #define AMQPROC_EXPORT ((u_long)4)
117*44928Smckusick extern amq_mount_tree_list *amqproc_export_1();
118*44928Smckusick #define AMQPROC_SETOPT ((u_long)5)
119*44928Smckusick extern int *amqproc_setopt_1();
120*44928Smckusick #define AMQPROC_GETMNTFS ((u_long)6)
121*44928Smckusick extern amq_mount_info_list *amqproc_getmntfs_1();
122*44928Smckusick 
123