backport to buster
[hcoop/debian/openafs.git] / src / bucoord / bucoord_internal.h
CommitLineData
805e021f
CE
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
14extern void *statusWatcher(void *);
15extern afs_int32 bc_jobNumber(void);
16extern int waitForTask(afs_uint32 taskId);
17
18/* command.c */
19extern char *bc_CopyString(char *astring);
20extern afs_int32 getPortOffset(char *port);
21extern afs_int32 bc_SafeATOI(char *anum);
22extern int bc_WaitForNoJobs(void);
23extern afs_int32 bc_ParseExpiration(struct cmd_parmdesc *paramPtr,
24 afs_int32 *expType, afs_int32 *expDate);
25
26struct cmd_syndesc;
27extern int bc_DumpCmd(struct cmd_syndesc *as, void *arock);
28extern int bc_VolRestoreCmd(struct cmd_syndesc *as, void *arock);
29extern int bc_DiskRestoreCmd(struct cmd_syndesc *as, void *arock);
30extern int bc_QuitCmd(struct cmd_syndesc *as, void *arock);
31extern int bc_VolsetRestoreCmd(struct cmd_syndesc *as, void *arock);
32extern int bc_AddHostCmd(struct cmd_syndesc *as, void *arock);
33extern int bc_DeleteHostCmd(struct cmd_syndesc *as, void *arock);
34extern int bc_ListHostsCmd(struct cmd_syndesc *as, void *arock);
35extern int bc_JobsCmd(struct cmd_syndesc *as, void *arock);
36extern int bc_KillCmd(struct cmd_syndesc *as, void *arock);
37extern int bc_ListVolSetCmd(struct cmd_syndesc *as, void *arock);
38extern int bc_ListDumpScheduleCmd(struct cmd_syndesc *as, void *arock);
39extern int bc_AddVolSetCmd(struct cmd_syndesc *as, void *arock);
40extern int bc_GetTapeStatusCmd(struct cmd_syndesc *as, void *arock);
41extern int bc_DeleteVolSetCmd(struct cmd_syndesc *as, void *arock);
42extern int bc_AddVolEntryCmd(struct cmd_syndesc *as, void *arock);
43extern int bc_DeleteVolEntryCmd(struct cmd_syndesc *as, void *arock);
44extern int bc_AddDumpCmd(struct cmd_syndesc *as, void *arock);
45extern int bc_DeleteDumpCmd(struct cmd_syndesc *as, void *arock);
46extern int bc_LabelTapeCmd(struct cmd_syndesc *as, void *arock);
47extern int bc_ReadLabelCmd(struct cmd_syndesc *as, void *arock);
48extern int bc_ScanDumpsCmd(struct cmd_syndesc *as, void *arock);
49extern int bc_dblookupCmd(struct cmd_syndesc *as, void *arock);
50extern int bc_SetExpCmd(struct cmd_syndesc *as, void *arock);
51extern int bc_saveDbCmd(struct cmd_syndesc *as, void *arock);
52extern int bc_restoreDbCmd(struct cmd_syndesc *as, void *arock);
53extern int bc_dumpInfoCmd(struct cmd_syndesc *as, void *arock);
54extern int bc_dbVerifyCmd(struct cmd_syndesc *as, void *arock);
55extern int bc_deleteDumpCmd(struct cmd_syndesc *as, void *arock);
56
57/* config.c */
58extern int bc_AddTapeHost(struct bc_config *aconfig, char *aname,
59 afs_int32 aport);
60extern int bc_DeleteTapeHost(struct bc_config *aconfig, char *aname,
61 afs_int32 aport);
62extern int bc_InitConfig(char *apath);
63
64/* dsstub.c */
65extern char *tailCompPtr(char *pathNamePtr);
66
67/* dsvs.c */
68extern struct bc_volumeSet *bc_FindVolumeSet(struct bc_config *aconfig,
69 char *aname);
70extern void FreeVolumeSet(struct bc_volumeSet *);
71extern int bc_AddVolumeItem(struct bc_config *aconfig, char *avolName,
72 char *ahost, char *apart, char *avol);
73extern int bc_CreateVolumeSet(struct bc_config *aconfig, char *avolName,
74 afs_int32 aflags);
75extern int bc_DeleteVolumeItem(struct bc_config *aconfig, char *avolName,
76 afs_int32 anumber);
77extern int bc_DeleteVolumeSet(struct bc_config *aconfig, char *avolName,
78 afs_int32 *flags);
79extern int bc_ParseHost(char *aname, struct sockaddr_in *asockaddr);
80extern afs_int32 bc_GetPartitionID(char *aname, afs_int32 *aval);
81extern int bc_CreateDumpSchedule(struct bc_config *aconfig, char *adumpName,
82 afs_int32 expDate, afs_int32 expType);
83extern int bc_DeleteDumpSchedule(struct bc_config *aconfig, char *adumpName);
84extern int FindDump(struct bc_config *aconfig, char *nodeString,
85 struct bc_dumpSchedule **parentptr,
86 struct bc_dumpSchedule **nodeptr);
87extern int bc_ProcessDumpSchedule(struct bc_config *aconfig);
88extern struct bc_dumpSchedule * bc_FindDumpSchedule(struct bc_config *aconfig,
89 char *aname);
90
91
92/* dump.c */
93extern int CheckTCVersion(struct rx_connection *tconn);
94extern int ConnectButc(struct bc_config *config, afs_int32 port,
95 struct rx_connection **tconn);
96extern 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);
105extern int bc_Dumper(int);
106extern int bc_LabelTape(char *afsname, char *pname, afs_int32 size,
107 struct bc_config *config, afs_int32 port);
108extern int bc_ReadLabel(struct bc_config *config, afs_int32 port);
109extern int bc_ScanDumps(struct bc_config *config, afs_int32 dbAddFlag,
110 afs_int32 port);
111
112
113
114
115/* dump_sched.c */
116extern afs_int32 bc_UpdateDumpSchedule(void);
117extern int bc_SaveDumpSchedule(void);
118
119/* main.c */
120extern int localauth, nobutcauth;
121extern char tcell[];
122extern time_t tokenExpires;
123extern afs_int32 doDispatch(afs_int32, char *[], afs_int32);
124extern void bc_HandleMisc(afs_int32 code);
125
126/* regex.c */
127extern char *re_comp(const char *sp);
128extern int re_exec(const char *p1);
129
130/* restore.c */
131extern int BackupName(char *);
132extern int bc_Restorer(afs_int32);
133
134/* status.c */
135extern void initStatus(void);
136extern void lock_cmdLine(void);
137extern void unlock_cmdLine(void);
138extern void clearStatus(afs_uint32, afs_uint32);
139
140/* tape_hosts.c */
141extern afs_int32 bc_UpdateHosts(void);
142extern int bc_SaveHosts(void);
143
144/* ubik_db_if.c */
145extern afs_int32 filesize(FILE *stream);
146extern int bc_CheckTextVersion(udbClientTextP ctPtr);
147extern int bc_openTextFile(udbClientTextP ctPtr, char *tmpFileName);
148extern int bcdb_GetTextFile(udbClientTextP ctPtr);
149extern 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);
153extern int bcdb_FindDump(char *volumeName, afs_int32 beforeDate,
154 struct budb_dumpEntry *deptr);
155extern afs_int32 bcdb_FindLastVolClone(char *volSetName, char *dumpName,
156 char *volName, afs_int32 *clonetime);
157extern afs_int32 bcdb_listDumps (afs_int32 sflags, afs_int32 groupId,
158 afs_int32 fromTime, afs_int32 toTime,
159 budb_dumpsList *dumps, budb_dumpsList *flags);
160extern afs_int32 bcdb_DeleteVDP(char *, char *, afs_int32 );
161extern afs_int32 bcdb_FindClone(afs_int32, char *, afs_int32 *);
162extern 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);
166extern int bcdb_FindTape(afs_int32 dumpid, char *tapeName,
167 struct budb_tapeEntry *teptr);
168
169extern afs_int32 udbClientInit(int noAuthFlag, int localauth, char *cellName);
170
171/* vol_sets.c */
172extern afs_int32 bc_UpdateVolumeSet(void);
173extern int bc_SaveVolumeSet(void);
174
175/* volstub.c */
176
177extern afs_int32 volImageTime(afs_uint32 serv, afs_int32 part, afs_uint32 volid,
178 afs_int32 voltype, afs_int32 *clDatePtr);
179#endif
180