netatalk  4.4.0dev
Free and Open Source Apple Filing Protocol (AFP) Server
Loading...
Searching...
No Matches
ea.h File Reference
#include <atalk/vfs.h>

Go to the source code of this file.

Data Structures

struct  ea_entry
struct  ea

Macros

#define ENOATTR   ENODATA
#define MAX_EA_SIZE   3802
#define MAX_REPLY_EXTRA_BYTES   6
#define ATTRNAMEBUFSIZ   4096
#define XATTR_CREATE   0x1 /* set value, fail if attr already exists */
#define XATTR_REPLACE   0x2 /* set value, fail if attr does not exist */
#define AD_EA_META   "org.netatalk.Metadata"
#define AD_EA_META_LEN   (sizeof(AD_EA_META) - 1)
#define AD_EA_RESO   "org.netatalk.ResourceFork"
#define NOT_NETATALK_EA(a)
#define EA_INITED   0xea494e54 /* ea"INT", for interfacing ea_open w. ea_close */
#define EA_MAGIC   0x61644541 /* "adEA" */
#define EA_VERSION1   0x01
#define EA_VERSION   EA_VERSION1
#define EA_MAGIC_OFF   0
#define EA_MAGIC_LEN   4
#define EA_VERSION_OFF   (EA_MAGIC_OFF + EA_MAGIC_LEN)
#define EA_VERSION_LEN   2
#define EA_COUNT_OFF   (EA_VERSION_OFF + EA_VERSION_LEN)
#define EA_COUNT_LEN   2
#define EA_HEADER_SIZE   (EA_MAGIC_LEN + EA_VERSION_LEN + EA_COUNT_LEN)

Enumerations

enum  { kXAttrNoFollow = 0x1 , kXAttrCreate = 0x2 , kXAttrReplace = 0x4 }
enum  eaflags_t { EA_CREATE = (1 << 1) , EA_RDONLY = (1 << 2) , EA_RDWR = (1 << 3) , EA_DIR = (1 << 4) }

Functions

ssize_t sys_getxattr (const char *path, const char *name, void *value, size_t size)
ssize_t sys_lgetxattr (const char *path, const char *name, void *value, size_t size)
ssize_t sys_fgetxattr (int filedes, const char *name, void *value, size_t size)
ssize_t sys_listxattr (const char *path, char *list, size_t size)
ssize_t sys_llistxattr (const char *path, char *list, size_t size)
ssize_t sys_flistxattr (int filedes, const char *path, char *list, size_t size)
int sys_removexattr (const char *path, const char *name)
int sys_lremovexattr (const char *path, const char *name)
int sys_fremovexattr (int filedes, const char *path, const char *name)
int sys_setxattr (const char *path, const char *name, const void *value, size_t size, int flags)
int sys_lsetxattr (const char *path, const char *name, const void *value, size_t size, int flags)
int sys_fsetxattr (int filedes, const char *name, const void *value, size_t size, int flags)
int sys_copyxattr (const char *src, const char *dst)
int sys_getxattrfd (int fd, const char *uname, int oflag,...)
int get_easize (VFS_FUNC_ARGS_EA_GETSIZE)
int get_eacontent (VFS_FUNC_ARGS_EA_GETCONTENT)
int list_eas (VFS_FUNC_ARGS_EA_LIST)
int set_ea (VFS_FUNC_ARGS_EA_SET)
int remove_ea (VFS_FUNC_ARGS_EA_REMOVE)
int ea_deletefile (VFS_FUNC_ARGS_DELETEFILE)
int ea_renamefile (VFS_FUNC_ARGS_RENAMEFILE)
int ea_copyfile (VFS_FUNC_ARGS_COPYFILE)
int ea_chown (VFS_FUNC_ARGS_CHOWN)
int ea_chmod_file (VFS_FUNC_ARGS_SETFILEMODE)
int ea_chmod_dir (VFS_FUNC_ARGS_SETDIRUNIXMODE)
int sys_get_easize (VFS_FUNC_ARGS_EA_GETSIZE)
int sys_get_eacontent (VFS_FUNC_ARGS_EA_GETCONTENT)
int sys_list_eas (VFS_FUNC_ARGS_EA_LIST)
int sys_set_ea (VFS_FUNC_ARGS_EA_SET)
int sys_remove_ea (VFS_FUNC_ARGS_EA_REMOVE)
int sys_ea_copyfile (VFS_FUNC_ARGS_COPYFILE)
int ea_open (const struct vol *restrict vol, const char *restrict uname, eaflags_t eaflags, struct ea *restrict ea)
int ea_openat (const struct vol *restrict vol, int dirfd, const char *restrict uname, eaflags_t eaflags, struct ea *restrict ea)
int ea_close (struct ea *restrict ea)
char * ea_path (const struct ea *restrict ea, const char *restrict eaname, int macname)

