Commit | Line | Data |
---|---|---|
805e021f CE |
1 | /* |
2 | * Copyright 2000, International Business Machines Corporation and others. | |
3 | * All Rights Reserved. | |
4 | * | |
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 | |
8 | */ | |
9 | ||
10 | /* /usr/andrew/include/vice/ioctl.h | |
11 | ||
12 | Definitions of Venus-specific ioctls for Venus 2. | |
13 | */ | |
14 | ||
15 | #ifndef AFS_VENUS_H | |
16 | #define AFS_VENUS_H | |
17 | ||
18 | /* The VIOC* constants are defined here. */ | |
19 | #include <afs/vioc.h> | |
20 | ||
21 | #if !defined(UKERNEL) | |
22 | ||
23 | #include <netinet/in.h> | |
24 | ||
25 | /* some structures used with CM pioctls */ | |
26 | ||
27 | /* structs for Get/Set server preferences pioctl | |
28 | */ | |
29 | struct spref { | |
30 | struct in_addr server; | |
31 | unsigned short rank; | |
32 | }; | |
33 | ||
34 | struct sprefrequest_33 { | |
35 | unsigned short offset; | |
36 | unsigned short num_servers; | |
37 | }; | |
38 | ||
39 | struct sprefrequest { /* new struct for 3.4 */ | |
40 | unsigned short offset; | |
41 | unsigned short num_servers; | |
42 | unsigned short flags; | |
43 | }; | |
44 | #define DBservers 1 | |
45 | ||
46 | struct sprefinfo { | |
47 | unsigned short next_offset; | |
48 | unsigned short num_servers; | |
49 | struct spref servers[1]; /* we overrun this array intentionally... */ | |
50 | }; | |
51 | ||
52 | struct setspref { | |
53 | unsigned short flags; | |
54 | unsigned short num_servers; | |
55 | struct spref servers[1]; /* we overrun this array intentionally... */ | |
56 | }; | |
57 | /* struct for GAG pioctl | |
58 | */ | |
59 | struct gaginfo { | |
60 | afs_uint32 showflags, logflags, logwritethruflag, spare[3]; | |
61 | unsigned char spare2[128]; | |
62 | }; | |
63 | #define GAGUSER 1 | |
64 | #define GAGCONSOLE 2 | |
65 | #define logwritethruON 1 | |
66 | ||
67 | ||
68 | struct rxparams { | |
69 | afs_int32 rx_initReceiveWindow, rx_maxReceiveWindow, rx_initSendWindow, | |
70 | rx_maxSendWindow, rxi_nSendFrags, rxi_nRecvFrags, rxi_OrphanFragSize; | |
71 | afs_int32 rx_maxReceiveSize, rx_MyMaxSendSize; | |
72 | afs_uint32 spare[21]; | |
73 | }; | |
74 | ||
75 | /* struct for checkservers */ | |
76 | ||
77 | struct chservinfo { | |
78 | int magic; | |
79 | char tbuffer[128]; | |
80 | int tsize; | |
81 | afs_int32 tinterval; | |
82 | afs_int32 tflags; | |
83 | }; | |
84 | ||
85 | struct sbstruct { | |
86 | int sb_thisfile; | |
87 | int sb_default; | |
88 | }; | |
89 | ||
90 | /* CM inititialization parameters. What CM actually used after calculations | |
91 | * based on passed in arguments. | |
92 | */ | |
93 | #define CMI_VERSION 1 /* increment when adding new fields. */ | |
94 | struct cm_initparams { | |
95 | int cmi_version; | |
96 | int cmi_nChunkFiles; | |
97 | int cmi_nStatCaches; | |
98 | int cmi_nDataCaches; | |
99 | int cmi_nVolumeCaches; | |
100 | int cmi_firstChunkSize; | |
101 | int cmi_otherChunkSize; | |
102 | int cmi_cacheSize; /* The original cache size, in 1K blocks. */ | |
103 | unsigned cmi_setTime:1; | |
104 | unsigned cmi_memCache:1; | |
105 | int spare[16 - 9]; /* size of struct is 16 * 4 = 64 bytes */ | |
106 | }; | |
107 | ||
108 | #endif /* !defined(UKERNEL) */ | |
109 | ||
110 | #if defined(AFS_CACHE_BYPASS) | |
111 | /* Uncoordinated 'O' pioctls */ | |
112 | #define VIOC_SETBYPASS_THRESH _OVICEIOCTL(2) /* cache-bypass size thresh */ | |
113 | #endif | |
114 | ||
115 | #endif /* AFS_VENUS_H */ |