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 #ifndef OPENAFS_CLIENT_ADMIN_H
11 #define OPENAFS_CLIENT_ADMIN_H
13 #include <afs/afs_Admin.h>
19 typedef enum {READ_ONLY, READ_WRITE} vol_type_t, *vol_type_p;
20 typedef enum {CHECK_VOLUME, DONT_CHECK_VOLUME} vol_check_t, *vol_check_p;
22 typedef enum {READ, NO_READ} acl_read_t, *acl_read_p;
23 typedef enum {WRITE, NO_WRITE} acl_write_t, *acl_write_p;
24 typedef enum {LOOKUP, NO_LOOKUP} acl_lookup_t, *acl_lookup_p;
25 typedef enum {DELETE, NO_DELETE} acl_delete_t, *acl_delete_p;
26 typedef enum {INSERT, NO_INSERT} acl_insert_t, *acl_insert_p;
27 typedef enum {LOCK, NO_LOCK} acl_lock_t, *acl_lock_p;
28 typedef enum {ADMIN, NO_ADMIN} acl_admin_t, *acl_admin_p;
40 #define AFS_MAX_SERVER_NAME_LEN 128
41 #define AFS_MAX_SERVER_ADDRESS 16
44 DATABASE_SERVER = 0x1,
46 } afs_server_type_t, *afs_server_type_p;
56 } afs_stat_source_t, *afs_stat_source_p;
59 char serverName[ AFS_MAX_SERVER_NAME_LEN ];
60 afs_server_type_t serverType;
61 int serverAddress[ AFS_MAX_SERVER_ADDRESS ];
62 } afs_serverEntry_t, *afs_serverEntry_p;
64 extern int ADMINAPI afsclient_TokenGetExisting(
70 extern int ADMINAPI afsclient_TokenSet(
71 const void *tokenHandle,
75 extern int ADMINAPI afsclient_TokenGetNew(
77 const char *principal,
83 extern int ADMINAPI afsclient_TokenClose(
84 const void *tokenHandle,
88 extern int ADMINAPI afsclient_TokenQuery(
90 unsigned long *expirationDateP,
98 extern int ADMINAPI afsclient_CellOpen(
100 const void *tokenHandle,
105 extern int ADMINAPI afsclient_NullCellOpen(
110 extern int ADMINAPI afsclient_CellClose(
111 const void *cellHandle,
115 extern int ADMINAPI afsclient_CellNameGet(
116 const void *cellHandle,
117 const char **cellNameP,
121 extern int ADMINAPI afsclient_LocalCellGet(
126 extern int ADMINAPI afsclient_MountPointCreate(
127 const void *cellHandle,
128 const char *directory,
129 const char *volumeName,
131 vol_check_t volCheck,
135 extern int ADMINAPI afsclient_ACLEntryAdd(
136 const char *directory,
142 extern int ADMINAPI afsclient_Init(
146 extern int ADMINAPI afsclient_AFSServerGet(
147 const void *cellHandle,
148 const char *serverName,
149 afs_serverEntry_p serverEntryP,
153 extern int ADMINAPI afsclient_AFSServerGetBegin(
154 const void *cellHandle,
159 extern int ADMINAPI afsclient_AFSServerGetNext(
161 afs_serverEntry_p serverEntryP,
165 extern int ADMINAPI afsclient_AFSServerGetDone(
170 extern int ADMINAPI afsclient_RPCStatOpen(
171 const void *cellHandle,
172 const char *serverName,
173 afs_stat_source_t type,
174 struct rx_connection **rpcStatHandleP,
178 extern int ADMINAPI afsclient_RPCStatOpenPort(
179 const void *cellHandle,
180 const char *serverName,
182 struct rx_connection **rpcStatHandleP,
186 extern int ADMINAPI afsclient_RPCStatClose(
187 struct rx_connection *rpcStatHandle,
191 extern int ADMINAPI afsclient_CMStatOpen(
192 const void *cellHandle,
193 const char *serverName,
194 struct rx_connection **rpcStatHandleP,
198 extern int ADMINAPI afsclient_CMStatOpenPort(
199 const void *cellHandle,
200 const char *serverName,
202 struct rx_connection **rpcStatHandleP,
206 extern int ADMINAPI afsclient_CMStatClose(
207 struct rx_connection *rpcStatHandle,
211 extern int ADMINAPI afsclient_RXDebugOpen(
212 const char *serverName,
213 afs_stat_source_t type,
214 rxdebugHandle_p *rxdebugHandleP,
217 extern int ADMINAPI afsclient_RXDebugOpenPort(
218 const char *serverName,
220 rxdebugHandle_p *rxdebugHandleP,
223 extern int ADMINAPI afsclient_RXDebugClose(
224 rxdebugHandle_p rxdebugHandle,
227 #endif /* OPENAFS_CLIENT_ADMIN_H */