nfs-ganesha 1.4
|
#include <sys/types.h>
#include <sys/param.h>
#include <dirent.h>
#include "config_parsing.h"
#include "err_fsal.h"
#include "RW_Lock.h"
#include "ganesha_rpc.h"
#include "fsal_glue.h"
Go to the source code of this file.
Classes | |
struct | fsal_time__ |
struct | fsal_handle_desc |
struct | user_cred |
struct | user_credentials |
struct | fsal_name__ |
struct | fsal_path__ |
struct | fsal_fsid__ |
struct | fsal_dev__ |
struct | fsal_ace__ |
struct | fsal_acl__ |
struct | fsal_acl_data__ |
struct | fsal_acl_key__ |
struct | fsal_attrib_list__ |
struct | fsal_extattrib_list__ |
struct | fsal_dirent__ |
struct | fsal_seek__ |
struct | fsal_staticfsinfo_t |
struct | fsal_dynamicfsinfo__ |
struct | fs_common_initinfo__ |
struct | fs_common_initinfo__::_behavior_ |
struct | fsal_init_info__ |
struct | fsal_parameter__ |
struct | func_fsal_stats__ |
struct | fsal_statistics__ |
struct | fsal_status__ |
struct | fsal_buffdesc__ |
struct | fsal_quota__ |
struct | fsal_lock_param_t |
struct | fsal_share_param_t |
Defines | |
#define | TRUE 1 |
#define | FALSE 0 |
#define | CONF_LABEL_FSAL "FSAL" |
#define | CONF_LABEL_FS_COMMON "FileSystem" |
#define | INDEX_FSAL_lookup 0 |
#define | INDEX_FSAL_access 1 |
#define | INDEX_FSAL_create 2 |
#define | INDEX_FSAL_mkdir 3 |
#define | INDEX_FSAL_truncate 4 |
#define | INDEX_FSAL_getattrs 5 |
#define | INDEX_FSAL_setattrs 6 |
#define | INDEX_FSAL_link 7 |
#define | INDEX_FSAL_opendir 8 |
#define | INDEX_FSAL_readdir 9 |
#define | INDEX_FSAL_closedir 10 |
#define | INDEX_FSAL_open 11 |
#define | INDEX_FSAL_read 12 |
#define | INDEX_FSAL_write 13 |
#define | INDEX_FSAL_close 14 |
#define | INDEX_FSAL_readlink 15 |
#define | INDEX_FSAL_symlink 16 |
#define | INDEX_FSAL_rename 17 |
#define | INDEX_FSAL_unlink 18 |
#define | INDEX_FSAL_mknode 19 |
#define | INDEX_FSAL_unused_20 20 |
#define | INDEX_FSAL_dynamic_fsinfo 21 |
#define | INDEX_FSAL_rcp 22 |
#define | INDEX_FSAL_Init 23 |
#define | INDEX_FSAL_get_stats 24 |
#define | INDEX_FSAL_unused_25 25 |
#define | INDEX_FSAL_unused_26 26 |
#define | INDEX_FSAL_unused_27 27 |
#define | INDEX_FSAL_BuildExportContext 28 |
#define | INDEX_FSAL_InitClientContext 29 |
#define | INDEX_FSAL_GetClientContext 30 |
#define | INDEX_FSAL_lookupPath 31 |
#define | INDEX_FSAL_lookupJunction 32 |
#define | INDEX_FSAL_test_access 33 |
#define | INDEX_FSAL_rmdir 34 |
#define | INDEX_FSAL_CleanObjectResources 35 |
#define | INDEX_FSAL_open_by_name 36 |
#define | INDEX_FSAL_open_by_fileid 37 |
#define | INDEX_FSAL_ListXAttrs 38 |
#define | INDEX_FSAL_GetXAttrValue 39 |
#define | INDEX_FSAL_SetXAttrValue 40 |
#define | INDEX_FSAL_GetXAttrAttrs 41 |
#define | INDEX_FSAL_close_by_fileid 42 |
#define | INDEX_FSAL_setattr_access 43 |
#define | INDEX_FSAL_merge_attrs 44 |
#define | INDEX_FSAL_rename_access 45 |
#define | INDEX_FSAL_unlink_access 46 |
#define | INDEX_FSAL_link_access 47 |
#define | INDEX_FSAL_create_access 48 |
#define | INDEX_FSAL_unused_49 49 |
#define | INDEX_FSAL_CleanUpExportContext 50 |
#define | INDEX_FSAL_getextattrs 51 |
#define | INDEX_FSAL_commit 52 |
#define | INDEX_FSAL_getattrs_descriptor 53 |
#define | INDEX_FSAL_lock_op 54 |
#define | INDEX_FSAL_UP_init 55 |
#define | INDEX_FSAL_UP_addfilter 56 |
#define | INDEX_FSAL_UP_getevents 57 |
#define | INDEX_FSAL_unused_58 58 |
#define | INDEX_FSAL_layoutget 59 |
#define | INDEX_FSAL_layoutreturn 60 |
#define | INDEX_FSAL_layoutcommit 61 |
#define | INDEX_FSAL_getdeviceinfo 62 |
#define | INDEX_FSAL_getdevicelist 63 |
#define | INDEX_FSAL_ds_read 64 |
#define | INDEX_FSAL_ds_write 65 |
#define | INDEX_FSAL_ds_commit 66 |
#define | INDEX_FSAL_share_op 67 |
#define | FSAL_NB_FUNC 68 |
#define | FSAL_XATTR_RW_COOKIE ~0 |
#define | FSAL_READDIR_SIZE 2048 |
#define | FSAL_MAX_NAME_LEN NAME_MAX |
#define | FSAL_MAX_PATH_LEN PATH_MAX |
#define | FSAL_NGROUPS_MAX 32 |
#define | FSAL_NAME_INITIALIZER {"",0} |
#define | FSAL_PATH_INITIALIZER {"",0} |
#define | FSAL_MAX_ACL 2 |
#define | FSAL_ACLSUPPORT_ALLOW 0x01 |
#define | FSAL_ACLSUPPORT_DENY 0x02 |
#define | FSAL_ACE_TYPE_ALLOW 0 |
#define | FSAL_ACE_TYPE_DENY 1 |
#define | FSAL_ACE_TYPE_AUDIT 2 |
#define | FSAL_ACE_TYPE_ALARM 3 |
#define | FSAL_ACE_FLAG_FILE_INHERIT 0x00000001 |
#define | FSAL_ACE_FLAG_DIR_INHERIT 0x00000002 |
#define | FSAL_ACE_FLAG_NO_PROPAGATE 0x00000004 |
#define | FSAL_ACE_FLAG_INHERIT_ONLY 0x00000008 |
#define | FSAL_ACE_FLAG_SUCCESSFUL 0x00000010 |
#define | FSAL_ACE_FLAG_FAILED 0x00000020 |
#define | FSAL_ACE_FLAG_GROUP_ID 0x00000040 |
#define | FSAL_ACE_FLAG_INHERITED 0x00000080 |
#define | FSAL_ACE_IFLAG_EXCLUDE_FILES 0x40000000 |
#define | FSAL_ACE_IFLAG_EXCLUDE_DIRS 0x20000000 |
#define | FSAL_ACE_IFLAG_SPECIAL_ID 0x80000000 |
#define | FSAL_ACE_FLAG_INHERIT |
#define | FSAL_ACE_PERM_READ_DATA 0x00000001 |
#define | FSAL_ACE_PERM_LIST_DIR 0x00000001 |
#define | FSAL_ACE_PERM_WRITE_DATA 0x00000002 |
#define | FSAL_ACE_PERM_ADD_FILE 0x00000002 |
#define | FSAL_ACE_PERM_APPEND_DATA 0x00000004 |
#define | FSAL_ACE_PERM_ADD_SUBDIRECTORY 0x00000004 |
#define | FSAL_ACE_PERM_READ_NAMED_ATTR 0x00000008 |
#define | FSAL_ACE_PERM_WRITE_NAMED_ATTR 0x00000010 |
#define | FSAL_ACE_PERM_EXECUTE 0x00000020 |
#define | FSAL_ACE_PERM_DELETE_CHILD 0x00000040 |
#define | FSAL_ACE_PERM_READ_ATTR 0x00000080 |
#define | FSAL_ACE_PERM_WRITE_ATTR 0x00000100 |
#define | FSAL_ACE_PERM_DELETE 0x00010000 |
#define | FSAL_ACE_PERM_READ_ACL 0x00020000 |
#define | FSAL_ACE_PERM_WRITE_ACL 0x00040000 |
#define | FSAL_ACE_PERM_WRITE_OWNER 0x00080000 |
#define | FSAL_ACE_PERM_SYNCHRONIZE 0x00100000 |
#define | FSAL_ACE_NORMAL_WHO 0 |
#define | FSAL_ACE_SPECIAL_OWNER 1 |
#define | FSAL_ACE_SPECIAL_GROUP 2 |
#define | FSAL_ACE_SPECIAL_EVERYONE 3 |
#define | MD5_DIGEST_LENGTH 16 |
#define | GET_FSAL_ACE_TYPE(ACE) (ACE).type |
#define | GET_FSAL_ACE_PERM(ACE) (ACE).perm |
#define | GET_FSAL_ACE_FLAG(ACE) (ACE).flag |
#define | GET_FSAL_ACE_IFLAG(ACE) (ACE).iflag |
#define | GET_FSAL_ACE_USER(ACE) (ACE).who.uid |
#define | GET_FSAL_ACE_GROUP(ACE) (ACE).who.gid |
#define | IS_FSAL_ACE_BIT(WORD, BIT) (0 != ((WORD) & (BIT))) |
#define | IS_FSAL_ACE_ALL_BITS(WORD, BITS) (BITS == ((WORD) & (BITS))) |
#define | IS_FSAL_ACE_TYPE(ACE, VALUE) ((GET_FSAL_ACE_TYPE(ACE)) == (VALUE)) |
#define | IS_FSAL_ACE_USER(ACE, VALUE) ((GET_FSAL_ACE_USER(ACE)) == (VALUE)) |
#define | IS_FSAL_ACE_GROUP(ACE, VALUE) ((GET_FSAL_ACE_GROUP(ACE)) == (VALUE)) |
#define | IS_FSAL_ACE_ALLOW(ACE) IS_FSAL_ACE_TYPE(ACE, FSAL_ACE_TYPE_ALLOW) |
#define | IS_FSAL_ACE_DENY(ACE) IS_FSAL_ACE_TYPE(ACE, FSAL_ACE_TYPE_DENY) |
#define | IS_FSAL_ACE_AUDIT(ACE) IS_FSAL_ACE_TYPE(ACE, FSAL_ACE_TYPE_AUDIT) |
#define | IS_FSAL_ACE_ALRAM(ACE) IS_FSAL_ACE_TYPE(ACE, FSAL_ACE_TYPE_ALARM) |
#define | IS_FSAL_ACE_FILE_INHERIT(ACE) IS_FSAL_ACE_BIT(GET_FSAL_ACE_FLAG(ACE),FSAL_ACE_FLAG_FILE_INHERIT) |
#define | IS_FSAL_ACE_DIR_INHERIT(ACE) IS_FSAL_ACE_BIT(GET_FSAL_ACE_FLAG(ACE),FSAL_ACE_FLAG_DIR_INHERIT) |
#define | IS_FSAL_ACE_NO_PROPAGATE(ACE) IS_FSAL_ACE_BIT(GET_FSAL_ACE_FLAG(ACE),FSAL_ACE_FLAG_NO_PROPAGATE) |
#define | IS_FSAL_ACE_INHERIT_ONLY(ACE) IS_FSAL_ACE_BIT(GET_FSAL_ACE_FLAG(ACE),FSAL_ACE_FLAG_INHERIT_ONLY) |
#define | IS_FSAL_ACE_FLAG_SUCCESSFUL(ACE) IS_FSAL_ACE_BIT(GET_FSAL_ACE_FLAG(ACE),FSAL_ACE_FLAG_SUCCESSFUL) |
#define | IS_FSAL_ACE_AUDIT_FAILURE(ACE) IS_FSAL_ACE_BIT(GET_FSAL_ACE_FLAG(ACE),FSAL_ACE_FLAG_FAILED) |
#define | IS_FSAL_ACE_GROUP_ID(ACE) IS_FSAL_ACE_BIT(GET_FSAL_ACE_FLAG(ACE),FSAL_ACE_FLAG_GROUP_ID) |
#define | IS_FSAL_ACE_INHERIT(ACE) IS_FSAL_ACE_BIT(GET_FSAL_ACE_FLAG(ACE),FSAL_ACE_FLAG_INHERIT) |
#define | IS_FSAL_ACE_INHERTED(ACE) IS_FSAL_ACE_BIT(GET_FSAL_ACE_FLAG(ACE),FSAL_ACE_FLAG_INHERITED) |
#define | GET_FSAL_ACE_WHO_TYPE(ACE) IS_FSAL_ACE_GROUP_ID(ACE) ? "gid" : "uid" |
#define | GET_FSAL_ACE_WHO(ACE) IS_FSAL_ACE_GROUP_ID(ACE) ? (ACE).who.gid : (ACE).who.uid |
#define | IS_FSAL_ACE_SPECIAL_OWNER(ACE) IS_FSAL_ACE_USER(ACE,FSAL_ACE_SPECIAL_OWNER) |
#define | IS_FSAL_ACE_SPECIAL_GROUP(ACE) IS_FSAL_ACE_USER(ACE,FSAL_ACE_SPECIAL_GROUP) |
#define | IS_FSAL_ACE_SPECIAL_EVERYONE(ACE) IS_FSAL_ACE_USER(ACE,FSAL_ACE_SPECIAL_EVERYONE) |
#define | IS_FSAL_ACE_SPECIAL_ID(ACE) IS_FSAL_ACE_BIT(GET_FSAL_ACE_IFLAG(ACE),FSAL_ACE_IFLAG_SPECIAL_ID) |
#define | IS_FSAL_FILE_APPLICABLE(ACE) (!IS_FSAL_ACE_BIT(GET_FSAL_ACE_IFLAG(ACE),FSAL_ACE_IFLAG_EXCLUDE_FILES)) |
#define | IS_FSAL_DIR_APPLICABLE(ACE) (!IS_FSAL_ACE_BIT(GET_FSAL_ACE_IFLAG(ACE),FSAL_ACE_IFLAG_EXCLUDE_DIRS)) |
#define | IS_FSAL_ACE_READ_DATA(ACE) IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_READ_DATA) |
#define | IS_FSAL_ACE_LIST_DIR(ACE) IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_LIST_DIR) |
#define | IS_FSAL_ACE_WRITE_DATA(ACE) IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_WRITE_DATA) |
#define | IS_FSAL_ACE_ADD_FIILE(ACE) IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_ADD_FILE) |
#define | IS_FSAL_ACE_APPEND_DATA(ACE) IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_APPEND_DATA) |
#define | IS_FSAL_ACE_ADD_SUBDIRECTORY(ACE) IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_ADD_SUBDIRECTORY) |
#define | IS_FSAL_ACE_READ_NAMED_ATTR(ACE) IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_READ_NAMED_ATTR) |
#define | IS_FSAL_ACE_WRITE_NAMED_ATTR(ACE) IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_WRITE_NAMED_ATTR) |
#define | IS_FSAL_ACE_EXECUTE(ACE) IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_EXECUTE) |
#define | IS_FSAL_ACE_DELETE_CHILD(ACE) IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_DELETE_CHILD) |
#define | IS_FSAL_ACE_READ_ATTR(ACE) IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_READ_ATTR) |
#define | IS_FSAL_ACE_WRITE_ATTR(ACE) IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_WRITE_ATTR) |
#define | IS_FSAL_ACE_DELETE(ACE) IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_DELETE) |
#define | IS_FSAL_ACE_READ_ACL(ACE) IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_READ_ACL) |
#define | IS_FSAL_ACE_WRITE_ACL(ACE) IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_WRITE_ACL) |
#define | IS_FSAL_ACE_WRITE_OWNER(ACE) IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_WRITE_OWNER) |
#define | IS_FSAL_ACE_SYNCHRONIZE(ACE) IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_SYNCHRONIZE) |
#define | FSAL_MODE_SUID 04000 |
#define | FSAL_MODE_SGID 02000 |
#define | FSAL_MODE_SVTX 01000 |
#define | FSAL_MODE_RWXU 00700 |
#define | FSAL_MODE_RUSR 00400 |
#define | FSAL_MODE_WUSR 00200 |
#define | FSAL_MODE_XUSR 00100 |
#define | FSAL_MODE_RWXG 00070 |
#define | FSAL_MODE_RGRP 00040 |
#define | FSAL_MODE_WGRP 00020 |
#define | FSAL_MODE_XGRP 00010 |
#define | FSAL_MODE_RWXO 00007 |
#define | FSAL_MODE_ROTH 00004 |
#define | FSAL_MODE_WOTH 00002 |
#define | FSAL_MODE_XOTH 00001 |
#define | FSAL_ATTR_SUPPATTR ((fsal_attrib_mask_t) 0x0000000000000001LL ) |
#define | FSAL_ATTR_TYPE ((fsal_attrib_mask_t) 0x0000000000000002LL ) |
#define | FSAL_ATTR_SIZE ((fsal_attrib_mask_t) 0x0000000000000004LL ) |
#define | FSAL_ATTR_FSID ((fsal_attrib_mask_t) 0x0000000000000008LL ) |
#define | FSAL_ATTR_ACL ((fsal_attrib_mask_t) 0x0000000000000020LL ) |
#define | FSAL_ATTR_FILEID ((fsal_attrib_mask_t) 0x0000000000000040LL ) |
#define | FSAL_ATTR_MODE ((fsal_attrib_mask_t) 0x0000000000000080LL ) |
#define | FSAL_ATTR_NUMLINKS ((fsal_attrib_mask_t) 0x0000000000000100LL ) |
#define | FSAL_ATTR_OWNER ((fsal_attrib_mask_t) 0x0000000000000200LL ) |
#define | FSAL_ATTR_GROUP ((fsal_attrib_mask_t) 0x0000000000000400LL ) |
#define | FSAL_ATTR_RAWDEV ((fsal_attrib_mask_t) 0x0000000000000800LL ) |
#define | FSAL_ATTR_ATIME ((fsal_attrib_mask_t) 0x0000000000001000LL ) |
#define | FSAL_ATTR_CREATION ((fsal_attrib_mask_t) 0x0000000000002000LL ) |
#define | FSAL_ATTR_CTIME ((fsal_attrib_mask_t) 0x0000000000004000LL ) |
#define | FSAL_ATTR_MTIME ((fsal_attrib_mask_t) 0x0000000000008000LL ) |
#define | FSAL_ATTR_SPACEUSED ((fsal_attrib_mask_t) 0x0000000000010000LL ) |
#define | FSAL_ATTR_MOUNTFILEID ((fsal_attrib_mask_t) 0x0000000000020000LL ) |
#define | FSAL_ATTR_CHGTIME ((fsal_attrib_mask_t) 0x0000000000040000LL ) |
#define | FSAL_ATTR_RDATTR_ERR ((fsal_attrib_mask_t) 0x8000000000000000LL ) |
#define | FSAL_ATTR_GENERATION ((fsal_attrib_mask_t) 0x0000000000080000LL ) |
#define | FSAL_ATTR_CHANGE ((fsal_attrib_mask_t) 0x0000000000100000LL ) |
#define | FSAL_ATTRS_MANDATORY |
#define | FSAL_ATTRS_POSIX |
#define | FSAL_OWNER_OK 0x08000000 |
#define | FSAL_R_OK 0x04000000 |
#define | FSAL_W_OK 0x02000000 |
#define | FSAL_X_OK 0x01000000 |
#define | FSAL_F_OK 0x10000000 |
#define | FSAL_ACCESS_OK 0x00000000 |
#define | FSAL_ACCESS_FLAG_BIT_MASK 0x80000000 |
#define | FSAL_MODE_BIT_MASK 0x7F000000 |
#define | FSAL_ACE4_BIT_MASK 0x00FFFFFF |
#define | FSAL_MODE_MASK(access) (access & FSAL_MODE_BIT_MASK) |
#define | FSAL_ACE4_MASK(access) (access & FSAL_ACE4_BIT_MASK) |
#define | FSAL_MODE_MASK_FLAG 0x00000000 |
#define | FSAL_ACE4_MASK_FLAG 0x80000000 |
#define | FSAL_MODE_MASK_SET(access) (access | FSAL_MODE_MASK_FLAG) |
#define | FSAL_ACE4_MASK_SET(access) (access | FSAL_ACE4_MASK_FLAG) |
#define | IS_FSAL_MODE_MASK_VALID(access) ((access & FSAL_ACCESS_FLAG_BIT_MASK) == FSAL_MODE_MASK_FLAG) |
#define | IS_FSAL_ACE4_MASK_VALID(access) ((access & FSAL_ACCESS_FLAG_BIT_MASK) == FSAL_ACE4_MASK_FLAG) |
#define | IS_FSAL_DIR(filetype) (filetype == FSAL_TYPE_DIR) |
#define | FSAL_WRITE_ACCESS |
#define | FSAL_READ_ACCESS |
#define | FSAL_O_CLOSED 0x0000 |
#define | FSAL_O_RDONLY 0x0001 |
#define | FSAL_O_RDWR 0x0002 |
#define | FSAL_O_WRONLY 0x0004 |
#define | FSAL_O_APPEND 0x0008 |
#define | FSAL_O_TRUNC 0x0010 |
#define | FSAL_O_CREATE 0x0020 |
#define | FSAL_O_SYNC 0x0040 |
#define | FSAL_EXPTYPE_PERSISTENT 0x0001 |
#define | FSAL_EXPTYPE_VOLATILE 0x0002 |
#define | FSAL_EXPTYPE_NOEXP_OPEN 0x0004 |
#define | FSAL_EXPTYPE_MIGRATE 0x0008 |
#define | FSAL_EXPTYPE_RENAME 0x0010 |
#define | SET_INTEGER_PARAM(cfg, p_init_info, _field) |
#define | SET_BITMAP_PARAM(cfg, p_init_info, _field) |
#define | SET_BOOLEAN_PARAM(cfg, p_init_info, _field) |
#define | FSAL_RCP_FS_TO_LOCAL 0x0001 |
#define | FSAL_RCP_LOCAL_TO_FS 0x0002 |
#define | FSAL_RCP_LOCAL_CREAT 0x0010 |
#define | FSAL_RCP_LOCAL_EXCL 0x0020 |
#define | FSAL_DIGEST_SIZE_HDLV2 29 |
#define | FSAL_DIGEST_SIZE_HDLV3 61 |
#define | FSAL_DIGEST_SIZE_HDLV4 61 |
#define | FSAL_DIGEST_SIZE_FILEID2 (sizeof(int)) |
#define | FSAL_DIGEST_SIZE_FILEID3 (sizeof(fsal_u64_t)) |
#define | FSAL_DIGEST_SIZE_FILEID4 (sizeof(fsal_u64_t)) |
Typedefs | |
typedef struct fsal_staticfsinfo_t | fsal_staticfsinfo_t |
typedef unsigned long long | fsal_u64_t |
typedef unsigned int | fsal_uint_t |
typedef unsigned short | fsal_ushort_t |
typedef int | fsal_boolean_t |
typedef size_t | fsal_size_t |
typedef off_t | fsal_off_t |
typedef unsigned long | fsal_mdsize_t |
typedef unsigned long | fsal_count_t |
typedef uid_t | fsal_uid_t |
typedef gid_t | fsal_gid_t |
typedef mode_t | fsal_accessmode_t |
typedef struct fsal_time__ | fsal_time_t |
typedef enum fsal_initflag__ | fsal_initflag_t |
typedef enum fsal_nodetype__ | fsal_nodetype_t |
typedef struct fsal_name__ | fsal_name_t |
typedef struct fsal_path__ | fsal_path_t |
typedef struct fsal_fsid__ | fsal_fsid_t |
typedef struct fsal_dev__ | fsal_dev_t |
typedef fsal_ushort_t | fsal_aclsupp_t |
typedef unsigned int | fsal_acetype_t |
typedef unsigned int | fsal_aceflag_t |
typedef fsal_uint_t | fsal_aceperm_t |
typedef struct fsal_ace__ | fsal_ace_t |
typedef struct fsal_acl__ | fsal_acl_t |
typedef struct fsal_acl_data__ | fsal_acl_data_t |
typedef struct fsal_acl_key__ | fsal_acl_key_t |
typedef fsal_u64_t | fsal_attrib_mask_t |
typedef struct fsal_attrib_list__ | fsal_attrib_list_t |
typedef struct fsal_extattrib_list__ | fsal_extattrib_list_t |
typedef fsal_uint_t | fsal_accessflags_t |
typedef struct fsal_dirent__ | fsal_dirent_t |
typedef fsal_ushort_t | fsal_openflags_t |
typedef enum fsal_seektype__ | fsal_seektype_t |
typedef struct fsal_seek__ | fsal_seek_t |
typedef fsal_ushort_t | fsal_fhexptype_t |
typedef struct fsal_dynamicfsinfo__ | fsal_dynamicfsinfo_t |
typedef fsal_ushort_t | fsal_rcpflag_t |
typedef struct fs_common_initinfo__ | fs_common_initinfo_t |
typedef struct fsal_init_info__ | fsal_init_info_t |
typedef struct fsal_parameter__ | fsal_parameter_t |
typedef struct func_fsal_stats__ | func_fsal_stats_t |
typedef struct fsal_statistics__ | fsal_statistics_t |
typedef struct fsal_status__ | fsal_status_t |
typedef struct fsal_buffdesc__ | fsal_buffdesc_t |
typedef struct fsal_quota__ | fsal_quota_t |
typedef enum fsal_quota_type__ | fsal_quota_type_t |
typedef enum fsal_digesttype_t | fsal_digesttype_t |
typedef enum fsal_lock_op_t | fsal_lock_op_t |
typedef enum fsal_lock_t | fsal_lock_t |
typedef struct fsal_lock_param_t | fsal_lock_param_t |
typedef struct fsal_share_param_t | fsal_share_param_t |
Enumerations | |
enum | fsal_initflag__ { FSAL_INIT_FS_DEFAULT = 0, FSAL_INIT_FORCE_VALUE, FSAL_INIT_MAX_LIMIT, FSAL_INIT_MIN_LIMIT } |
enum | fsal_nodetype__ { FSAL_TYPE_FIFO = 0x1, FSAL_TYPE_CHR = 0x2, FSAL_TYPE_DIR = 0x4, FSAL_TYPE_BLK = 0x6, FSAL_TYPE_FILE = 0x8, FSAL_TYPE_LNK = 0xA, FSAL_TYPE_SOCK = 0xC, FSAL_TYPE_XATTR = 0xE, FSAL_TYPE_JUNCTION = 0xF } |
enum | fsal_seektype__ { FSAL_SEEK_SET, FSAL_SEEK_CUR, FSAL_SEEK_END } |
enum | fsal_quota_type__ { FSAL_QUOTA_BLOCKS = 1, FSAL_QUOTA_INODES = 2 } |
enum | fsal_digesttype_t { FSAL_DIGEST_SIZEOF, FSAL_DIGEST_NFSV2, FSAL_DIGEST_NFSV3, FSAL_DIGEST_NFSV4, FSAL_DIGEST_FILEID2, FSAL_DIGEST_FILEID3, FSAL_DIGEST_FILEID4 } |
enum | fsal_lock_op_t { FSAL_OP_LOCKT, FSAL_OP_LOCK, FSAL_OP_LOCKB, FSAL_OP_UNLOCK, FSAL_OP_CANCEL } |
enum | fsal_lock_t { FSAL_LOCK_R, FSAL_LOCK_W, FSAL_NO_LOCK } |
Variables | |
const char * | fsal_function_names [] |
#define CONF_LABEL_FS_COMMON "FileSystem" |
Definition at line 66 of file fsal_types.h.
#define CONF_LABEL_FSAL "FSAL" |
Definition at line 65 of file fsal_types.h.
#define FALSE 0 |
Definition at line 42 of file fsal_types.h.
#define FSAL_ACCESS_FLAG_BIT_MASK 0x80000000 |
Definition at line 656 of file fsal_types.h.
#define FSAL_ACCESS_OK 0x00000000 |
Definition at line 654 of file fsal_types.h.
#define FSAL_ACE4_BIT_MASK 0x00FFFFFF |
Definition at line 658 of file fsal_types.h.
#define FSAL_ACE4_MASK | ( | access | ) | (access & FSAL_ACE4_BIT_MASK) |
Definition at line 661 of file fsal_types.h.
#define FSAL_ACE4_MASK_FLAG 0x80000000 |
Definition at line 664 of file fsal_types.h.
#define FSAL_ACE4_MASK_SET | ( | access | ) | (access | FSAL_ACE4_MASK_FLAG) |
Definition at line 667 of file fsal_types.h.
#define FSAL_ACE_FLAG_DIR_INHERIT 0x00000002 |
Definition at line 349 of file fsal_types.h.
#define FSAL_ACE_FLAG_FAILED 0x00000020 |
Definition at line 353 of file fsal_types.h.
#define FSAL_ACE_FLAG_FILE_INHERIT 0x00000001 |
Definition at line 348 of file fsal_types.h.
#define FSAL_ACE_FLAG_GROUP_ID 0x00000040 |
Definition at line 354 of file fsal_types.h.
#define FSAL_ACE_FLAG_INHERIT |
Definition at line 363 of file fsal_types.h.
#define FSAL_ACE_FLAG_INHERIT_ONLY 0x00000008 |
Definition at line 351 of file fsal_types.h.
#define FSAL_ACE_FLAG_INHERITED 0x00000080 |
Definition at line 355 of file fsal_types.h.
#define FSAL_ACE_FLAG_NO_PROPAGATE 0x00000004 |
Definition at line 350 of file fsal_types.h.
#define FSAL_ACE_FLAG_SUCCESSFUL 0x00000010 |
Definition at line 352 of file fsal_types.h.
#define FSAL_ACE_IFLAG_EXCLUDE_DIRS 0x20000000 |
Definition at line 360 of file fsal_types.h.
#define FSAL_ACE_IFLAG_EXCLUDE_FILES 0x40000000 |
ACE internal flags
Definition at line 359 of file fsal_types.h.
#define FSAL_ACE_IFLAG_SPECIAL_ID 0x80000000 |
Definition at line 361 of file fsal_types.h.
#define FSAL_ACE_NORMAL_WHO 0 |
ACE who
Definition at line 390 of file fsal_types.h.
#define FSAL_ACE_PERM_ADD_FILE 0x00000002 |
Definition at line 373 of file fsal_types.h.
#define FSAL_ACE_PERM_ADD_SUBDIRECTORY 0x00000004 |
Definition at line 375 of file fsal_types.h.
#define FSAL_ACE_PERM_APPEND_DATA 0x00000004 |
Definition at line 374 of file fsal_types.h.
#define FSAL_ACE_PERM_DELETE 0x00010000 |
Definition at line 382 of file fsal_types.h.
#define FSAL_ACE_PERM_DELETE_CHILD 0x00000040 |
Definition at line 379 of file fsal_types.h.
#define FSAL_ACE_PERM_EXECUTE 0x00000020 |
Definition at line 378 of file fsal_types.h.
#define FSAL_ACE_PERM_LIST_DIR 0x00000001 |
Definition at line 371 of file fsal_types.h.
#define FSAL_ACE_PERM_READ_ACL 0x00020000 |
Definition at line 383 of file fsal_types.h.
#define FSAL_ACE_PERM_READ_ATTR 0x00000080 |
Definition at line 380 of file fsal_types.h.
#define FSAL_ACE_PERM_READ_DATA 0x00000001 |
Definition at line 370 of file fsal_types.h.
#define FSAL_ACE_PERM_READ_NAMED_ATTR 0x00000008 |
Definition at line 376 of file fsal_types.h.
#define FSAL_ACE_PERM_SYNCHRONIZE 0x00100000 |
Definition at line 386 of file fsal_types.h.
#define FSAL_ACE_PERM_WRITE_ACL 0x00040000 |
Definition at line 384 of file fsal_types.h.
#define FSAL_ACE_PERM_WRITE_ATTR 0x00000100 |
Definition at line 381 of file fsal_types.h.
#define FSAL_ACE_PERM_WRITE_DATA 0x00000002 |
Definition at line 372 of file fsal_types.h.
#define FSAL_ACE_PERM_WRITE_NAMED_ATTR 0x00000010 |
Definition at line 377 of file fsal_types.h.
#define FSAL_ACE_PERM_WRITE_OWNER 0x00080000 |
Definition at line 385 of file fsal_types.h.
#define FSAL_ACE_SPECIAL_EVERYONE 3 |
Definition at line 393 of file fsal_types.h.
#define FSAL_ACE_SPECIAL_GROUP 2 |
Definition at line 392 of file fsal_types.h.
#define FSAL_ACE_SPECIAL_OWNER 1 |
Definition at line 391 of file fsal_types.h.
#define FSAL_ACE_TYPE_ALARM 3 |
Definition at line 341 of file fsal_types.h.
#define FSAL_ACE_TYPE_ALLOW 0 |
Definition at line 338 of file fsal_types.h.
#define FSAL_ACE_TYPE_AUDIT 2 |
Definition at line 340 of file fsal_types.h.
#define FSAL_ACE_TYPE_DENY 1 |
Definition at line 339 of file fsal_types.h.
#define FSAL_ACLSUPPORT_ALLOW 0x01 |
Definition at line 331 of file fsal_types.h.
#define FSAL_ACLSUPPORT_DENY 0x02 |
Definition at line 332 of file fsal_types.h.
#define FSAL_ATTR_ACL ((fsal_attrib_mask_t) 0x0000000000000020LL ) |
Definition at line 544 of file fsal_types.h.
#define FSAL_ATTR_ATIME ((fsal_attrib_mask_t) 0x0000000000001000LL ) |
Definition at line 558 of file fsal_types.h.
#define FSAL_ATTR_CHANGE ((fsal_attrib_mask_t) 0x0000000000100000LL ) |
Definition at line 580 of file fsal_types.h.
#define FSAL_ATTR_CHGTIME ((fsal_attrib_mask_t) 0x0000000000040000LL ) |
Definition at line 571 of file fsal_types.h.
#define FSAL_ATTR_CREATION ((fsal_attrib_mask_t) 0x0000000000002000LL ) |
Definition at line 560 of file fsal_types.h.
#define FSAL_ATTR_CTIME ((fsal_attrib_mask_t) 0x0000000000004000LL ) |
Definition at line 562 of file fsal_types.h.
#define FSAL_ATTR_FILEID ((fsal_attrib_mask_t) 0x0000000000000040LL ) |
Definition at line 546 of file fsal_types.h.
#define FSAL_ATTR_FSID ((fsal_attrib_mask_t) 0x0000000000000008LL ) |
Definition at line 542 of file fsal_types.h.
#define FSAL_ATTR_GENERATION ((fsal_attrib_mask_t) 0x0000000000080000LL ) |
Definition at line 577 of file fsal_types.h.
#define FSAL_ATTR_GROUP ((fsal_attrib_mask_t) 0x0000000000000400LL ) |
Definition at line 554 of file fsal_types.h.
#define FSAL_ATTR_MODE ((fsal_attrib_mask_t) 0x0000000000000080LL ) |
Definition at line 548 of file fsal_types.h.
#define FSAL_ATTR_MOUNTFILEID ((fsal_attrib_mask_t) 0x0000000000020000LL ) |
Definition at line 568 of file fsal_types.h.
#define FSAL_ATTR_MTIME ((fsal_attrib_mask_t) 0x0000000000008000LL ) |
Definition at line 564 of file fsal_types.h.
#define FSAL_ATTR_NUMLINKS ((fsal_attrib_mask_t) 0x0000000000000100LL ) |
Definition at line 550 of file fsal_types.h.
#define FSAL_ATTR_OWNER ((fsal_attrib_mask_t) 0x0000000000000200LL ) |
Definition at line 552 of file fsal_types.h.
#define FSAL_ATTR_RAWDEV ((fsal_attrib_mask_t) 0x0000000000000800LL ) |
Definition at line 556 of file fsal_types.h.
#define FSAL_ATTR_RDATTR_ERR ((fsal_attrib_mask_t) 0x8000000000000000LL ) |
Definition at line 574 of file fsal_types.h.
#define FSAL_ATTR_SIZE ((fsal_attrib_mask_t) 0x0000000000000004LL ) |
Definition at line 540 of file fsal_types.h.
#define FSAL_ATTR_SPACEUSED ((fsal_attrib_mask_t) 0x0000000000010000LL ) |
Definition at line 566 of file fsal_types.h.
#define FSAL_ATTR_SUPPATTR ((fsal_attrib_mask_t) 0x0000000000000001LL ) |
Attribute masks.
Definition at line 536 of file fsal_types.h.
#define FSAL_ATTR_TYPE ((fsal_attrib_mask_t) 0x0000000000000002LL ) |
Definition at line 538 of file fsal_types.h.
#define FSAL_ATTRS_MANDATORY |
Definition at line 587 of file fsal_types.h.
#define FSAL_ATTRS_POSIX |
( FSAL_ATTR_MODE | FSAL_ATTR_FILEID | \ FSAL_ATTR_FSID | FSAL_ATTR_RAWDEV | \ FSAL_ATTR_NUMLINKS | FSAL_ATTR_OWNER |\ FSAL_ATTR_GROUP | FSAL_ATTR_SIZE | \ FSAL_ATTR_ATIME | FSAL_ATTR_MTIME | \ FSAL_ATTR_CTIME | FSAL_ATTR_SPACEUSED )
Definition at line 592 of file fsal_types.h.
#define FSAL_DIGEST_SIZE_FILEID2 (sizeof(int)) |
Definition at line 1064 of file fsal_types.h.
#define FSAL_DIGEST_SIZE_FILEID3 (sizeof(fsal_u64_t)) |
Definition at line 1065 of file fsal_types.h.
#define FSAL_DIGEST_SIZE_FILEID4 (sizeof(fsal_u64_t)) |
Definition at line 1066 of file fsal_types.h.
#define FSAL_DIGEST_SIZE_HDLV2 29 |
Definition at line 1053 of file fsal_types.h.
#define FSAL_DIGEST_SIZE_HDLV3 61 |
Definition at line 1054 of file fsal_types.h.
#define FSAL_DIGEST_SIZE_HDLV4 61 |
Definition at line 1059 of file fsal_types.h.
#define FSAL_EXPTYPE_MIGRATE 0x0008 |
Definition at line 768 of file fsal_types.h.
#define FSAL_EXPTYPE_NOEXP_OPEN 0x0004 |
Definition at line 764 of file fsal_types.h.
#define FSAL_EXPTYPE_PERSISTENT 0x0001 |
Definition at line 755 of file fsal_types.h.
#define FSAL_EXPTYPE_RENAME 0x0010 |
Definition at line 772 of file fsal_types.h.
#define FSAL_EXPTYPE_VOLATILE 0x0002 |
Definition at line 760 of file fsal_types.h.
#define FSAL_F_OK 0x10000000 |
Definition at line 653 of file fsal_types.h.
#define FSAL_MAX_ACL 2 |
Definition at line 326 of file fsal_types.h.
#define FSAL_MAX_NAME_LEN NAME_MAX |
Definition at line 226 of file fsal_types.h.
#define FSAL_MAX_PATH_LEN PATH_MAX |
Definition at line 227 of file fsal_types.h.
#define FSAL_MODE_BIT_MASK 0x7F000000 |
Definition at line 657 of file fsal_types.h.
#define FSAL_MODE_MASK | ( | access | ) | (access & FSAL_MODE_BIT_MASK) |
Definition at line 660 of file fsal_types.h.
#define FSAL_MODE_MASK_FLAG 0x00000000 |
Definition at line 663 of file fsal_types.h.
#define FSAL_MODE_MASK_SET | ( | access | ) | (access | FSAL_MODE_MASK_FLAG) |
Definition at line 666 of file fsal_types.h.
#define FSAL_MODE_RGRP 00040 |
Definition at line 514 of file fsal_types.h.
#define FSAL_MODE_ROTH 00004 |
Definition at line 520 of file fsal_types.h.
#define FSAL_MODE_RUSR 00400 |
Definition at line 508 of file fsal_types.h.
#define FSAL_MODE_RWXG 00070 |
Definition at line 512 of file fsal_types.h.
#define FSAL_MODE_RWXO 00007 |
Definition at line 518 of file fsal_types.h.
#define FSAL_MODE_RWXU 00700 |
Definition at line 506 of file fsal_types.h.
#define FSAL_MODE_SGID 02000 |
Definition at line 503 of file fsal_types.h.
#define FSAL_MODE_SUID 04000 |
Modes constants
Definition at line 502 of file fsal_types.h.
#define FSAL_MODE_SVTX 01000 |
Definition at line 504 of file fsal_types.h.
#define FSAL_MODE_WGRP 00020 |
Definition at line 515 of file fsal_types.h.
#define FSAL_MODE_WOTH 00002 |
Definition at line 521 of file fsal_types.h.
#define FSAL_MODE_WUSR 00200 |
Definition at line 509 of file fsal_types.h.
#define FSAL_MODE_XGRP 00010 |
Definition at line 516 of file fsal_types.h.
#define FSAL_MODE_XOTH 00001 |
Definition at line 522 of file fsal_types.h.
#define FSAL_MODE_XUSR 00100 |
Definition at line 510 of file fsal_types.h.
#define FSAL_NAME_INITIALIZER {"",0} |
Definition at line 270 of file fsal_types.h.
#define FSAL_NB_FUNC 68 |
Definition at line 152 of file fsal_types.h.
#define FSAL_NGROUPS_MAX 32 |
Definition at line 229 of file fsal_types.h.
#define FSAL_O_APPEND 0x0008 |
Definition at line 703 of file fsal_types.h.
#define FSAL_O_CLOSED 0x0000 |
Definition at line 699 of file fsal_types.h.
#define FSAL_O_CREATE 0x0020 |
Definition at line 705 of file fsal_types.h.
#define FSAL_O_RDONLY 0x0001 |
Definition at line 700 of file fsal_types.h.
#define FSAL_O_RDWR 0x0002 |
Definition at line 701 of file fsal_types.h.
#define FSAL_O_SYNC 0x0040 |
Definition at line 706 of file fsal_types.h.
#define FSAL_O_TRUNC 0x0010 |
Definition at line 704 of file fsal_types.h.
#define FSAL_O_WRONLY 0x0004 |
Definition at line 702 of file fsal_types.h.
#define FSAL_OWNER_OK 0x08000000 |
Definition at line 649 of file fsal_types.h.
#define FSAL_PATH_INITIALIZER {"",0} |
Definition at line 271 of file fsal_types.h.
#define FSAL_R_OK 0x04000000 |
Definition at line 650 of file fsal_types.h.
#define FSAL_RCP_FS_TO_LOCAL 0x0001 |
Definition at line 930 of file fsal_types.h.
#define FSAL_RCP_LOCAL_CREAT 0x0010 |
Definition at line 936 of file fsal_types.h.
#define FSAL_RCP_LOCAL_EXCL 0x0020 |
Definition at line 939 of file fsal_types.h.
#define FSAL_RCP_LOCAL_TO_FS 0x0002 |
Definition at line 933 of file fsal_types.h.
#define FSAL_READ_ACCESS |
Definition at line 677 of file fsal_types.h.
#define FSAL_READDIR_SIZE 2048 |
Definition at line 224 of file fsal_types.h.
#define FSAL_W_OK 0x02000000 |
Definition at line 651 of file fsal_types.h.
#define FSAL_WRITE_ACCESS |
(FSAL_MODE_MASK_SET(FSAL_W_OK) | \ FSAL_ACE4_MASK_SET(FSAL_ACE_PERM_WRITE_DATA | \ FSAL_ACE_PERM_APPEND_DATA))
Definition at line 674 of file fsal_types.h.
#define FSAL_X_OK 0x01000000 |
Definition at line 652 of file fsal_types.h.
#define FSAL_XATTR_RW_COOKIE ~0 |
Definition at line 155 of file fsal_types.h.
#define GET_FSAL_ACE_FLAG | ( | ACE | ) | (ACE).flag |
Definition at line 438 of file fsal_types.h.
#define GET_FSAL_ACE_GROUP | ( | ACE | ) | (ACE).who.gid |
Definition at line 441 of file fsal_types.h.
#define GET_FSAL_ACE_IFLAG | ( | ACE | ) | (ACE).iflag |
Definition at line 439 of file fsal_types.h.
#define GET_FSAL_ACE_PERM | ( | ACE | ) | (ACE).perm |
Definition at line 437 of file fsal_types.h.
#define GET_FSAL_ACE_TYPE | ( | ACE | ) | (ACE).type |
Definition at line 436 of file fsal_types.h.
#define GET_FSAL_ACE_USER | ( | ACE | ) | (ACE).who.uid |
Definition at line 440 of file fsal_types.h.
#define GET_FSAL_ACE_WHO | ( | ACE | ) | IS_FSAL_ACE_GROUP_ID(ACE) ? (ACE).who.gid : (ACE).who.uid |
Definition at line 466 of file fsal_types.h.
#define GET_FSAL_ACE_WHO_TYPE | ( | ACE | ) | IS_FSAL_ACE_GROUP_ID(ACE) ? "gid" : "uid" |
Definition at line 465 of file fsal_types.h.
#define INDEX_FSAL_access 1 |
Definition at line 83 of file fsal_types.h.
#define INDEX_FSAL_BuildExportContext 28 |
Definition at line 110 of file fsal_types.h.
#define INDEX_FSAL_CleanObjectResources 35 |
Definition at line 117 of file fsal_types.h.
#define INDEX_FSAL_CleanUpExportContext 50 |
Definition at line 132 of file fsal_types.h.
#define INDEX_FSAL_close 14 |
Definition at line 96 of file fsal_types.h.
#define INDEX_FSAL_close_by_fileid 42 |
Definition at line 124 of file fsal_types.h.
#define INDEX_FSAL_closedir 10 |
Definition at line 92 of file fsal_types.h.
#define INDEX_FSAL_commit 52 |
Definition at line 134 of file fsal_types.h.
#define INDEX_FSAL_create 2 |
Definition at line 84 of file fsal_types.h.
#define INDEX_FSAL_create_access 48 |
Definition at line 130 of file fsal_types.h.
#define INDEX_FSAL_ds_commit 66 |
Definition at line 148 of file fsal_types.h.
#define INDEX_FSAL_ds_read 64 |
Definition at line 146 of file fsal_types.h.
#define INDEX_FSAL_ds_write 65 |
Definition at line 147 of file fsal_types.h.
#define INDEX_FSAL_dynamic_fsinfo 21 |
Definition at line 103 of file fsal_types.h.
#define INDEX_FSAL_get_stats 24 |
Definition at line 106 of file fsal_types.h.
#define INDEX_FSAL_getattrs 5 |
Definition at line 87 of file fsal_types.h.
#define INDEX_FSAL_getattrs_descriptor 53 |
Definition at line 135 of file fsal_types.h.
#define INDEX_FSAL_GetClientContext 30 |
Definition at line 112 of file fsal_types.h.
#define INDEX_FSAL_getdeviceinfo 62 |
Definition at line 144 of file fsal_types.h.
#define INDEX_FSAL_getdevicelist 63 |
Definition at line 145 of file fsal_types.h.
#define INDEX_FSAL_getextattrs 51 |
Definition at line 133 of file fsal_types.h.
#define INDEX_FSAL_GetXAttrAttrs 41 |
Definition at line 123 of file fsal_types.h.
#define INDEX_FSAL_GetXAttrValue 39 |
Definition at line 121 of file fsal_types.h.
#define INDEX_FSAL_Init 23 |
Definition at line 105 of file fsal_types.h.
#define INDEX_FSAL_InitClientContext 29 |
Definition at line 111 of file fsal_types.h.
#define INDEX_FSAL_layoutcommit 61 |
Definition at line 143 of file fsal_types.h.
#define INDEX_FSAL_layoutget 59 |
Definition at line 141 of file fsal_types.h.
#define INDEX_FSAL_layoutreturn 60 |
Definition at line 142 of file fsal_types.h.
#define INDEX_FSAL_link 7 |
Definition at line 89 of file fsal_types.h.
#define INDEX_FSAL_link_access 47 |
Definition at line 129 of file fsal_types.h.
#define INDEX_FSAL_ListXAttrs 38 |
Definition at line 120 of file fsal_types.h.
#define INDEX_FSAL_lock_op 54 |
Definition at line 136 of file fsal_types.h.
#define INDEX_FSAL_lookup 0 |
Definition at line 82 of file fsal_types.h.
#define INDEX_FSAL_lookupJunction 32 |
Definition at line 114 of file fsal_types.h.
#define INDEX_FSAL_lookupPath 31 |
Definition at line 113 of file fsal_types.h.
#define INDEX_FSAL_merge_attrs 44 |
Definition at line 126 of file fsal_types.h.
#define INDEX_FSAL_mkdir 3 |
Definition at line 85 of file fsal_types.h.
#define INDEX_FSAL_mknode 19 |
Definition at line 101 of file fsal_types.h.
#define INDEX_FSAL_open 11 |
Definition at line 93 of file fsal_types.h.
#define INDEX_FSAL_open_by_fileid 37 |
Definition at line 119 of file fsal_types.h.
#define INDEX_FSAL_open_by_name 36 |
Definition at line 118 of file fsal_types.h.
#define INDEX_FSAL_opendir 8 |
Definition at line 90 of file fsal_types.h.
#define INDEX_FSAL_rcp 22 |
Definition at line 104 of file fsal_types.h.
#define INDEX_FSAL_read 12 |
Definition at line 94 of file fsal_types.h.
#define INDEX_FSAL_readdir 9 |
Definition at line 91 of file fsal_types.h.
#define INDEX_FSAL_readlink 15 |
Definition at line 97 of file fsal_types.h.
#define INDEX_FSAL_rename 17 |
Definition at line 99 of file fsal_types.h.
#define INDEX_FSAL_rename_access 45 |
Definition at line 127 of file fsal_types.h.
#define INDEX_FSAL_rmdir 34 |
Definition at line 116 of file fsal_types.h.
#define INDEX_FSAL_setattr_access 43 |
Definition at line 125 of file fsal_types.h.
#define INDEX_FSAL_setattrs 6 |
Definition at line 88 of file fsal_types.h.
#define INDEX_FSAL_SetXAttrValue 40 |
Definition at line 122 of file fsal_types.h.
#define INDEX_FSAL_share_op 67 |
Definition at line 149 of file fsal_types.h.
#define INDEX_FSAL_symlink 16 |
Definition at line 98 of file fsal_types.h.
#define INDEX_FSAL_test_access 33 |
Definition at line 115 of file fsal_types.h.
#define INDEX_FSAL_truncate 4 |
Definition at line 86 of file fsal_types.h.
#define INDEX_FSAL_unlink 18 |
Definition at line 100 of file fsal_types.h.
#define INDEX_FSAL_unlink_access 46 |
Definition at line 128 of file fsal_types.h.
#define INDEX_FSAL_unused_20 20 |
Definition at line 102 of file fsal_types.h.
#define INDEX_FSAL_unused_25 25 |
Definition at line 107 of file fsal_types.h.
#define INDEX_FSAL_unused_26 26 |
Definition at line 108 of file fsal_types.h.
#define INDEX_FSAL_unused_27 27 |
Definition at line 109 of file fsal_types.h.
#define INDEX_FSAL_unused_49 49 |
Definition at line 131 of file fsal_types.h.
#define INDEX_FSAL_unused_58 58 |
Definition at line 140 of file fsal_types.h.
#define INDEX_FSAL_UP_addfilter 56 |
Definition at line 138 of file fsal_types.h.
#define INDEX_FSAL_UP_getevents 57 |
Definition at line 139 of file fsal_types.h.
#define INDEX_FSAL_UP_init 55 |
Definition at line 137 of file fsal_types.h.
#define INDEX_FSAL_write 13 |
Definition at line 95 of file fsal_types.h.
#define IS_FSAL_ACE4_MASK_VALID | ( | access | ) | ((access & FSAL_ACCESS_FLAG_BIT_MASK) == FSAL_ACE4_MASK_FLAG) |
Definition at line 670 of file fsal_types.h.
#define IS_FSAL_ACE_ADD_FIILE | ( | ACE | ) | IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_ADD_FILE) |
Definition at line 485 of file fsal_types.h.
#define IS_FSAL_ACE_ADD_SUBDIRECTORY | ( | ACE | ) | IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_ADD_SUBDIRECTORY) |
Definition at line 487 of file fsal_types.h.
#define IS_FSAL_ACE_ALL_BITS | ( | WORD, | |
BITS | |||
) | (BITS == ((WORD) & (BITS))) |
Definition at line 444 of file fsal_types.h.
#define IS_FSAL_ACE_ALLOW | ( | ACE | ) | IS_FSAL_ACE_TYPE(ACE, FSAL_ACE_TYPE_ALLOW) |
Definition at line 450 of file fsal_types.h.
#define IS_FSAL_ACE_ALRAM | ( | ACE | ) | IS_FSAL_ACE_TYPE(ACE, FSAL_ACE_TYPE_ALARM) |
Definition at line 453 of file fsal_types.h.
#define IS_FSAL_ACE_APPEND_DATA | ( | ACE | ) | IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_APPEND_DATA) |
Definition at line 486 of file fsal_types.h.
#define IS_FSAL_ACE_AUDIT | ( | ACE | ) | IS_FSAL_ACE_TYPE(ACE, FSAL_ACE_TYPE_AUDIT) |
Definition at line 452 of file fsal_types.h.
#define IS_FSAL_ACE_AUDIT_FAILURE | ( | ACE | ) | IS_FSAL_ACE_BIT(GET_FSAL_ACE_FLAG(ACE),FSAL_ACE_FLAG_FAILED) |
Definition at line 460 of file fsal_types.h.
#define IS_FSAL_ACE_BIT | ( | WORD, | |
BIT | |||
) | (0 != ((WORD) & (BIT))) |
Definition at line 443 of file fsal_types.h.
#define IS_FSAL_ACE_DELETE | ( | ACE | ) | IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_DELETE) |
Definition at line 494 of file fsal_types.h.
#define IS_FSAL_ACE_DELETE_CHILD | ( | ACE | ) | IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_DELETE_CHILD) |
Definition at line 491 of file fsal_types.h.
#define IS_FSAL_ACE_DENY | ( | ACE | ) | IS_FSAL_ACE_TYPE(ACE, FSAL_ACE_TYPE_DENY) |
Definition at line 451 of file fsal_types.h.
#define IS_FSAL_ACE_DIR_INHERIT | ( | ACE | ) | IS_FSAL_ACE_BIT(GET_FSAL_ACE_FLAG(ACE),FSAL_ACE_FLAG_DIR_INHERIT) |
Definition at line 456 of file fsal_types.h.
#define IS_FSAL_ACE_EXECUTE | ( | ACE | ) | IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_EXECUTE) |
Definition at line 490 of file fsal_types.h.
#define IS_FSAL_ACE_FILE_INHERIT | ( | ACE | ) | IS_FSAL_ACE_BIT(GET_FSAL_ACE_FLAG(ACE),FSAL_ACE_FLAG_FILE_INHERIT) |
Definition at line 455 of file fsal_types.h.
#define IS_FSAL_ACE_FLAG_SUCCESSFUL | ( | ACE | ) | IS_FSAL_ACE_BIT(GET_FSAL_ACE_FLAG(ACE),FSAL_ACE_FLAG_SUCCESSFUL) |
Definition at line 459 of file fsal_types.h.
#define IS_FSAL_ACE_GROUP | ( | ACE, | |
VALUE | |||
) | ((GET_FSAL_ACE_GROUP(ACE)) == (VALUE)) |
Definition at line 448 of file fsal_types.h.
#define IS_FSAL_ACE_GROUP_ID | ( | ACE | ) | IS_FSAL_ACE_BIT(GET_FSAL_ACE_FLAG(ACE),FSAL_ACE_FLAG_GROUP_ID) |
Definition at line 461 of file fsal_types.h.
#define IS_FSAL_ACE_INHERIT | ( | ACE | ) | IS_FSAL_ACE_BIT(GET_FSAL_ACE_FLAG(ACE),FSAL_ACE_FLAG_INHERIT) |
Definition at line 462 of file fsal_types.h.
#define IS_FSAL_ACE_INHERIT_ONLY | ( | ACE | ) | IS_FSAL_ACE_BIT(GET_FSAL_ACE_FLAG(ACE),FSAL_ACE_FLAG_INHERIT_ONLY) |
Definition at line 458 of file fsal_types.h.
#define IS_FSAL_ACE_INHERTED | ( | ACE | ) | IS_FSAL_ACE_BIT(GET_FSAL_ACE_FLAG(ACE),FSAL_ACE_FLAG_INHERITED) |
Definition at line 463 of file fsal_types.h.
#define IS_FSAL_ACE_LIST_DIR | ( | ACE | ) | IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_LIST_DIR) |
Definition at line 483 of file fsal_types.h.
#define IS_FSAL_ACE_NO_PROPAGATE | ( | ACE | ) | IS_FSAL_ACE_BIT(GET_FSAL_ACE_FLAG(ACE),FSAL_ACE_FLAG_NO_PROPAGATE) |
Definition at line 457 of file fsal_types.h.
#define IS_FSAL_ACE_READ_ACL | ( | ACE | ) | IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_READ_ACL) |
Definition at line 495 of file fsal_types.h.
#define IS_FSAL_ACE_READ_ATTR | ( | ACE | ) | IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_READ_ATTR) |
Definition at line 492 of file fsal_types.h.
#define IS_FSAL_ACE_READ_DATA | ( | ACE | ) | IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_READ_DATA) |
Definition at line 482 of file fsal_types.h.
#define IS_FSAL_ACE_READ_NAMED_ATTR | ( | ACE | ) | IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_READ_NAMED_ATTR) |
Definition at line 488 of file fsal_types.h.
#define IS_FSAL_ACE_SPECIAL_EVERYONE | ( | ACE | ) | IS_FSAL_ACE_USER(ACE,FSAL_ACE_SPECIAL_EVERYONE) |
Definition at line 470 of file fsal_types.h.
#define IS_FSAL_ACE_SPECIAL_GROUP | ( | ACE | ) | IS_FSAL_ACE_USER(ACE,FSAL_ACE_SPECIAL_GROUP) |
Definition at line 469 of file fsal_types.h.
#define IS_FSAL_ACE_SPECIAL_ID | ( | ACE | ) | IS_FSAL_ACE_BIT(GET_FSAL_ACE_IFLAG(ACE),FSAL_ACE_IFLAG_SPECIAL_ID) |
Definition at line 474 of file fsal_types.h.
#define IS_FSAL_ACE_SPECIAL_OWNER | ( | ACE | ) | IS_FSAL_ACE_USER(ACE,FSAL_ACE_SPECIAL_OWNER) |
Definition at line 468 of file fsal_types.h.
#define IS_FSAL_ACE_SYNCHRONIZE | ( | ACE | ) | IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_SYNCHRONIZE) |
Definition at line 498 of file fsal_types.h.
#define IS_FSAL_ACE_TYPE | ( | ACE, | |
VALUE | |||
) | ((GET_FSAL_ACE_TYPE(ACE)) == (VALUE)) |
Definition at line 446 of file fsal_types.h.
#define IS_FSAL_ACE_USER | ( | ACE, | |
VALUE | |||
) | ((GET_FSAL_ACE_USER(ACE)) == (VALUE)) |
Definition at line 447 of file fsal_types.h.
#define IS_FSAL_ACE_WRITE_ACL | ( | ACE | ) | IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_WRITE_ACL) |
Definition at line 496 of file fsal_types.h.
#define IS_FSAL_ACE_WRITE_ATTR | ( | ACE | ) | IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_WRITE_ATTR) |
Definition at line 493 of file fsal_types.h.
#define IS_FSAL_ACE_WRITE_DATA | ( | ACE | ) | IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_WRITE_DATA) |
Definition at line 484 of file fsal_types.h.
#define IS_FSAL_ACE_WRITE_NAMED_ATTR | ( | ACE | ) | IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_WRITE_NAMED_ATTR) |
Definition at line 489 of file fsal_types.h.
#define IS_FSAL_ACE_WRITE_OWNER | ( | ACE | ) | IS_FSAL_ACE_BIT(GET_FSAL_ACE_PERM(ACE),FSAL_ACE_PERM_WRITE_OWNER) |
Definition at line 497 of file fsal_types.h.
#define IS_FSAL_DIR | ( | filetype | ) | (filetype == FSAL_TYPE_DIR) |
Definition at line 672 of file fsal_types.h.
#define IS_FSAL_DIR_APPLICABLE | ( | ACE | ) | (!IS_FSAL_ACE_BIT(GET_FSAL_ACE_IFLAG(ACE),FSAL_ACE_IFLAG_EXCLUDE_DIRS)) |
Definition at line 477 of file fsal_types.h.
#define IS_FSAL_FILE_APPLICABLE | ( | ACE | ) | (!IS_FSAL_ACE_BIT(GET_FSAL_ACE_IFLAG(ACE),FSAL_ACE_IFLAG_EXCLUDE_FILES)) |
Definition at line 475 of file fsal_types.h.
#define IS_FSAL_MODE_MASK_VALID | ( | access | ) | ((access & FSAL_ACCESS_FLAG_BIT_MASK) == FSAL_MODE_MASK_FLAG) |
Definition at line 669 of file fsal_types.h.
#define MD5_DIGEST_LENGTH 16 |
Definition at line 426 of file fsal_types.h.
#define SET_BITMAP_PARAM | ( | cfg, | |
p_init_info, | |||
_field | |||
) |
switch( (p_init_info)->behaviors._field ){ \ case FSAL_INIT_FORCE_VALUE : \ /* force the value in any case */ \ cfg._field = (p_init_info)->values._field; \ break; \ case FSAL_INIT_MAX_LIMIT : \ /* proceed a bit AND */ \ cfg._field &= (p_init_info)->values._field ; \ break; \ case FSAL_INIT_MIN_LIMIT : \ /* proceed a bit OR */ \ cfg._field |= (p_init_info)->values._field ; \ break; \ case FSAL_INIT_FS_DEFAULT: \ default: \ /* In the other cases, we keep the default value. */ \ break; \ }
Definition at line 798 of file fsal_types.h.
#define SET_BOOLEAN_PARAM | ( | cfg, | |
p_init_info, | |||
_field | |||
) |
switch( (p_init_info)->behaviors._field ){ \ case FSAL_INIT_FORCE_VALUE : \ /* force the value in any case */ \ cfg._field = (p_init_info)->values._field; \ break; \ case FSAL_INIT_MAX_LIMIT : \ /* proceed a boolean AND */ \ cfg._field = cfg._field && (p_init_info)->values._field ; \ break; \ case FSAL_INIT_MIN_LIMIT : \ /* proceed a boolean OR */ \ cfg._field = cfg._field && (p_init_info)->values._field ; \ break; \ case FSAL_INIT_FS_DEFAULT: \ default: \ /* In the other cases, we keep the default value. */ \ break; \ }
Definition at line 818 of file fsal_types.h.
#define SET_INTEGER_PARAM | ( | cfg, | |
p_init_info, | |||
_field | |||
) |
switch( (p_init_info)->behaviors._field ){ \ case FSAL_INIT_FORCE_VALUE : \ /* force the value in any case */ \ cfg._field = (p_init_info)->values._field; \ break; \ case FSAL_INIT_MAX_LIMIT : \ /* check the higher limit */ \ if ( cfg._field > (p_init_info)->values._field ) \ cfg._field = (p_init_info)->values._field ; \ break; \ case FSAL_INIT_MIN_LIMIT : \ /* check the lower limit */ \ if ( cfg._field < (p_init_info)->values._field ) \ cfg._field = (p_init_info)->values._field ; \ break; \ case FSAL_INIT_FS_DEFAULT: \ default: \ /* In the other cases, we keep the default value. */ \ break; \ }
File system static info.
Definition at line 776 of file fsal_types.h.
#define TRUE 1 |
Definition at line 39 of file fsal_types.h.
typedef struct fs_common_initinfo__ fs_common_initinfo_t |
Configuration info for every type of filesystem.
typedef fsal_uint_t fsal_accessflags_t |
Mask for permission testing. Both mode and ace4 mask are encoded.
Definition at line 647 of file fsal_types.h.
typedef mode_t fsal_accessmode_t |
Access mode (32 bits)
Definition at line 170 of file fsal_types.h.
typedef struct fsal_ace__ fsal_ace_t |
typedef unsigned int fsal_aceflag_t |
ACE flag
Definition at line 346 of file fsal_types.h.
typedef fsal_uint_t fsal_aceperm_t |
ACE permissions
Definition at line 368 of file fsal_types.h.
typedef unsigned int fsal_acetype_t |
ACE types
Definition at line 336 of file fsal_types.h.
typedef struct fsal_acl_data__ fsal_acl_data_t |
typedef struct fsal_acl_key__ fsal_acl_key_t |
typedef struct fsal_acl__ fsal_acl_t |
typedef fsal_ushort_t fsal_aclsupp_t |
Definition at line 330 of file fsal_types.h.
typedef struct fsal_attrib_list__ fsal_attrib_list_t |
A list of FS object's attributes.
typedef fsal_u64_t fsal_attrib_mask_t |
Defines an attribute mask. A mask is an inclusive OR between some FSAL_ATTR_xxx values.
Definition at line 529 of file fsal_types.h.
typedef int fsal_boolean_t |
boolean
Definition at line 162 of file fsal_types.h.
typedef struct fsal_buffdesc__ fsal_buffdesc_t |
Buffer descriptor similar to utf8 strings.
typedef unsigned long fsal_count_t |
FS object count.
Definition at line 167 of file fsal_types.h.
typedef struct fsal_dev__ fsal_dev_t |
raw device spec
typedef enum fsal_digesttype_t fsal_digesttype_t |
typedef struct fsal_dirent__ fsal_dirent_t |
directory entry
typedef struct fsal_dynamicfsinfo__ fsal_dynamicfsinfo_t |
File system dynamic info.
typedef struct fsal_extattrib_list__ fsal_extattrib_list_t |
A list of FS object's extended attributes (like generation numbers or creation time).
typedef fsal_ushort_t fsal_fhexptype_t |
FH expire type (mask).
Definition at line 751 of file fsal_types.h.
typedef struct fsal_fsid__ fsal_fsid_t |
filesystem identifier
typedef gid_t fsal_gid_t |
Group
Definition at line 169 of file fsal_types.h.
typedef struct fsal_init_info__ fsal_init_info_t |
Configuration info for the fsal
typedef enum fsal_initflag__ fsal_initflag_t |
Behavior for init values
typedef enum fsal_lock_op_t fsal_lock_op_t |
typedef struct fsal_lock_param_t fsal_lock_param_t |
typedef enum fsal_lock_t fsal_lock_t |
typedef unsigned long fsal_mdsize_t |
metadata size
Definition at line 166 of file fsal_types.h.
typedef struct fsal_name__ fsal_name_t |
typedef enum fsal_nodetype__ fsal_nodetype_t |
FS object types
typedef off_t fsal_off_t |
offset
Definition at line 165 of file fsal_types.h.
typedef fsal_ushort_t fsal_openflags_t |
FSAL_open behavior.
Definition at line 697 of file fsal_types.h.
typedef struct fsal_parameter__ fsal_parameter_t |
FSAL_Init parameter.
typedef struct fsal_path__ fsal_path_t |
object path.
typedef struct fsal_quota__ fsal_quota_t |
typedef enum fsal_quota_type__ fsal_quota_type_t |
typedef fsal_ushort_t fsal_rcpflag_t |
Defines the direction for the rcp operation
Definition at line 927 of file fsal_types.h.
typedef struct fsal_seek__ fsal_seek_t |
typedef enum fsal_seektype__ fsal_seektype_t |
Describes an absolute or relative position in a file.
FSAL_SEEK_SET Set position equal to offset bytes. FSAL_SEEK_CUR Set position to current location plus offset. FSAL_SEEK_END Set position to EOF plus offset.
typedef struct fsal_share_param_t fsal_share_param_t |
typedef size_t fsal_size_t |
data size
Definition at line 164 of file fsal_types.h.
typedef struct fsal_staticfsinfo_t fsal_staticfsinfo_t |
Definition at line 78 of file fsal_types.h.
typedef struct fsal_statistics__ fsal_statistics_t |
typedef struct fsal_status__ fsal_status_t |
Status of FSAL operations
typedef struct fsal_time__ fsal_time_t |
time
typedef unsigned long long fsal_u64_t |
64 bit unsigned integer.
Definition at line 159 of file fsal_types.h.
typedef uid_t fsal_uid_t |
Owner
Definition at line 168 of file fsal_types.h.
typedef unsigned int fsal_uint_t |
32 bit unsigned integer.
Definition at line 160 of file fsal_types.h.
typedef unsigned short fsal_ushort_t |
16 bit unsigned integer.
Definition at line 161 of file fsal_types.h.
typedef struct func_fsal_stats__ func_fsal_stats_t |
Statistics about the use of the Filesystem abstraction layer.
enum fsal_digesttype_t |
FSAL_DIGEST_SIZEOF | |
FSAL_DIGEST_NFSV2 | |
FSAL_DIGEST_NFSV3 | |
FSAL_DIGEST_NFSV4 | |
FSAL_DIGEST_FILEID2 | |
FSAL_DIGEST_FILEID3 | |
FSAL_DIGEST_FILEID4 |
Definition at line 1076 of file fsal_types.h.
enum fsal_initflag__ |
Behavior for init values
FSAL_INIT_FS_DEFAULT |
keep FS default value |
FSAL_INIT_FORCE_VALUE |
force a value |
FSAL_INIT_MAX_LIMIT |
force a value if default is greater |
FSAL_INIT_MIN_LIMIT |
force a value if default is smaller |
Definition at line 179 of file fsal_types.h.
enum fsal_lock_op_t |
Definition at line 1096 of file fsal_types.h.
enum fsal_lock_t |
Definition at line 1106 of file fsal_types.h.
enum fsal_nodetype__ |
FS object types
Definition at line 189 of file fsal_types.h.
enum fsal_quota_type__ |
Definition at line 1045 of file fsal_types.h.
enum fsal_seektype__ |
Describes an absolute or relative position in a file.
FSAL_SEEK_SET Set position equal to offset bytes. FSAL_SEEK_CUR Set position to current location plus offset. FSAL_SEEK_END Set position to EOF plus offset.
Definition at line 718 of file fsal_types.h.
const char* fsal_function_names[] |
Definition at line 55 of file fsal_errors.c.