}
static int
-IDecProc(Inode adata, struct clone_rock *aparm)
+IDecProc(Inode adata, void *arock)
{
+ struct clone_rock *aparm = (struct clone_rock *)arock;
IH_DEC(aparm->h, adata, aparm->vol);
DOPOLL;
return 0;
Institution: The Information Technology Center, Carnegie-Mellon University
*/
-#ifdef notdef
-
-/* All this is going away in early 1989 */
-int newVLDB; /* Compatibility flag */
-
-#endif
-static int newVLDB = 1;
-
#ifndef AFS_PTHREAD_ENV
#define USUAL_PRIORITY (LWP_MAX_PRIORITY - 2)
#include <afs/afsint.h>
#include <afs/assert.h>
-
#include <fcntl.h>
#ifndef AFS_NT40_ENV
extern afs_int32 FSYNC_StatsOp(FSSYNC_StatsOp_hdr * scom, int command, int reason,
SYNC_response * res_in);
+extern void FSYNC_fsInit(void);
+
#endif /* __fssync_h_ */
/* ListViceInodes - write inode data to a results file. */
static int DecodeInode(char *dpath, char *name, struct ViceInodeInfo *info,
- int volid);
-static int DecodeVolumeName(char *name, int *vid);
+ unsigned int volid);
+static int DecodeVolumeName(char *name, unsigned int *vid);
static int namei_ListAFSSubDirs(IHandle_t * dirIH,
int (*write_fun) (FILE *,
struct ViceInodeInfo *,
}
static int
-DecodeVolumeName(char *name, int *vid)
+DecodeVolumeName(char *name, unsigned int *vid)
{
if (strlen(name) <= 2)
return -1;
- *vid = (int)flipbase64_to_int64(name);
+ *vid = (unsigned int)flipbase64_to_int64(name);
return 0;
}
* Get
*/
static int
-DecodeInode(char *dpath, char *name, struct ViceInodeInfo *info, int volid)
+DecodeInode(char *dpath, char *name, struct ViceInodeInfo *info,
+ unsigned int volid)
{
char fpath[512];
struct afs_stat status;
* this routine is called by namei_convertROtoRWvolume()
*/
+#ifdef FSSYNC_BUILD_CLIENT
static afs_int32
convertVolumeInfo(int fdr, int fdw, afs_uint32 vid)
{
}
return 0;
}
+#endif
/*
* Convert a RO-volume into a RW-volume
char n_inode[NAMEI_LCOMP_LEN];
char n_path[NAMEI_PATH_LEN];
} namei_t;
+
void namei_HandleToName(namei_t * name, IHandle_t * h);
+int namei_ConvertROtoRWvolume(char *pname, afs_uint32 volumeId);
+int namei_replace_file_by_hardlink(IHandle_t *hLink, IHandle_t *hTarget);
#endif /* AFS_NAMEI_ENV */
* Note that ainfo->u.param[0] is always the volume ID, for any vice inode.
*/
static int
-NukeProc(struct ViceInodeInfo *ainfo, afs_int32 avolid, struct ilist **allInodes)
+NukeProc(struct ViceInodeInfo *ainfo, afs_uint32 avolid, void *arock)
{
+ struct ilist **allInodes = (struct ilist **)arock;
struct ilist *ti;
register afs_int32 i;
#include "salvage.h"
#include "afs/assert.h"
#include "afs/dir.h"
+#include "vol_internal.h"
/* returns 0 on success, errno on failure */
int
#include "salvsync.h"
#include "viceinode.h"
#include "salvage.h"
-#include "volinodes.h" /* header magic number, etc. stuff */
#include "vol-salvage.h"
#ifdef AFS_NT40_ENV
#include <pthread.h>
#include "volume.h"
#include "partition.h"
#include "viceinode.h"
-#include "volinodes.h"
#include <afs/afssyscalls.h>
#include <afs/afsutil.h>
#include "salvage.h"
#include "volinodes.h" /* header magic number, etc. stuff */
#include "vol-salvage.h"
+#include "vol_internal.h"
+
#ifdef AFS_NT40_ENV
#include <pthread.h>
#endif
}
int
-JudgeEntry(struct DirSummary *dir, char *name, VnodeId vnodeNumber,
- Unique unique)
+JudgeEntry(void *dirVal, char *name, afs_int32 vnodeNumber,
+ afs_int32 unique)
{
+ struct DirSummary *dir = (struct DirSummary *)dirVal;
struct VnodeEssence *vnodeEssence;
afs_int32 dirOrphaned, todelete;
Unique * maxu);
extern int GetInodeSummary(char *path, VolumeId singleVolumeNumber);
extern void GetVolumeSummary(VolumeId singleVolumeNumber);
-extern int JudgeEntry(struct DirSummary *dir, char *name, VnodeId vnodeNumber,
- Unique unique);
+extern int JudgeEntry(void *dirVal, char *name, afs_int32 vnodeNumber,
+ afs_int32 unique);
extern void MaybeZapVolume(register struct InodeSummary *isp, char *message,
int deleteMe, int check);
extern void ObtainSalvageLock(void);
--- /dev/null
+#ifndef AFS_SRC_VOL_INTERNAL_H
+#define AFS_SRC_VOL_INTERNAL_H
+
+/* physio.c */
+extern void SetSalvageDirHandle(DirHandle *, afs_int32, Device, Inode);
+
+#endif