/core/10.4/fusefs/common/fuse_ioctl.h
http://macfuse.googlecode.com/ · C++ Header · 64 lines · 27 code · 15 blank · 22 comment · 0 complexity · 7af6e01fe70d5624490029e91c9cdd8d MD5 · raw file
- /*
- * Copyright (C) 2006-2008 Google. All Rights Reserved.
- * Amit Singh <singh@>
- */
- #ifndef _FUSE_IOCTL_H_
- #define _FUSE_IOCTL_H_
- #include <stdint.h>
- #include <sys/ioctl.h>
- /* FUSEDEVIOCxxx */
- /* Get mounter's pid. */
- #define FUSEDEVGETMOUNTERPID _IOR('F', 1, u_int32_t)
- /* Check if FUSE_INIT kernel-user handshake is complete. */
- #define FUSEDEVIOCGETHANDSHAKECOMPLETE _IOR('F', 2, u_int32_t)
- /* Mark the daemon as dead. */
- #define FUSEDEVIOCSETDAEMONDEAD _IOW('F', 3, u_int32_t)
- /* Tell the kernel which operations the daemon implements. */
- #define FUSEDEVIOCSETIMPLEMENTEDBITS _IOW('F', 4, u_int64_t)
- /* Get device's random "secret". */
- #define FUSEDEVIOCGETRANDOM _IOR('F', 5, u_int32_t)
- /*
- * The 'AVFI' (alter-vnode-for-inode) ioctls all require an inode number
- * as an argument. In the user-space library, you can get the inode number
- * from a path by using fuse_lookup_inode_by_path_np() [lib/fuse.c].
- *
- * To see an example of using this, see the implementation of
- * fuse_purge_path_np() in lib/fuse_darwin.c.
- */
- struct fuse_avfi_ioctl {
- uint64_t inode;
- uint64_t cmd;
- uint32_t ubc_flags;
- uint32_t note;
- off_t size;
- };
- /* Alter the vnode (if any) specified by the given inode. */
- #define FUSEDEVIOCALTERVNODEFORINODE _IOW('F', 6, struct fuse_avfi_ioctl)
- #define FSCTLALTERVNODEFORINODE IOCBASECMD(FUSEDEVIOCALTERVNODEFORINODE)
- /*
- * Possible cmd values for AVFI.
- */
- #define FUSE_AVFI_MARKGONE 0x00000001 /* no ubc_flags */
- #define FUSE_AVFI_PURGEATTRCACHE 0x00000002 /* no ubc_flags */
- #define FUSE_AVFI_PURGEVNCACHE 0x00000004 /* no ubc_flags */
- #define FUSE_AVFI_UBC 0x00000008 /* uses ubc_flags */
- #define FUSE_AVFI_UBC_SETSIZE 0x00000010 /* uses ubc_flags, size */
- #define FUSE_AVFI_KNOTE 0x00000020 /* uses note */
- #define FUSE_SETACLSTATE _IOW('h', 10, int32_t)
- #define FSCTLSETACLSTATE IOCBASECMD(FUSE_SETACLSTATE)
- #endif /* _FUSE_IOCTL_H_ */