⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 coda.h

📁 linux得一些常用命令,以及linux环境下的c编程
💻 H
📖 第 1 页 / 共 2 页
字号:
    int	flags;};struct coda_close_out {    struct coda_out_hdr out;};/* coda_ioctl: */struct coda_ioctl_in {    struct coda_in_hdr ih;    ViceFid VFid;    int	cmd;    int	len;    int	rwflag;    char *data;			/* Place holder for data. */};struct coda_ioctl_out {    struct coda_out_hdr oh;    int	len;    caddr_t	data;		/* Place holder for data. */};/* coda_getattr: */struct coda_getattr_in {    struct coda_in_hdr ih;    ViceFid VFid;};struct coda_getattr_out {    struct coda_out_hdr oh;    struct coda_vattr attr;};/* coda_setattr: NO_OUT */struct coda_setattr_in {    struct coda_in_hdr ih;    ViceFid VFid;    struct coda_vattr attr;};struct coda_setattr_out {    struct coda_out_hdr out;};/* coda_access: NO_OUT */struct coda_access_in {    struct coda_in_hdr ih;    ViceFid	VFid;    int	flags;};struct coda_access_out {    struct coda_out_hdr out;};/* lookup flags */#define CLU_CASE_SENSITIVE     0x01#define CLU_CASE_INSENSITIVE   0x02/* coda_lookup: */struct  coda_lookup_in {    struct coda_in_hdr ih;    ViceFid	VFid;    int         name;		/* Place holder for data. */    int         flags;	};struct coda_lookup_out {    struct coda_out_hdr oh;    ViceFid VFid;    int	vtype;};/* coda_create: */struct coda_create_in {    struct coda_in_hdr ih;    ViceFid VFid;    struct coda_vattr attr;    int excl;    int mode;    int 	name;		/* Place holder for data. */};struct coda_create_out {    struct coda_out_hdr oh;    ViceFid VFid;    struct coda_vattr attr;};/* coda_remove: NO_OUT */struct coda_remove_in {    struct coda_in_hdr ih;    ViceFid	VFid;    int name;		/* Place holder for data. */};struct coda_remove_out {    struct coda_out_hdr out;};/* coda_link: NO_OUT */struct coda_link_in {    struct coda_in_hdr ih;    ViceFid sourceFid;          /* cnode to link *to* */    ViceFid destFid;            /* Directory in which to place link */    int tname;		/* Place holder for data. */};struct coda_link_out {    struct coda_out_hdr out;};/* coda_rename: NO_OUT */struct coda_rename_in {    struct coda_in_hdr ih;    ViceFid	sourceFid;    int 	srcname;    ViceFid destFid;    int 	destname;};struct coda_rename_out {    struct coda_out_hdr out;};/* coda_mkdir: */struct coda_mkdir_in {    struct coda_in_hdr ih;    ViceFid	VFid;    struct coda_vattr attr;    int	   name;		/* Place holder for data. */};struct coda_mkdir_out {    struct coda_out_hdr oh;    ViceFid VFid;    struct coda_vattr attr;};/* coda_rmdir: NO_OUT */struct coda_rmdir_in {    struct coda_in_hdr ih;    ViceFid	VFid;    int name;		/* Place holder for data. */};struct coda_rmdir_out {    struct coda_out_hdr out;};/* coda_symlink: NO_OUT */struct coda_symlink_in {    struct coda_in_hdr ih;    ViceFid	VFid;          /* Directory to put symlink in */    int srcname;    struct coda_vattr attr;    int tname;};struct coda_symlink_out {    struct coda_out_hdr out;};/* coda_readlink: */struct coda_readlink_in {    struct coda_in_hdr ih;    ViceFid VFid;};struct coda_readlink_out {    struct coda_out_hdr oh;    int	count;    caddr_t	data;		/* Place holder for data. */};/* coda_fsync: NO_OUT */struct coda_fsync_in {    struct coda_in_hdr ih;    ViceFid VFid;};struct coda_fsync_out {    struct coda_out_hdr out;};/* coda_vget: */struct coda_vget_in {    struct coda_in_hdr ih;    ViceFid VFid;};struct coda_vget_out {    struct coda_out_hdr oh;    ViceFid VFid;    int	vtype;};/* CODA_SIGNAL is out-of-band, doesn't need data. *//* CODA_INVALIDATE is a venus->kernel call *//* CODA_FLUSH is a venus->kernel call *//* coda_purgeuser: *//* CODA_PURGEUSER is a venus->kernel call */struct coda_purgeuser_out {    struct coda_out_hdr oh;    struct coda_cred cred;};/* coda_zapfile: *//* CODA_ZAPFILE is a venus->kernel call */struct coda_zapfile_out {      struct coda_out_hdr oh;    ViceFid CodaFid;};/* coda_zapdir: *//* CODA_ZAPDIR is a venus->kernel call */	struct coda_zapdir_out {	      struct coda_out_hdr oh;    ViceFid CodaFid;};/* coda_zapnode: *//* CODA_ZAPVNODE is a venus->kernel call */	struct coda_zapvnode_out {     struct coda_out_hdr oh;    struct coda_cred cred;    ViceFid VFid;};/* coda_purgefid: *//* CODA_PURGEFID is a venus->kernel call */	struct coda_purgefid_out {     struct coda_out_hdr oh;    ViceFid CodaFid;};/* coda_replace: *//* CODA_REPLACE is a venus->kernel call */	struct coda_replace_out { /* coda_replace is a venus->kernel call */    struct coda_out_hdr oh;    ViceFid NewFid;    ViceFid OldFid;};/* coda_open_by_fd: */struct coda_open_by_fd_in {    struct coda_in_hdr ih;    ViceFid    VFid;    int        flags;};struct coda_open_by_fd_out {    struct coda_out_hdr oh;    int fd;#ifdef __KERNEL__    struct file *fh; /* not passed from userspace but used in-kernel only */#endif};/* coda_open_by_path: */struct coda_open_by_path_in {    struct coda_in_hdr ih;    ViceFid	VFid;    int	flags;};struct coda_open_by_path_out {    struct coda_out_hdr oh;	int path;};/* coda_statfs: NO_IN */struct coda_statfs_in {    struct coda_in_hdr in;};struct coda_statfs_out {    struct coda_out_hdr oh;    struct coda_statfs stat;};/*  * Occasionally, we don't cache the fid returned by CODA_LOOKUP.  * For instance, if the fid is inconsistent.  * This case is handled by setting the top bit of the type result parameter. */#define CODA_NOCACHE          0x80000000union inputArgs {    struct coda_in_hdr ih;		/* NB: every struct below begins with an ih */    struct coda_open_in coda_open;    struct coda_store_in coda_store;    struct coda_release_in coda_release;    struct coda_close_in coda_close;    struct coda_ioctl_in coda_ioctl;    struct coda_getattr_in coda_getattr;    struct coda_setattr_in coda_setattr;    struct coda_access_in coda_access;    struct coda_lookup_in coda_lookup;    struct coda_create_in coda_create;    struct coda_remove_in coda_remove;    struct coda_link_in coda_link;    struct coda_rename_in coda_rename;    struct coda_mkdir_in coda_mkdir;    struct coda_rmdir_in coda_rmdir;    struct coda_symlink_in coda_symlink;    struct coda_readlink_in coda_readlink;    struct coda_fsync_in coda_fsync;    struct coda_vget_in coda_vget;    struct coda_open_by_fd_in coda_open_by_fd;    struct coda_open_by_path_in coda_open_by_path;    struct coda_statfs_in coda_statfs;};union outputArgs {    struct coda_out_hdr oh;		/* NB: every struct below begins with an oh */    struct coda_root_out coda_root;    struct coda_open_out coda_open;    struct coda_ioctl_out coda_ioctl;    struct coda_getattr_out coda_getattr;    struct coda_lookup_out coda_lookup;    struct coda_create_out coda_create;    struct coda_mkdir_out coda_mkdir;    struct coda_readlink_out coda_readlink;    struct coda_vget_out coda_vget;    struct coda_purgeuser_out coda_purgeuser;    struct coda_zapfile_out coda_zapfile;    struct coda_zapdir_out coda_zapdir;    struct coda_zapvnode_out coda_zapvnode;    struct coda_purgefid_out coda_purgefid;    struct coda_replace_out coda_replace;    struct coda_open_by_fd_out coda_open_by_fd;    struct coda_open_by_path_out coda_open_by_path;    struct coda_statfs_out coda_statfs;};    union coda_downcalls {    /* CODA_INVALIDATE is a venus->kernel call */    /* CODA_FLUSH is a venus->kernel call */    struct coda_purgeuser_out purgeuser;    struct coda_zapfile_out zapfile;    struct coda_zapdir_out zapdir;    struct coda_zapvnode_out zapvnode;    struct coda_purgefid_out purgefid;    struct coda_replace_out replace;};/* * Used for identifying usage of "Control" and pioctls */#define PIOCPARM_MASK 0x0000ffffstruct ViceIoctl {        caddr_t in, out;        /* Data to be transferred in, or out */        short in_size;          /* Size of input buffer <= 2K */        short out_size;         /* Maximum size of output buffer, <= 2K */};struct PioctlData {        const char *path;        int follow;        struct ViceIoctl vi;};#define	CODA_CONTROL		".CONTROL"#define CODA_CONTROLLEN           8#define	CTL_VOL			-1#define	CTL_VNO			-1#define	CTL_UNI			-1#define CTL_INO                 -1#define	CTL_FILE		"/coda/.CONTROL"#define	IS_CTL_FID(fidp)	((fidp)->Volume == CTL_VOL &&\				 (fidp)->Vnode == CTL_VNO &&\				 (fidp)->Unique == CTL_UNI)/* Data passed to mount */#define CODA_MOUNT_VERSION 1struct coda_mount_data {	int		version;	int		fd;       /* Opened device */};#endif 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -