1 | /* |
---|
2 | * Contains the local configuration information for attach/detach/nfsid |
---|
3 | * $Id: config.h,v 1.15 1993-05-05 17:04:52 vrt Exp $ |
---|
4 | * |
---|
5 | * Configuration defines |
---|
6 | * |
---|
7 | * Warning: attach may not compile if NFS is not defined... given |
---|
8 | * that attach was originally designed just for NFS filesystems, |
---|
9 | * this isn't so surprising. Sigh. This is true, to a lesser |
---|
10 | * extent, for KERBEROS. |
---|
11 | * |
---|
12 | * NEED_STRTOK means that we're on a system that does not have |
---|
13 | * strtok() support in libc (usually pre BSD 4.3 systems). |
---|
14 | * |
---|
15 | * OLD_KERBEROS means we're compiling with the old, buggy kerberos |
---|
16 | * library. This is necessary because of release skew. Note that the |
---|
17 | * same gratuitous name changes took place between the new and old |
---|
18 | * kerberos libraries. |
---|
19 | */ |
---|
20 | |
---|
21 | #define NFS |
---|
22 | #define AFS |
---|
23 | |
---|
24 | #if (defined(vax) && !defined(ultrix)) || defined(ibm032) || defined(i386) |
---|
25 | #define RVD |
---|
26 | #endif |
---|
27 | #if defined(sun) |
---|
28 | #define NFSCLIENT |
---|
29 | #endif |
---|
30 | #if !defined(_AIX) |
---|
31 | #define UFS |
---|
32 | #endif |
---|
33 | |
---|
34 | #define ZEPHYR |
---|
35 | #define HESIOD |
---|
36 | #define KERBEROS |
---|
37 | |
---|
38 | #define ATHENA_COMPAT73 /* 7.3 fsid compatibility */ |
---|
39 | |
---|
40 | /* |
---|
41 | * Other external filenames |
---|
42 | */ |
---|
43 | #define ATTACHCONFFILE "/etc/athena/attach.conf" |
---|
44 | #define ATTACHTAB "/usr/tmp/attachtab" |
---|
45 | #define FSCK_FULLNAME "/etc/fsck" |
---|
46 | #define FSCK_SHORTNAME "fsck" |
---|
47 | #define AKLOG_FULLNAME "/bin/athena/aklog" |
---|
48 | #define AKLOG_SHORTNAME "aklog" |
---|
49 | #define RVDGETM_FULLNAME "/etc/athena/rvdgetm" |
---|
50 | #define RVDGETM_SHORTNAME "rvdgetm" |
---|
51 | |
---|
52 | #if defined(_AIX) && defined(i386) |
---|
53 | #define MTAB "/local/mtab" |
---|
54 | #else |
---|
55 | #if defined(SOLARIS) |
---|
56 | #define MTAB "/etc/mnttab" |
---|
57 | #else |
---|
58 | #define MTAB "/etc/mtab" |
---|
59 | #endif |
---|
60 | #endif |
---|
61 | |
---|
62 | /* |
---|
63 | * Kerberos instance |
---|
64 | */ |
---|
65 | #if defined(KERBEROS) && defined(NFS) |
---|
66 | #define KERB_NFSID_INST "rvdsrv" |
---|
67 | #endif |
---|
68 | |
---|
69 | /* |
---|
70 | * Default mount directory for afs |
---|
71 | */ |
---|
72 | #ifdef AFS |
---|
73 | #define AFS_MOUNT_DIR "/mit" |
---|
74 | #endif |
---|
75 | |
---|
76 | /* |
---|
77 | * This is the type of function required by signal. Since it changes |
---|
78 | * from system to system, it is declared here. |
---|
79 | */ |
---|
80 | #if defined(POSIX) && !defined(vax) |
---|
81 | typedef void sig_catch; |
---|
82 | #else |
---|
83 | typedef int sig_catch; |
---|
84 | #if !defined(sun) |
---|
85 | char *malloc(); |
---|
86 | #endif |
---|
87 | #endif |
---|
88 | |
---|
89 | #if defined(ultrix) && !defined(vax) |
---|
90 | /* Ultrix vax compiler complains about void * casting */ |
---|
91 | #include <malloc.h> |
---|
92 | #endif |
---|
93 | |
---|
94 | /* |
---|
95 | * This is a set of horrible hacks to make attach support Ultrix as |
---|
96 | * easily as possible. Praise (and Blame) belongs to John Kohl. |
---|
97 | */ |
---|
98 | #ifdef ultrix |
---|
99 | /* need to re-name some structures for Ultrix */ |
---|
100 | #define ufs_args ufs_specific |
---|
101 | #define nfs_args nfs_gfs_mount |
---|
102 | |
---|
103 | /* define a struct mntent for convenience of mount.c & unmount.c. Used |
---|
104 | mainly as a convenient place to store pointers to stuff needed |
---|
105 | for the Ultrix mount() and umount() syscalls. */ |
---|
106 | |
---|
107 | struct mntent { |
---|
108 | char *mnt_fsname; |
---|
109 | char *mnt_dir; |
---|
110 | int mnt_type; |
---|
111 | char *mnt_opts; |
---|
112 | int mnt_freq; |
---|
113 | int mnt_passno; |
---|
114 | }; |
---|
115 | |
---|
116 | /* hacks for filesystem type */ |
---|
117 | #define MOUNT_NFS GT_NFS |
---|
118 | #define MOUNT_UFS GT_ULTRIX |
---|
119 | |
---|
120 | /* hacks for M_ names */ |
---|
121 | #define M_RDONLY M_RONLY |
---|
122 | |
---|
123 | #define PGUNITS 1024 /* to convert MINPGTHRESH to K */ |
---|
124 | #define DEFPGTHRESH 64 /* default page threshhold */ |
---|
125 | |
---|
126 | #endif /* ultrix compat stuff */ |
---|
127 | |
---|
128 | /* These are not defined or recognized by the system, but they are useful |
---|
129 | to allow common data structures with systems that do have these defines */ |
---|
130 | #if defined(_AIX) || defined(sun) |
---|
131 | #define MOUNT_UFS 1 |
---|
132 | #define MOUNT_NFS 2 |
---|
133 | #endif |
---|