Macro Definition Documentation

◆ AD_EA_META

#define AD_EA_META   "org.netatalk.Metadata"

◆ AD_EA_META_LEN

#define AD_EA_META_LEN   (sizeof(AD_EA_META) - 1)

◆ AD_EA_RESO

#define AD_EA_RESO   "org.netatalk.ResourceFork"

◆ ATTRNAMEBUFSIZ

#define ATTRNAMEBUFSIZ   4096

◆ EA_COUNT_LEN

#define EA_COUNT_LEN   2

◆ EA_COUNT_OFF

#define EA_COUNT_OFF   (EA_VERSION_OFF + EA_VERSION_LEN)

◆ EA_HEADER_SIZE

#define EA_HEADER_SIZE   (EA_MAGIC_LEN + EA_VERSION_LEN + EA_COUNT_LEN)

◆ EA_INITED

#define EA_INITED   0xea494e54 /* ea"INT", for interfacing ea_open w. ea_close */

◆ EA_MAGIC

#define EA_MAGIC   0x61644541 /* "adEA" */

◆ EA_MAGIC_LEN

#define EA_MAGIC_LEN   4

◆ EA_MAGIC_OFF

#define EA_MAGIC_OFF   0

◆ EA_VERSION

#define EA_VERSION   EA_VERSION1

◆ EA_VERSION1

#define EA_VERSION1   0x01

◆ EA_VERSION_LEN

#define EA_VERSION_LEN   2

◆ EA_VERSION_OFF

#define EA_VERSION_OFF   (EA_MAGIC_OFF + EA_MAGIC_LEN)

◆ ENOATTR

#define ENOATTR   ENODATA

◆ MAX_EA_SIZE

#define MAX_EA_SIZE   3802

◆ MAX_REPLY_EXTRA_BYTES

#define MAX_REPLY_EXTRA_BYTES   6

◆ NOT_NETATALK_EA

#define NOT_NETATALK_EA ( a)
Value:
(strcmp((a), AD_EA_META) != 0) && (strcmp((a), AD_EA_RESO) != 0)
#define AD_EA_META
Definition ea.h:82
#define AD_EA_RESO
Definition ea.h:89

◆ XATTR_CREATE

#define XATTR_CREATE   0x1 /* set value, fail if attr already exists */

◆ XATTR_REPLACE

#define XATTR_REPLACE   0x2 /* set value, fail if attr does not exist */

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
kXAttrNoFollow 
kXAttrCreate 
kXAttrReplace 

◆ eaflags_t

enum eaflags_t
Enumerator
EA_CREATE 
EA_RDONLY 
EA_RDWR 
EA_DIR 

Function Documentation

◆ ea_chmod_dir()

int ea_chmod_dir ( VFS_FUNC_ARGS_SETDIRUNIXMODE )
extern

◆ ea_chmod_file()

int ea_chmod_file ( VFS_FUNC_ARGS_SETFILEMODE )
extern

◆ ea_chown()

int ea_chown ( VFS_FUNC_ARGS_CHOWN )
extern

