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 _VOLSER_PROTOTYPES_H
11 #define _VOLSER_PROTOTYPES_H
17 extern void MapPartIdIntoName(afs_int32 partId, char *partName);
18 extern int yesprompt(char *str);
19 extern int PrintError(char *msg, afs_int32 errcode);
20 extern void init_volintInfo(struct volintInfo *vinfo);
21 extern int UV_SetSecurity(register struct rx_securityClass *as,
23 extern struct rx_connection *UV_Bind(afs_int32 aserver, afs_int32 port);
24 extern void SubEnumerateEntry(struct nvldbentry *entry);
25 extern void EnumerateEntry(struct nvldbentry *entry);
26 extern int UV_NukeVolume(afs_int32 server, afs_int32 partid, afs_uint32 volid);
27 extern int UV_PartitionInfo64(afs_int32 server, char *pname,
28 struct diskPartition64 *partition);
29 extern int UV_CreateVolume(afs_int32 aserver, afs_int32 apart, char *aname,
31 extern int UV_CreateVolume2(afs_int32 aserver, afs_int32 apart, char *aname,
32 afs_int32 aquota, afs_int32 aspare1,
33 afs_int32 aspare2, afs_int32 aspare3,
34 afs_int32 aspare4, afs_uint32 * anewid);
35 extern int UV_AddVLDBEntry(afs_int32 aserver, afs_int32 apart, char *aname,
37 extern int UV_DeleteVolume(afs_int32 aserver, afs_int32 apart,
39 extern void sigint_handler(int x);
40 extern int UV_MoveVolume(afs_uint32 afromvol, afs_int32 afromserver,
41 afs_int32 afrompart, afs_int32 atoserver,
43 extern int UV_MoveVolume2(afs_uint32 afromvol, afs_int32 afromserver,
44 afs_int32 afrompart, afs_int32 atoserver,
45 afs_int32 atopart, int flags);
46 extern int UV_BackupVolume(afs_int32 aserver, afs_int32 apart,
48 extern int UV_ReleaseVolume(afs_uint32 afromvol, afs_int32 afromserver,
49 afs_int32 afrompart, int forceflag);
50 extern void dump_sig_handler(int x);
51 extern int UV_DumpVolume(afs_uint32 afromvol, afs_int32 afromserver,
52 afs_int32 afrompart, afs_int32 fromdate,
53 afs_int32(*DumpFunction) (), char *rock, afs_int32 flags);
54 extern int UV_RestoreVolume(afs_int32 toserver, afs_int32 topart,
55 afs_uint32 tovolid, char tovolname[], int restoreflags,
56 afs_int32(*WriteData) (), char *rock);
57 extern int UV_RestoreVolume2(afs_int32 toserver, afs_int32 topart, afs_uint32 tovolid,
58 afs_int32 toparentid, char tovolname[], int flags,
59 afs_int32(*WriteData) (), char *rock);
60 extern int UV_LockRelease(afs_uint32 volid);
61 extern int UV_AddSite(afs_int32 server, afs_int32 part, afs_uint32 volid, afs_int32 valid);
62 extern int UV_RemoveSite(afs_int32 server, afs_int32 part, afs_uint32 volid);
63 extern int UV_ChangeLocation(afs_int32 server, afs_int32 part,
65 extern int UV_ListPartitions(afs_int32 aserver, struct partList *ptrPartList,
67 extern int UV_ZapVolumeClones(afs_int32 aserver, afs_int32 apart,
68 struct volDescription *volPtr,
70 extern int UV_GenerateVolumeClones(afs_int32 aserver, afs_int32 apart,
71 struct volDescription *volPtr,
73 extern int UV_ListVolumes(afs_int32 aserver, afs_int32 apart, int all,
74 struct volintInfo **resultPtr, afs_int32 * size);
75 extern int UV_XListVolumes(afs_int32 a_serverID, afs_int32 a_partID,
76 int a_all, struct volintXInfo **a_resultPP,
77 afs_int32 * a_numEntsInResultP);
78 extern int UV_ListOneVolume(afs_int32 aserver, afs_int32 apart,
79 afs_uint32 volid, struct volintInfo **resultPtr);
80 extern int UV_XListOneVolume(afs_int32 a_serverID, afs_int32 a_partID,
82 struct volintXInfo **a_resultPP);
83 extern int sortVolumes(const void *a, const void *b);
84 extern int UV_SyncVolume(afs_int32 aserver, afs_int32 apart, char *avolname,
86 extern int UV_SyncVldb(afs_int32 aserver, afs_int32 apart, int flags,
88 extern afs_int32 VolumeExists(afs_int32 server, afs_int32 partition,
90 extern afs_int32 CheckVldbRWBK(struct nvldbentry *entry,
91 afs_int32 * modified);
92 extern int CheckVldbRO(struct nvldbentry *entry, afs_int32 * modified);
93 extern afs_int32 CheckVldb(struct nvldbentry *entry, afs_int32 * modified);
94 extern int UV_SyncServer(afs_int32 aserver, afs_int32 apart, int flags,
96 extern int UV_RenameVolume(struct nvldbentry *entry, char oldname[],
98 extern int UV_VolserStatus(afs_int32 server, transDebugInfo ** rpntr,
100 extern int UV_VolumeZap(afs_int32 server, afs_int32 part, afs_uint32 volid);
101 extern int UV_SetVolume(afs_int32 server, afs_int32 partition,
102 afs_uint32 volid, afs_int32 transflag,
103 afs_int32 setflag, int sleeptime);
104 extern int UV_SetVolumeInfo(afs_int32 server, afs_int32 partition,
105 afs_uint32 volid, volintInfo * infop);
106 extern void MapNetworkToHost(struct nvldbentry *old, struct nvldbentry *new);
107 extern void MapHostToNetwork(struct nvldbentry *entry);
108 extern int UV_CopyVolume2(afs_uint32 afromvol, afs_int32 afromserver,
109 afs_int32 afrompart, char *atovolname,
110 afs_int32 atoserver, afs_int32 atopart,
111 afs_uint32 atovolid, int flags);
112 extern int UV_CloneVolume(afs_int32 aserver, afs_int32 apart, afs_uint32 avolid,
113 afs_uint32 acloneid, char *aname, int flags);
114 extern int UV_DumpClonedVolume(afs_uint32 afromvol, afs_int32 afromserver,
115 afs_int32 afrompart, afs_int32 fromdate,
116 afs_int32(*DumpFunction) (), char *rock,
118 extern int UV_GetSize(afs_uint32 afromvol, afs_int32 afromserver,
119 afs_int32 afrompart, afs_int32 fromdate,
120 struct volintSize *vol_size);
123 extern int noresolve;