home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Source Code 1993 July / THE_SOURCE_CODE_CD_ROM.iso / bsd_srcs / usr.sbin / amd / rpcx / amq.h < prev    next >
Encoding:
C/C++ Source or Header  |  1991-05-12  |  4.4 KB  |  154 lines

  1. /*
  2.  * Copyright (c) 1990 Jan-Simon Pendry
  3.  * Copyright (c) 1990 Imperial College of Science, Technology & Medicine
  4.  * Copyright (c) 1990 The Regents of the University of California.
  5.  * All rights reserved.
  6.  *
  7.  * This code is derived from software contributed to Berkeley by
  8.  * Jan-Simon Pendry at Imperial College, London.
  9.  *
  10.  * Redistribution and use in source and binary forms, with or without
  11.  * modification, are permitted provided that the following conditions
  12.  * are met:
  13.  * 1. Redistributions of source code must retain the above copyright
  14.  *    notice, this list of conditions and the following disclaimer.
  15.  * 2. Redistributions in binary form must reproduce the above copyright
  16.  *    notice, this list of conditions and the following disclaimer in the
  17.  *    documentation and/or other materials provided with the distribution.
  18.  * 3. All advertising materials mentioning features or use of this software
  19.  *    must display the following acknowledgement:
  20.  *    This product includes software developed by the University of
  21.  *    California, Berkeley and its contributors.
  22.  * 4. Neither the name of the University nor the names of its contributors
  23.  *    may be used to endorse or promote products derived from this software
  24.  *    without specific prior written permission.
  25.  *
  26.  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  27.  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  28.  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  29.  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  30.  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  31.  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  32.  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  33.  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  34.  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  35.  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  36.  * SUCH DAMAGE.
  37.  *
  38.  *    @(#)amq.h    5.3 (Berkeley) 5/12/91
  39.  *
  40.  * $Id: amq.h,v 5.2.1.3 91/05/07 22:18:49 jsp Alpha $
  41.  *
  42.  */
  43.  
  44. #define AMQ_STRLEN 1024
  45.  
  46. typedef char *amq_string;
  47. bool_t xdr_amq_string();
  48.  
  49.  
  50. typedef long *time_type;
  51. bool_t xdr_time_type();
  52.  
  53.  
  54. struct amq_mount_tree {
  55.     amq_string mt_mountinfo;
  56.     amq_string mt_directory;
  57.     amq_string mt_mountpoint;
  58.     amq_string mt_type;
  59.     time_type mt_mounttime;
  60.     u_short mt_mountuid;
  61.     int mt_getattr;
  62.     int mt_lookup;
  63.     int mt_readdir;
  64.     int mt_readlink;
  65.     int mt_statfs;
  66.     struct amq_mount_tree *mt_next;
  67.     struct amq_mount_tree *mt_child;
  68. };
  69. typedef struct amq_mount_tree amq_mount_tree;
  70. bool_t xdr_amq_mount_tree();
  71.  
  72.  
  73. typedef amq_mount_tree *amq_mount_tree_p;
  74. bool_t xdr_amq_mount_tree_p();
  75.  
  76.  
  77. struct amq_mount_info {
  78.     amq_string mi_type;
  79.     amq_string mi_mountpt;
  80.     amq_string mi_mountinfo;
  81.     amq_string mi_fserver;
  82.     int mi_error;
  83.     int mi_refc;
  84.     int mi_up;
  85. };
  86. typedef struct amq_mount_info amq_mount_info;
  87. bool_t xdr_amq_mount_info();
  88.  
  89.  
  90. typedef struct {
  91.     u_int amq_mount_info_list_len;
  92.     amq_mount_info *amq_mount_info_list_val;
  93. } amq_mount_info_list;
  94. bool_t xdr_amq_mount_info_list();
  95.  
  96.  
  97. typedef struct {
  98.     u_int amq_mount_tree_list_len;
  99.     amq_mount_tree_p *amq_mount_tree_list_val;
  100. } amq_mount_tree_list;
  101. bool_t xdr_amq_mount_tree_list();
  102.  
  103.  
  104. struct amq_mount_stats {
  105.     int as_drops;
  106.     int as_stale;
  107.     int as_mok;
  108.     int as_merr;
  109.     int as_uerr;
  110. };
  111. typedef struct amq_mount_stats amq_mount_stats;
  112. bool_t xdr_amq_mount_stats();
  113.  
  114.  
  115. enum amq_opt {
  116.     AMOPT_DEBUG = 0,
  117.     AMOPT_LOGFILE = 1,
  118.     AMOPT_XLOG = 2,
  119.     AMOPT_FLUSHMAPC = 3
  120. };
  121. typedef enum amq_opt amq_opt;
  122. bool_t xdr_amq_opt();
  123.  
  124.  
  125. struct amq_setopt {
  126.     amq_opt as_opt;
  127.     amq_string as_str;
  128. };
  129. typedef struct amq_setopt amq_setopt;
  130. bool_t xdr_amq_setopt();
  131.  
  132.  
  133. #define AMQ_PROGRAM ((u_long)300019)
  134. #define AMQ_VERSION ((u_long)1)
  135. #define AMQPROC_NULL ((u_long)0)
  136. extern voidp amqproc_null_1();
  137. #define AMQPROC_MNTTREE ((u_long)1)
  138. extern amq_mount_tree_p *amqproc_mnttree_1();
  139. #define AMQPROC_UMNT ((u_long)2)
  140. extern voidp amqproc_umnt_1();
  141. #define AMQPROC_STATS ((u_long)3)
  142. extern amq_mount_stats *amqproc_stats_1();
  143. #define AMQPROC_EXPORT ((u_long)4)
  144. extern amq_mount_tree_list *amqproc_export_1();
  145. #define AMQPROC_SETOPT ((u_long)5)
  146. extern int *amqproc_setopt_1();
  147. #define AMQPROC_GETMNTFS ((u_long)6)
  148. extern amq_mount_info_list *amqproc_getmntfs_1();
  149. #define AMQPROC_MOUNT ((u_long)7)
  150. extern int *amqproc_mount_1();
  151. #define AMQPROC_GETVERS ((u_long)8)
  152. extern amq_string *amqproc_getvers_1();
  153.  
  154.