/usr/include/afs/volser.h is in libopenafs-dev 1.6.20-2+deb9u2.
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 | /*
* volser.h:
* This file is automatically generated; please do not edit it.
*/
/* Including ./volser.p.h at beginning of volser.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
*/
#ifndef _VOLSER_
#define _VOLSER_ 1
#ifdef AFS_PTHREAD_ENV
#include <pthread.h>
#endif
#include <afs/voldefs.h>
/* vflags, representing state of the volume */
#define VTDeleteOnSalvage 1 /* delete on next salvage */
#define VTOutOfService 2 /* never put this volume online */
#define VTDeleted 4 /* deleted, don't do anything else */
/* iflags, representing "attach mode" for this volume at the start of this transaction */
#define ITOffline 1 /* volume offline on server (returns VOFFLINE) */
#define ITBusy 2 /* volume busy on server (returns VBUSY) */
#define ITReadOnly 8 /* volume readonly on client, readwrite on server -DO NOT USE */
#define ITCreate 0x10 /* volume does not exist correctly yet */
#define ITCreateVolID 0x1000 /* create volid */
/* tflags, representing transaction state */
#define TTDeleted 1 /* delete transaction not yet freed due to high refCount */
/* other names for volumes in voldefs.h */
#define volser_RW 0
#define volser_RO 1
#define volser_BACK 2
#define THOLD(tt) ((tt)->refCount++)
struct volser_trans {
struct volser_trans *next; /* next ptr in active trans list */
afs_int32 tid; /* transaction id */
afs_int32 time; /* time transaction was last active (for timeouts) */
afs_int32 creationTime; /* time the transaction started */
afs_int32 returnCode; /* transaction error code */
struct Volume *volume; /* pointer to open volume */
afs_uint32 volid; /* open volume's id */
afs_int32 partition; /* open volume's partition */
afs_int32 dumpTransId; /* other side's trans id during a dump */
afs_int32 dumpSeq; /* next sequence number to use during a dump */
short refCount; /* reference count on this structure */
short iflags; /* initial attach mode flags (IT*) */
char vflags; /* current volume status flags (VT*) */
char tflags; /* transaction flags (TT*) */
char incremental; /* do an incremental restore */
/* the fields below are useful for debugging */
char lastProcName[30]; /* name of the last procedure which used transaction */
struct rx_call *rxCallPtr; /* pointer to latest associated rx_call */
#ifdef AFS_PTHREAD_ENV
pthread_mutex_t lock; /* per transaction lock */
#endif
};
/* This is how often the garbage collection thread wakes up and
* checks for transactions that have timed out: BKGLoop()
*/
#define GCWAKEUP 30
#ifdef AFS_PTHREAD_ENV
#define VTRANS_OBJ_LOCK_INIT(tt) \
MUTEX_INIT(&((tt)->lock), "vtrans obj", MUTEX_DEFAULT, 0);
#define VTRANS_OBJ_LOCK_DESTROY(tt) \
MUTEX_DESTROY(&((tt)->lock))
#define VTRANS_OBJ_LOCK(tt) \
MUTEX_ENTER(&((tt)->lock))
#define VTRANS_OBJ_UNLOCK(tt) \
MUTEX_EXIT(&((tt)->lock))
#else
#define VTRANS_OBJ_LOCK_INIT(tt)
#define VTRANS_OBJ_LOCK_DESTROY(tt)
#define VTRANS_OBJ_LOCK(tt)
#define VTRANS_OBJ_UNLOCK(tt)
#endif /* AFS_PTHREAD_ENV */
#define MAXHELPERS 10
/* flags for vol helper busyFlags array. First, VHIdle goes on when a server
* becomes idle. Next, idle flag is cleared and VHRequest goes on when
* trans is queued. Finally, VHRequest goes off (but VHIdle stays off) when
* helper is done. VHIdle goes on again when an lwp waits for work.
*/
#define VHIdle 1 /* vol helper is waiting for a request here */
#define VHRequest 2 /* a request has been queued here */
extern struct volser_trans *QI_GlobalWriteTrans;
/* the stuff below is from errors.h in vol directory */
#define VICE_SPECIAL_ERRORS 101 /* Lowest special error code */
#define VSALVAGE 101 /* Volume needs salvage */
#define VNOVNODE 102 /* Bad vnode number quoted */
#define VNOVOL 103 /* Volume not attached, doesn't exist,
* not created or not online */
#define VVOLEXISTS 104 /* Volume already exists */
#define VNOSERVICE 105 /* Volume is not in service (i.e. it's
* is out of funds, is obsolete, or somesuch) */
#define VOFFLINE 106 /* Volume is off line, for the reason
* given in the offline message */
#define VONLINE 107 /* Volume is already on line */
#define VDISKFULL 108 /* Partition is "full", i.e. rougly within
* n% of full */
#define VOVERQUOTA 109 /* Volume max quota exceeded */
#define VBUSY 110 /* Volume temporarily unavailable; try again.
* The volume should be available again shortly; if
* it isn't something is wrong. Not normally to be
* propagated to the application level */
#define VMOVED 111 /* Volume has moved to another server; do a VGetVolumeInfo
* to THIS server to find out where */
#define MyPort 5003
#define NameLen 80
#define VLDB_MAXSERVERS 10
#define VOLSERVICE_ID 4
#define INVALID_BID 0
#define VOLSER_MAXVOLNAME 65
#define VOLSER_OLDMAXVOLNAME 32
/*flags used for interfacing with the backup system */
struct volDescription { /*used for interfacing with the backup system */
char volName[VOLSER_MAXVOLNAME]; /* should be VNAMESIZE as defined in volume.h */
afs_uint32 volId;
int volSize;
afs_int32 volFlags;
afs_uint32 volCloneId;
};
struct partList { /*used by the backup system */
afs_int32 partId[VOLMAXPARTS];
afs_int32 partFlags[VOLMAXPARTS];
};
#define STDERR stderr
#define STDOUT stdout
#define ISNAMEVALID(name) (strlen(name) < (VOLSER_OLDMAXVOLNAME - 9))
/* values for flags in struct nvldbEntry */
#define RW_EXISTS 0x1000
#define RO_EXISTS 0x2000
#define BACK_EXISTS 0x4000
/* values for serverFlags in struct nvldbEntry */
#define NEW_REPSITE 0x01
#define ITSROVOL 0x02
#define ITSRWVOL 0x04
#define ITSBACKVOL 0x08
#define RO_DONTUSE 0x20
#define VLOP_RESTORE 0x100 /*this is bogus, clashes with VLOP_DUMP */
#define VLOP_ADDSITE 0x80 /*this is bogus, clashes with VLOP_DELETE */
#define PARTVALID 0x01
#define CLONEVALID 0x02
#define CLONEZAPPED 0x04
#define IDVALID 0x08
#define NAMEVALID 0x10
#define SIZEVALID 0x20
#define ENTRYVALID 0x40
#define REUSECLONEID 0x80
#define VOK 0x02
/* Values for the UV_RestoreVolume flags parameter */
/* Also used for UV_CopyVolume and UV_CloneVolume */
#define RV_FULLRST 0x000001
#define RV_OFFLINE 0x000002
#define RV_CRDUMP 0x000010
#define RV_CRKEEP 0x000020
#define RV_CRNEW 0x000040
#define RV_LUDUMP 0x000100
#define RV_LUKEEP 0x000200
#define RV_LUNEW 0x000400
#define RV_RDONLY 0x010000
#define RV_CPINCR 0x020000
#define RV_NOVLDB 0x040000
#define RV_NOCLONE 0x080000
#define RV_NODEL 0x100000
#define RV_RWONLY 0x200000
struct ubik_client;
extern afs_uint32 vsu_GetVolumeID(char *astring, struct ubik_client *acstruct, afs_int32 *errp);
extern int vsu_ExtractName(char rname[], char name[]);
extern afs_int32 vsu_ClientInit(int noAuthFlag, const char *confDir,
char *cellName, afs_int32 sauth,
struct ubik_client **uclientp,
int (*secproc)(struct rx_securityClass *, afs_int32));
extern void vsu_SetCrypt(int cryptflag);
#endif /* _VOLSER_ */
/* End of prolog file ./volser.p.h. */
#define VOLSERTRELE_ERROR (1492325120L)
#define VOLSERNO_OP (1492325121L)
#define VOLSERREAD_DUMPERROR (1492325122L)
#define VOLSERDUMPERROR (1492325123L)
#define VOLSERATTACH_ERROR (1492325124L)
#define VOLSERILLEGAL_PARTITION (1492325125L)
#define VOLSERDETACH_ERROR (1492325126L)
#define VOLSERBAD_ACCESS (1492325127L)
#define VOLSERVLDB_ERROR (1492325128L)
#define VOLSERBADNAME (1492325129L)
#define VOLSERVOLMOVED (1492325130L)
#define VOLSERBADOP (1492325131L)
#define VOLSERBADRELEASE (1492325132L)
#define VOLSERVOLBUSY (1492325133L)
#define VOLSERNO_MEMORY (1492325134L)
#define VOLSERNOVOL (1492325135L)
#define VOLSERMULTIRWVOL (1492325136L)
#define VOLSERFAILEDOP (1492325137L)
extern void initialize_VOLS_error_table(void);
#define ERROR_TABLE_BASE_VOLS (1492325120L)
/* for compatibility with older versions... */
#define init_VOLS_err_tbl initialize_VOLS_error_table
#define VOLS_err_base ERROR_TABLE_BASE_VOLS
/* for compatibility with other users... */
#define ERROR_TABLE_BASE_vols (1492325120L)
#define init_vols_err_tbl initialize_VOLS_error_table
#define initialize_vols_error_table initialize_VOLS_error_table
#define vols_err_base ERROR_TABLE_BASE_vols
|