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_UTIL_ADMIN_H
11 #define OPENAFS_UTIL_ADMIN_H
13 #include <afs/afs_Admin.h>
14 #include <afs/afs_AdminErrors.h>
16 #define UTIL_MAX_DATABASE_SERVER_NAME 64
17 #define UTIL_MAX_CELL_NAME_LEN 256
18 #define UTIL_MAX_CELL_HOSTS 8
19 #define UTIL_MAX_RXDEBUG_VERSION_LEN 64
22 typedef struct util_databaseServerEntry {
24 char serverName[UTIL_MAX_DATABASE_SERVER_NAME];
25 } util_databaseServerEntry_t, *util_databaseServerEntry_p;
27 extern int ADMINAPI util_AdminErrorCodeTranslate(afs_status_t errorCode,
29 const char **errorTextP,
32 extern int ADMINAPI util_DatabaseServerGetBegin(const char *cellName,
36 extern int ADMINAPI util_DatabaseServerGetNext(const void *iterationId,
37 util_databaseServerEntry_p
38 serverP, afs_status_p st);
40 extern int ADMINAPI util_DatabaseServerGetDone(const void *iterationId,
43 extern int ADMINAPI util_AdminServerAddressGetFromName(const char *serverName,
47 extern int ADMINAPI CellHandleIsValid(const void *cellHandle,
50 extern int ADMINAPI util_RPCStatsGetBegin(struct rx_connection *conn,
51 int (*rpc) (), void **iterationIdP,
54 extern int ADMINAPI util_RPCStatsGetNext(const void *iterationId,
58 extern int ADMINAPI util_RPCStatsGetDone(const void *iterationId,
61 extern int ADMINAPI util_RPCStatsStateGet(struct rx_connection *conn,
63 afs_RPCStatsState_p state,
66 extern int ADMINAPI util_RPCStatsStateEnable(struct rx_connection *conn,
67 int (*rpc) (), afs_status_p st);
69 extern int ADMINAPI util_RPCStatsStateDisable(struct rx_connection *conn,
70 int (*rpc) (), afs_status_p st);
72 extern int ADMINAPI util_RPCStatsClear(struct rx_connection *conn,
74 afs_RPCStatsClearFlag_t flag,
77 extern int ADMINAPI util_RPCStatsVersionGet(struct rx_connection *conn,
78 afs_RPCStatsVersion_p version,
81 typedef struct afs_CMServerPref {
84 } afs_CMServerPref_t, *afs_CMServerPref_p;
86 extern int ADMINAPI util_CMGetServerPrefsBegin(struct rx_connection *conn,
90 extern int ADMINAPI util_CMGetServerPrefsNext(const void *iterationId,
91 afs_CMServerPref_p prefs,
94 extern int ADMINAPI util_CMGetServerPrefsDone(const void *iterationId,
97 typedef struct afs_CMListCell {
98 char cellname[UTIL_MAX_CELL_NAME_LEN];
99 afs_int32 serverAddr[UTIL_MAX_CELL_HOSTS];
100 } afs_CMListCell_t, *afs_CMListCell_p;
102 extern int ADMINAPI util_CMListCellsBegin(struct rx_connection *conn,
106 extern int ADMINAPI util_CMListCellsNext(const void *iterationId,
107 afs_CMListCell_p prefs,
110 extern int ADMINAPI util_CMListCellsDone(const void *iterationId,
113 typedef char afs_CMCellName_t[UTIL_MAX_CELL_NAME_LEN], *afs_CMCellName_p;
115 extern int ADMINAPI util_CMLocalCell(struct rx_connection *conn,
116 afs_CMCellName_p cellName,
119 extern int ADMINAPI util_CMClientConfig(struct rx_connection *conn,
120 afs_ClientConfig_p config,
123 typedef char rxdebugVersion_t[UTIL_MAX_RXDEBUG_VERSION_LEN],
126 extern int ADMINAPI util_RXDebugVersionString(rxdebugHandle_p handle,
127 rxdebugVersion_p version,
130 extern int ADMINAPI util_RXDebugSupportedStats(rxdebugHandle_p handle,
131 afs_uint32 * supportedStats,
134 extern int ADMINAPI util_RXDebugBasicStats(rxdebugHandle_p handle,
135 struct rx_debugStats *stats,
138 extern int ADMINAPI util_RXDebugRxStats(rxdebugHandle_p handle,
139 struct rx_stats *stats,
140 afs_uint32 * supportedStats,
143 extern int ADMINAPI util_RXDebugConnectionsBegin(rxdebugHandle_p handle,
148 extern int ADMINAPI util_RXDebugConnectionsNext(const void *iterationId,
149 struct rx_debugConn *conn,
150 afs_uint32 * supportedValues,
153 extern int ADMINAPI util_RXDebugConnectionsDone(const void *iterationId,
156 extern int ADMINAPI util_RXDebugPeersBegin(rxdebugHandle_p handle,
160 extern int ADMINAPI util_RXDebugPeersNext(const void *iterationId,
161 struct rx_debugPeer *peer,
162 afs_uint32 * supportedValues,
165 extern int ADMINAPI util_RXDebugPeersDone(const void *iterationId,
168 #endif /* OPENAFS_UTIL_ADMIN_H */