◆ ea_close()

int ea_close ( struct ea *restrict ea)
extern

◆ ea_copyfile()

int ea_copyfile ( VFS_FUNC_ARGS_COPYFILE )
extern

◆ ea_deletefile()

int ea_deletefile ( VFS_FUNC_ARGS_DELETEFILE )
extern

◆ ea_open()

int ea_open ( const struct vol *restrict vol,
const char *restrict uname,
eaflags_t eaflags,
struct ea *restrict ea )
extern

◆ ea_openat()

int ea_openat ( const struct vol *restrict vol,
int dirfd,
const char *restrict uname,
eaflags_t eaflags,
struct ea *restrict ea )
extern

◆ ea_path()

char * ea_path ( const struct ea *restrict ea,
const char *restrict eaname,
int macname )
extern

◆ ea_renamefile()

int ea_renamefile ( VFS_FUNC_ARGS_RENAMEFILE )
extern

◆ get_eacontent()

int get_eacontent ( VFS_FUNC_ARGS_EA_GETCONTENT )
extern

◆ get_easize()

int get_easize ( VFS_FUNC_ARGS_EA_GETSIZE )
extern

◆ list_eas()

int list_eas ( VFS_FUNC_ARGS_EA_LIST )
extern

◆ remove_ea()

int remove_ea ( VFS_FUNC_ARGS_EA_REMOVE )
extern

◆ set_ea()

int set_ea ( VFS_FUNC_ARGS_EA_SET )
extern

◆ sys_copyxattr()

int sys_copyxattr ( const char * src,
const char * dst )

◆ sys_ea_copyfile()

int sys_ea_copyfile ( VFS_FUNC_ARGS_COPYFILE )
extern

◆ sys_fgetxattr()

ssize_t sys_fgetxattr ( int filedes,
const char * name,
void * value,
size_t size )

◆ sys_flistxattr()

ssize_t sys_flistxattr ( int filedes,
const char * path,
char * list,
size_t size )

◆ sys_fremovexattr()

int sys_fremovexattr ( int filedes,
const char * path,
const char * name )

◆ sys_fsetxattr()

int sys_fsetxattr ( int filedes,
const char * name,
const void * value,
size_t size,
int flags )

◆ sys_get_eacontent()

int sys_get_eacontent ( VFS_FUNC_ARGS_EA_GETCONTENT )
extern

◆ sys_get_easize()

int sys_get_easize ( VFS_FUNC_ARGS_EA_GETSIZE )
extern

◆ sys_getxattr()

ssize_t sys_getxattr ( const char * path,
const char * name,
void * value,
size_t size )

◆ sys_getxattrfd()

int sys_getxattrfd ( int fd,
const char * uname,
int oflag,
... )

◆ sys_lgetxattr()

ssize_t sys_lgetxattr ( const char * path,
const char * name,
void * value,
size_t size )

◆ sys_list_eas()

int sys_list_eas ( VFS_FUNC_ARGS_EA_LIST )
extern

◆ sys_listxattr()

ssize_t sys_listxattr ( const char * path,
char * list,
size_t size )

◆ sys_llistxattr()

ssize_t sys_llistxattr ( const char * path,
char * list,
size_t size )

◆ sys_lremovexattr()

int sys_lremovexattr ( const char * path,
const char * name )

◆ sys_lsetxattr()

int sys_lsetxattr ( const char * path,
const char * name,
const void * value,
size_t size,
int flags )

◆ sys_remove_ea()

int sys_remove_ea ( VFS_FUNC_ARGS_EA_REMOVE )
extern

◆ sys_removexattr()

int sys_removexattr ( const char * path,
const char * name )

◆ sys_set_ea()

int sys_set_ea ( VFS_FUNC_ARGS_EA_SET )
extern

◆ sys_setxattr()

int sys_setxattr ( const char * path,
const char * name,
const void * value,
size_t size,
int flags )