extern int namei_unlink(char *name);
/* Inode operations */
-extern Inode namei_MakeSpecIno(int volid, int type);
+extern Inode namei_MakeSpecIno(VolumeId volid, int type);
extern Inode namei_icreate(IHandle_t * lh, char *part, afs_uint32 p1,
afs_uint32 p2, afs_uint32 p3, afs_uint32 p4);
+extern IHandle_t *namei_icreate_init(IHandle_t *lh, int dev, char *part,
+ afs_uint32 p1, afs_uint32 p2,
+ afs_uint32 p3, afs_uint32 p4);
extern FD_t namei_iopen(IHandle_t * h);
extern int namei_irelease(IHandle_t * h);
afs_sfsize_t namei_iread(IHandle_t * h, afs_foff_t offset, char *buf,
extern int namei_GetLinkCount(FdHandle_t * h, Inode ino, int lockit, int fixup, int nowrite);
extern int namei_SetLinkCount(FdHandle_t * h, Inode ino, int count, int locked);
extern int namei_ViceREADME(char *partition);
+extern int namei_FixSpecialOGM(FdHandle_t *h, int check);
#include "nfs.h"
#include "viceinode.h"
int namei_ListAFSFiles(char *dev,
struct ViceInodeInfo * info,
char *dir, char *file), FD_t fp,
int (*judge_fun) (struct ViceInodeInfo * info,
- afs_uint32 vid, void *rock),
- afs_uint32 singleVolumeNumber, void *rock);
+ VolumeId vid, void *rock),
+ VolumeId singleVolumeNumber, void *rock);
int ListViceInodes(char *devname, char *mountedOn, FD_t inodeFile,
- int (*judgeInode) (struct ViceInodeInfo * info, afs_uint32 vid,
+ int (*judgeInode) (struct ViceInodeInfo * info, VolumeId vid,
void *rock),
- afs_uint32 singleVolumeNumber, int *forcep, int forceR,
+ VolumeId singleVolumeNumber, int *forcep, int forceR,
char *wpath, void *rock);
#define NAMEI_LCOMP_LEN 32
#endif
void namei_HandleToName(namei_t * name, IHandle_t * h);
-int namei_ConvertROtoRWvolume(char *pname, afs_uint32 volumeId);
+int namei_ConvertROtoRWvolume(char *pname, VolumeId volumeId);
int namei_replace_file_by_hardlink(IHandle_t *hLink, IHandle_t *hTarget);
# ifdef AFS_SALSRV_ENV
extern void namei_SetWorkQueue(struct afs_work_queue *wq);
# endif
+int namei_RemoveDirectories(char *pname, afs_int32 vid);
+
#endif /* AFS_NAMEI_ENV */
#endif /* _AFS_NAMEI_OPS_H_H_ */