| 1 | /* Copyright 2000, International Business Machines Corporation and others. |
| 2 | * All Rights Reserved. |
| 3 | * |
| 4 | * This software has been released under the terms of the IBM Public |
| 5 | * License. For details, see the LICENSE file in the top-level source |
| 6 | * directory or online at http://www.openafs.org/dl/license10.html |
| 7 | */ |
| 8 | |
| 9 | #ifndef _BUCOORD_INTERNAL_H |
| 10 | #define _BUCOORD_INTERNAL_H |
| 11 | |
| 12 | /* bc_status.c */ |
| 13 | |
| 14 | extern void *statusWatcher(void *); |
| 15 | extern afs_int32 bc_jobNumber(void); |
| 16 | extern int waitForTask(afs_uint32 taskId); |
| 17 | |
| 18 | /* command.c */ |
| 19 | extern char *bc_CopyString(char *astring); |
| 20 | extern afs_int32 getPortOffset(char *port); |
| 21 | extern afs_int32 bc_SafeATOI(char *anum); |
| 22 | extern int bc_WaitForNoJobs(void); |
| 23 | extern afs_int32 bc_ParseExpiration(struct cmd_parmdesc *paramPtr, |
| 24 | afs_int32 *expType, afs_int32 *expDate); |
| 25 | |
| 26 | struct cmd_syndesc; |
| 27 | extern int bc_DumpCmd(struct cmd_syndesc *as, void *arock); |
| 28 | extern int bc_VolRestoreCmd(struct cmd_syndesc *as, void *arock); |
| 29 | extern int bc_DiskRestoreCmd(struct cmd_syndesc *as, void *arock); |
| 30 | extern int bc_QuitCmd(struct cmd_syndesc *as, void *arock); |
| 31 | extern int bc_VolsetRestoreCmd(struct cmd_syndesc *as, void *arock); |
| 32 | extern int bc_AddHostCmd(struct cmd_syndesc *as, void *arock); |
| 33 | extern int bc_DeleteHostCmd(struct cmd_syndesc *as, void *arock); |
| 34 | extern int bc_ListHostsCmd(struct cmd_syndesc *as, void *arock); |
| 35 | extern int bc_JobsCmd(struct cmd_syndesc *as, void *arock); |
| 36 | extern int bc_KillCmd(struct cmd_syndesc *as, void *arock); |
| 37 | extern int bc_ListVolSetCmd(struct cmd_syndesc *as, void *arock); |
| 38 | extern int bc_ListDumpScheduleCmd(struct cmd_syndesc *as, void *arock); |
| 39 | extern int bc_AddVolSetCmd(struct cmd_syndesc *as, void *arock); |
| 40 | extern int bc_GetTapeStatusCmd(struct cmd_syndesc *as, void *arock); |
| 41 | extern int bc_DeleteVolSetCmd(struct cmd_syndesc *as, void *arock); |
| 42 | extern int bc_AddVolEntryCmd(struct cmd_syndesc *as, void *arock); |
| 43 | extern int bc_DeleteVolEntryCmd(struct cmd_syndesc *as, void *arock); |
| 44 | extern int bc_AddDumpCmd(struct cmd_syndesc *as, void *arock); |
| 45 | extern int bc_DeleteDumpCmd(struct cmd_syndesc *as, void *arock); |
| 46 | extern int bc_LabelTapeCmd(struct cmd_syndesc *as, void *arock); |
| 47 | extern int bc_ReadLabelCmd(struct cmd_syndesc *as, void *arock); |
| 48 | extern int bc_ScanDumpsCmd(struct cmd_syndesc *as, void *arock); |
| 49 | extern int bc_dblookupCmd(struct cmd_syndesc *as, void *arock); |
| 50 | extern int bc_SetExpCmd(struct cmd_syndesc *as, void *arock); |
| 51 | extern int bc_saveDbCmd(struct cmd_syndesc *as, void *arock); |
| 52 | extern int bc_restoreDbCmd(struct cmd_syndesc *as, void *arock); |
| 53 | extern int bc_dumpInfoCmd(struct cmd_syndesc *as, void *arock); |
| 54 | extern int bc_dbVerifyCmd(struct cmd_syndesc *as, void *arock); |
| 55 | extern int bc_deleteDumpCmd(struct cmd_syndesc *as, void *arock); |
| 56 | |
| 57 | /* config.c */ |
| 58 | extern int bc_AddTapeHost(struct bc_config *aconfig, char *aname, |
| 59 | afs_int32 aport); |
| 60 | extern int bc_DeleteTapeHost(struct bc_config *aconfig, char *aname, |
| 61 | afs_int32 aport); |
| 62 | extern int bc_InitConfig(char *apath); |
| 63 | |
| 64 | /* dsstub.c */ |
| 65 | extern char *tailCompPtr(char *pathNamePtr); |
| 66 | |
| 67 | /* dsvs.c */ |
| 68 | extern struct bc_volumeSet *bc_FindVolumeSet(struct bc_config *aconfig, |
| 69 | char *aname); |
| 70 | extern void FreeVolumeSet(struct bc_volumeSet *); |
| 71 | extern int bc_AddVolumeItem(struct bc_config *aconfig, char *avolName, |
| 72 | char *ahost, char *apart, char *avol); |
| 73 | extern int bc_CreateVolumeSet(struct bc_config *aconfig, char *avolName, |
| 74 | afs_int32 aflags); |
| 75 | extern int bc_DeleteVolumeItem(struct bc_config *aconfig, char *avolName, |
| 76 | afs_int32 anumber); |
| 77 | extern int bc_DeleteVolumeSet(struct bc_config *aconfig, char *avolName, |
| 78 | afs_int32 *flags); |
| 79 | extern int bc_ParseHost(char *aname, struct sockaddr_in *asockaddr); |
| 80 | extern afs_int32 bc_GetPartitionID(char *aname, afs_int32 *aval); |
| 81 | extern int bc_CreateDumpSchedule(struct bc_config *aconfig, char *adumpName, |
| 82 | afs_int32 expDate, afs_int32 expType); |
| 83 | extern int bc_DeleteDumpSchedule(struct bc_config *aconfig, char *adumpName); |
| 84 | extern int FindDump(struct bc_config *aconfig, char *nodeString, |
| 85 | struct bc_dumpSchedule **parentptr, |
| 86 | struct bc_dumpSchedule **nodeptr); |
| 87 | extern int bc_ProcessDumpSchedule(struct bc_config *aconfig); |
| 88 | extern struct bc_dumpSchedule * bc_FindDumpSchedule(struct bc_config *aconfig, |
| 89 | char *aname); |
| 90 | |
| 91 | |
| 92 | /* dump.c */ |
| 93 | extern int CheckTCVersion(struct rx_connection *tconn); |
| 94 | extern int ConnectButc(struct bc_config *config, afs_int32 port, |
| 95 | struct rx_connection **tconn); |
| 96 | extern int bc_StartDmpRst(struct bc_config *aconfig, char *adname, |
| 97 | char *avname, struct bc_volumeDump *avolsToDump, |
| 98 | struct sockaddr_in *adestServer, |
| 99 | afs_int32 adestPartition, afs_int32 afromDate, |
| 100 | char *anewExt, int aoldFlag, afs_int32 aparent, |
| 101 | afs_int32 alevel, int (*aproc) (int), |
| 102 | afs_int32 *ports, afs_int32 portCount, |
| 103 | struct bc_dumpSchedule *dsptr, int append, |
| 104 | int dontExecute); |
| 105 | extern int bc_Dumper(int); |
| 106 | extern int bc_LabelTape(char *afsname, char *pname, afs_int32 size, |
| 107 | struct bc_config *config, afs_int32 port); |
| 108 | extern int bc_ReadLabel(struct bc_config *config, afs_int32 port); |
| 109 | extern int bc_ScanDumps(struct bc_config *config, afs_int32 dbAddFlag, |
| 110 | afs_int32 port); |
| 111 | |
| 112 | |
| 113 | |
| 114 | |
| 115 | /* dump_sched.c */ |
| 116 | extern afs_int32 bc_UpdateDumpSchedule(void); |
| 117 | extern int bc_SaveDumpSchedule(void); |
| 118 | |
| 119 | /* main.c */ |
| 120 | extern int localauth, nobutcauth; |
| 121 | extern char tcell[]; |
| 122 | extern time_t tokenExpires; |
| 123 | extern afs_int32 doDispatch(afs_int32, char *[], afs_int32); |
| 124 | extern void bc_HandleMisc(afs_int32 code); |
| 125 | |
| 126 | /* regex.c */ |
| 127 | extern char *re_comp(const char *sp); |
| 128 | extern int re_exec(const char *p1); |
| 129 | |
| 130 | /* restore.c */ |
| 131 | extern int BackupName(char *); |
| 132 | extern int bc_Restorer(afs_int32); |
| 133 | |
| 134 | /* status.c */ |
| 135 | extern void initStatus(void); |
| 136 | extern void lock_cmdLine(void); |
| 137 | extern void unlock_cmdLine(void); |
| 138 | extern void clearStatus(afs_uint32, afs_uint32); |
| 139 | |
| 140 | /* tape_hosts.c */ |
| 141 | extern afs_int32 bc_UpdateHosts(void); |
| 142 | extern int bc_SaveHosts(void); |
| 143 | |
| 144 | /* ubik_db_if.c */ |
| 145 | extern afs_int32 filesize(FILE *stream); |
| 146 | extern int bc_CheckTextVersion(udbClientTextP ctPtr); |
| 147 | extern int bc_openTextFile(udbClientTextP ctPtr, char *tmpFileName); |
| 148 | extern int bcdb_GetTextFile(udbClientTextP ctPtr); |
| 149 | extern afs_int32 bcdb_FindVolumes(afs_int32 dumpID, char *volumeName, |
| 150 | struct budb_volumeEntry *returnArray, |
| 151 | afs_int32 last, afs_int32 *next, |
| 152 | afs_int32 maxa, afs_int32 *nEntries); |
| 153 | extern int bcdb_FindDump(char *volumeName, afs_int32 beforeDate, |
| 154 | struct budb_dumpEntry *deptr); |
| 155 | extern afs_int32 bcdb_FindLastVolClone(char *volSetName, char *dumpName, |
| 156 | char *volName, afs_int32 *clonetime); |
| 157 | extern afs_int32 bcdb_listDumps (afs_int32 sflags, afs_int32 groupId, |
| 158 | afs_int32 fromTime, afs_int32 toTime, |
| 159 | budb_dumpsList *dumps, budb_dumpsList *flags); |
| 160 | extern afs_int32 bcdb_DeleteVDP(char *, char *, afs_int32 ); |
| 161 | extern afs_int32 bcdb_FindClone(afs_int32, char *, afs_int32 *); |
| 162 | extern afs_int32 bcdb_LookupVolume(char *volumeName, |
| 163 | struct budb_volumeEntry *returnArray, |
| 164 | afs_int32 last, afs_int32 *next, |
| 165 | afs_int32 maxa, afs_int32 *nEntries); |
| 166 | extern int bcdb_FindTape(afs_int32 dumpid, char *tapeName, |
| 167 | struct budb_tapeEntry *teptr); |
| 168 | |
| 169 | extern afs_int32 udbClientInit(int noAuthFlag, int localauth, char *cellName); |
| 170 | |
| 171 | /* vol_sets.c */ |
| 172 | extern afs_int32 bc_UpdateVolumeSet(void); |
| 173 | extern int bc_SaveVolumeSet(void); |
| 174 | |
| 175 | /* volstub.c */ |
| 176 | |
| 177 | extern afs_int32 volImageTime(afs_uint32 serv, afs_int32 part, afs_uint32 volid, |
| 178 | afs_int32 voltype, afs_int32 *clDatePtr); |
| 179 | #endif |
| 180 | |