/usr/src/openafs-1.6.1/include/afs/cellconfig.h is in openafs-modules-dkms 1.6.1-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 | /*
* cellconfig.h:
* This file is automatically generated; please do not edit it.
*/
/* Including ./cellconfig.p.h at beginning of cellconfig.h file. */
/*
* Copyright 2000, International Business Machines Corporation and others.
* All Rights Reserved.
*
* This software has been released under the terms of the IBM Public
* License. For details, see the LICENSE file in the top-level source
* directory or online at http://www.openafs.org/dl/license10.html
*/
/*
cellconfig.h:
Interface to the routines used by the FileServer to manipulate the cell/server database
for the Cellular Andrew system, along with an operation to determine the name of the
local cell. Included are a string variable used to hold the local cell name, definitions for
the database file format and routines for:
1) Acquiring the local cell name.
2) Reading in the cell/server database from disk.
3) Reporting the set of servers associated with a given cell name.
4) Printing out the contents of the cell/server database.
5) Reclaiming the space used by an in-memory database.
Creation date:
17 August 1987
--------------------------------------------------------------------------------------------------------------*/
#ifndef __CELLCONFIG_AFS_INCL_
#define __CELLCONFIG_AFS_INCL_ 1
#ifndef IPPROTO_MAX
/* get sockaddr_in */
#ifdef AFS_NT40_ENV
#include <winsock2.h>
#else
#include <sys/types.h>
#include <netinet/in.h>
#endif
#endif
#define MAXCELLCHARS 64
#define MAXHOSTCHARS 64
#define MAXHOSTSPERCELL 8
/*
* Return codes.
*/
#define AFSCONF_SUCCESS 0 /* worked */
/*
* Complete server info for one cell.
*/
struct afsconf_cell {
char name[MAXCELLCHARS]; /*Cell name */
short numServers; /*Num active servers for the cell */
short flags; /* useful flags */
struct sockaddr_in hostAddr[MAXHOSTSPERCELL]; /*IP addresses for cell's servers */
char hostName[MAXHOSTSPERCELL][MAXHOSTCHARS]; /*Names for cell's servers */
char *linkedCell; /* Linked cell name, if any */
int timeout; /* Data timeout, if non-zero */
};
#define AFSCONF_CELL_FLAG_DNS_QUERIED 1
struct afsconf_cellalias {
char aliasName[MAXCELLCHARS];
char realName[MAXCELLCHARS];
};
struct afsconf_entry {
struct afsconf_entry *next; /* next guy in afsconf_dir */
struct afsconf_cell cellInfo; /* info for this cell */
};
struct afsconf_aliasentry {
struct afsconf_aliasentry *next;
struct afsconf_cellalias aliasInfo;
};
struct afsconf_dir {
char *name; /* pointer to dir prefix */
char *cellName; /* cell name, if any, we're in */
struct afsconf_entry *entries; /* list of cell entries */
struct afsconf_keys *keystr; /* structure containing keys */
afs_int32 timeRead; /* time stamp of file last read */
struct afsconf_aliasentry *alias_entries; /* cell aliases */
};
extern afs_int32 afsconf_FindService(const char *aname);
extern const char *afsconf_FindIANAName(const char *aname);
extern struct afsconf_dir *afsconf_Open(const char *adir);
extern int afsconf_CellApply(struct afsconf_dir *adir,
int (*aproc) (struct afsconf_cell * cell,
void *arock,
struct afsconf_dir * dir),
void *arock);
extern int afsconf_CellAliasApply(struct afsconf_dir *adir,
int (*aproc) (struct afsconf_cellalias *
alias, void *arock,
struct afsconf_dir * dir),
void *arock);
extern int afsconf_GetExtendedCellInfo(struct afsconf_dir *adir,
char *acellName, char *aservice,
struct afsconf_cell *acellInfo,
char clones[]);
extern int afsconf_GetAfsdbInfo(char *acellName, char *aservice,
struct afsconf_cell *acellInfo);
extern int afsconf_GetCellInfo(struct afsconf_dir *adir, char *acellName,
char *aservice,
struct afsconf_cell *acellInfo);
extern int afsconf_GetLocalCell(struct afsconf_dir *adir,
char *aname, afs_int32 alen);
extern int afsconf_Close(struct afsconf_dir *adir);
extern int afsconf_IntGetKeys(struct afsconf_dir *adir);
extern int afsconf_GetKeys(struct afsconf_dir *adir,
struct afsconf_keys *astr);
struct ktc_encryptionKey;
extern afs_int32 afsconf_GetLatestKey(struct afsconf_dir *adir,
afs_int32 * avno,
struct ktc_encryptionKey *akey);
extern int afsconf_GetKey(void *rock, int avno,
struct ktc_encryptionKey *akey);
extern int afsconf_AddKey(struct afsconf_dir *adir, afs_int32 akvno,
char akey[8], afs_int32 overwrite);
extern int afsconf_DeleteKey(struct afsconf_dir *adir, afs_int32 akvno);
/* authcon.c */
struct rx_securityClass;
extern afs_int32 afsconf_ServerAuth(void *arock,
struct rx_securityClass **,
afs_int32 *);
extern afs_int32 afsconf_ClientAuth(void *arock,
struct rx_securityClass **astr,
afs_int32 * aindex);
extern afs_int32 afsconf_ClientAuthSecure(void *arock,
struct rx_securityClass **astr,
afs_int32 * aindex);
/*!
* A set of bit flags to control the selection of a security object
*/
#define AFSCONF_SECOPTS_NOAUTH 0x1
#define AFSCONF_SECOPTS_LOCALAUTH 0x2
#define AFSCONF_SECOPTS_ALWAYSENCRYPT 0x4
#define AFSCONF_SECOPTS_FALLBACK_NULL 0x8
typedef afs_uint32 afsconf_secflags;
extern afs_int32 afsconf_ClientAuthToken(struct afsconf_cell *info,
afsconf_secflags flags,
struct rx_securityClass **sc,
afs_int32 *scIndex,
time_t *expires);
extern afs_int32 afsconf_PickClientSecObj(struct afsconf_dir *dir,
afsconf_secflags flags,
struct afsconf_cell *info,
char *cellName,
struct rx_securityClass **sc,
afs_int32 *scIndex,
time_t *expires);
/* Flags for this function */
#define AFSCONF_SEC_OBJS_RXKAD_CRYPT 1
extern void afsconf_BuildServerSecurityObjects(struct afsconf_dir *,
afs_uint32,
struct rx_securityClass ***,
afs_int32 *);
/* writeconfig.c */
int afsconf_SetExtendedCellInfo(struct afsconf_dir *adir, const char *apath,
struct afsconf_cell *acellInfo, char clones[]);
int afsconf_SetCellInfo(struct afsconf_dir *adir, const char *apath,
struct afsconf_cell *acellInfo);
/* userok.c */
struct rx_call;
extern int afsconf_CheckAuth(void *arock, struct rx_call *acall);
extern int afsconf_GetNoAuthFlag(struct afsconf_dir *adir);
extern void afsconf_SetNoAuthFlag(struct afsconf_dir *adir, int aflag);
extern int afsconf_DeleteUser(struct afsconf_dir *adir, char *auser);
extern int afsconf_GetNthUser(struct afsconf_dir *adir, afs_int32 an,
char *abuffer, afs_int32 abufferLen);
extern int afsconf_AddUser(struct afsconf_dir *adir, char *aname);
extern int afsconf_SuperUser(struct afsconf_dir *adir, struct rx_call *acall,
char *namep);
/* some well-known ports and their names; new additions to table in cellconfig.c, too */
#define AFSCONF_FILESERVICE "afs"
#define AFSCONF_FILEPORT 7000
#define AFSCONF_CALLBACKSERVICE "afscb"
#define AFSCONF_CALLBACKPORT 7001
#define AFSCONF_PROTSERVICE "afsprot"
#define AFSCONF_PROTPORT 7002
#define AFSCONF_VLDBSERVICE "afsvldb"
#define AFSCONF_VLDBPORT 7003
#define AFSCONF_KAUTHSERVICE "afskauth"
#define AFSCONF_KAUTHPORT 7004
#define AFSCONF_VOLUMESERVICE "afsvol"
#define AFSCONF_VOLUMEPORT 7005
#define AFSCONF_ERRORSERVICE "afserror"
#define AFSCONF_ERRORPORT 7006
#define AFSCONF_NANNYSERVICE "afsnanny"
#define AFSCONF_NANNYPORT 7007
#define AFSCONF_UPDATESERVICE "afsupdate"
#define AFSCONF_UPDATEPORT 7008
#define AFSCONF_RMTSYSSERVICE "afsrmtsys"
#define AFSCONF_RMTSYSPORT 7009
#define AFSCONF_RSDBSERVICE "afsres"
#define AFSCONF_RESPORT 7010
#define AFSCONF_REMIODBSERVICE "afsremio"
#define AFSCONF_REMIOPORT 7011
#endif /* __CELLCONFIG_AFS_INCL_ */
/* End of prolog file ./cellconfig.p.h. */
#define AFSCONF_FAILURE (70354688L)
#define AFSCONF_NOTFOUND (70354689L)
#define AFSCONF_UNKNOWN (70354690L)
#define AFSCONF_NOCELL (70354691L)
#define AFSCONF_SYNTAX (70354692L)
#define AFSCONF_NODB (70354693L)
#define AFSCONF_FULL (70354694L)
#define AFSCONF_NOCELLDB (70354695L)
#define AFSCONF_NO_SECURITY_CLASS (70354696L)
extern void initialize_ACFG_error_table(void);
#define ERROR_TABLE_BASE_ACFG (70354688L)
/* for compatibility with older versions... */
#define init_ACFG_err_tbl initialize_ACFG_error_table
#define ACFG_err_base ERROR_TABLE_BASE_ACFG
/* for compatibility with other users... */
#define ERROR_TABLE_BASE_acfg (70354688L)
#define init_acfg_err_tbl initialize_ACFG_error_table
#define initialize_acfg_error_table initialize_ACFG_error_table
#define acfg_err_base ERROR_TABLE_BASE_acfg
|