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