/*
- * $Id: adouble.h,v 1.46 2009-10-15 12:06:07 franklahm Exp $
+ * $Id: adouble.h,v 1.51 2010-01-04 13:49:48 franklahm Exp $
* Copyright (c) 1990,1991 Regents of The University of Michigan.
* All Rights Reserved.
*
* netatalk@itd.umich.edu
*/
+/*!
+ * @file
+ * @brief Part of Netatalk's AppleDouble implementatation
+ */
+
#ifndef _ATALK_ADOUBLE_H
#define _ATALK_ADOUBLE_H
const int /*type*/, const off_t /*offset*/,
const off_t /*len*/, const int /*user*/);
extern int ad_testlock (struct adouble * /*adp*/, int /*eid*/, off_t /*off*/);
+
+extern u_int16_t ad_openforks (struct adouble * /*adp*/, u_int16_t);
extern int ad_excl_lock (struct adouble * /*adp*/, const u_int32_t /*eid*/);
#define ad_lock ad_fcntl_lock
return mode;
}
+/* ad_ea.c */
+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, 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 *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);
+
/* ad_read.c/ad_write.c */
extern int sys_ftruncate(int fd, off_t length);
+
extern ssize_t ad_read (struct adouble *, const u_int32_t,
const off_t, char *, const size_t);
extern ssize_t ad_pread (struct ad_fd *, void *, size_t, off_t);
#endif
#ifdef WITH_SENDFILE
-extern ssize_t ad_readfile (const struct adouble *, const int,
- const int, off_t, const size_t);
+extern int ad_readfile_init(const struct adouble *ad,
+ const int eid, off_t *off,
+ const int end);
#endif
#if 0