AppleCDDAFileSystemVFSOps.h [plain text]
#ifndef __APPLE_CDDA_FS_VFS_OPS_H__
#define __APPLE_CDDA_FS_VFS_OPS_H__
#ifdef __cplusplus
extern "C" {
#endif
#ifndef __APPLE_CDDA_FS_VNODE_OPS_H__
#include "AppleCDDAFileSystemVNodeOps.h"
#endif __APPLE_CDDA_FS_VNODE_OPS_H__
#ifdef KERNEL
#include <sys/types.h>
#include <sys/ucred.h>
#include <sys/mount.h>
#include <sys/vnode.h>
#endif
enum
{
kAppleCDDARootFileID = 2,
kNumberOfFakeDirEntries = 3,
kOffsetForFiles = 100
};
extern int ( **gCDDA_VNodeOp_p )( void * );
int CDDA_Init ( struct vfsconf * vfsPtr );
int CDDA_Mount ( struct mount * mountPtr,
char * path,
caddr_t data,
struct nameidata * ndp,
struct proc * theProc );
int CDDA_Start ( struct mount * mountPtr,
int theFlags,
struct proc * theProc );
int CDDA_Unmount ( struct mount * mountPtr,
int theFlags,
struct proc * theProc );
int CDDA_Root ( struct mount * mountPtr,
struct vnode ** vnodeHandle );
int CDDA_Statfs ( struct mount * mountPtr,
struct statfs * statFSPtr,
struct proc * theProc );
int CDDA_VGet ( struct mount * mountPtr,
void * nodeID,
struct vnode ** vNodeHandle );
int CDDA_FileHandleToVNodePtr ( struct mount * mountPtr,
struct fid * fileHandlePtr,
struct mbuf * networkAddressPtr,
struct vnode ** vNodeHandle,
int * exportFlagsPtr,
struct ucred ** anonymousCredHandle );
int CDDA_QuotaControl ( struct mount * mountPtr,
int commands,
uid_t userID,
caddr_t arguments,
struct proc * theProcPtr );
int CDDA_Synchronize ( struct mount * mountPtr,
int waitForIOCompletion,
struct ucred * userCredPtr,
struct proc * theProcPtr );
int CDDA_SystemControl ( int * name,
u_int nameLength,
void * oldPtr,
size_t * oldLengthPtr,
void * newPtr,
size_t newLength,
struct proc * theProcPtr );
int CDDA_VNodePtrToFileHandle ( struct vnode * vNodePtr,
struct fid * fileHandlePtr );
extern struct vfsops gCDDA_VFSOps;
#ifdef __cplusplus
}
#endif
#endif // __APPLE_CDDA_FS_VFS_OPS_H__