2 * Copyright 2000, International Business Machines Corporation and others.
5 * This software has been released under the terms of the IBM Public
6 * License. For details, see the LICENSE file in the top-level source
7 * directory or online at http://www.openafs.org/dl/license10.html
10 /*------------------------------------------------------------------------
14 * Definitions for package, the AFS workstation configuration
17 *------------------------------------------------------------------------*/
20 #include <sys/types.h>
23 * Flags specifying update actions
25 #define U_LOSTFOUND 0001
26 #define U_RMEXTRA 0002
27 #define U_NOOVERWRITE 0004
28 #define U_RENAMEOLD 0010
29 #define U_ABSPATH 0020
33 * Specification of prototype info
40 * Flag for ownership info
42 #define UID_INHERIT 01
43 #define GID_INHERIT 02
46 * Lookup modes for the configuration tree
52 * Flags for fields of config tree nodes
63 * Current operating status
65 #define status_noerror 0
66 #define status_error 2
67 #define status_reboot 4
69 typedef struct prototype_struct
71 u_short flag; /*Union tag, or specifies absence of prototype*/
73 char *path; /*Path, dir prefix, or absolute path of prototype*/
74 afs_uint32 rdev; /*Device number*/
78 typedef struct owner_struct
80 char *username; /*Associated owner*/
81 char *groupname; /*Associated group*/
84 typedef struct mode_struct
86 u_short inherit_flag; /*Specifies whether the mode is inherited
87 from the prototype or is given by the
94 struct entry *nextp; /*Ptr to next entry in the same dir*/
95 struct node *nodep; /*Ptr to config tree node w/info on this file*/
96 int hash; /*Hashed value for quick filename comparison*/
97 char *name; /*Actual file/directory name*/
102 ENTRYPTR entryp; /*Ptr to child list for this node, if a directory*/
103 u_short flag; /*Keeps track of updates to fields of this node*/
104 u_short type; /*Type of file/directory*/
105 u_short updtspec; /*Update spec*/
106 PROTOTYPE proto; /*Prototype info*/
107 short uid; /*Ownership info*/
108 short gid; /*Group info*/
109 u_short mode; /*Mode info*/
110 time_t mtime; /*Last modification time*/
113 extern int status; /*Operating status*/
114 extern int opt_lazy; /*Just tell what you would have done, don't do it*/
115 extern int opt_silent; /*Don't print any error messages*/
116 extern int opt_verbose; /*Be chatty?*/
117 extern int opt_reboot; /*Do files that will cause reboot*/
119 extern int opt_kflag; /* $$question: why was this ifdefed? */
121 extern int opt_debug; /*Turn debugging output on*/
123 extern CTREEPTR config_root; /*Top of the config tree*/