/*
- * $Id: volume.h,v 1.19.2.5.2.6 2004-03-11 02:02:04 didg Exp $
+ * $Id: volume.h,v 1.19.2.5.2.7.2.6 2009-09-07 11:35:05 franklahm Exp $
*
* Copyright (c) 1990,1994 Regents of The University of Michigan.
* All Rights Reserved. See COPYRIGHT.
#include <netatalk/endian.h>
#include "atalk/unicode.h"
-#ifdef HAVE_USABLE_ICONV
-#include <iconv.h>
-#endif
-
#include "globals.h"
#define AFPVOL_NAMELEN 27
struct _cnid_db *v_cdb;
char v_stamp[ADEDLEN_PRIVSYN];
mode_t v_umask;
+ mode_t v_perm; /* default permission value OR with requested perm*/
+ mode_t v_dperm; /* default directories permission value OR with requested perm*/
+ mode_t v_fperm; /* default files permission value OR with requested perm*/
#ifdef FORCE_UIDGID
char *v_forceuid;
charset_t v_maccharset;
struct charset_functions *v_mac;
- int v_deleted; /* volume open but deleted in new config file */
- int v_hide; /* new volume wait open volume */
- int v_adouble; /* default adouble format */
-
+ int v_deleted; /* volume open but deleted in new config file */
+ int v_hide; /* new volume wait open volume */
+ int v_adouble; /* default adouble format */
+ int v_ad_options; /* adouble option NODEV, NOCACHE, etc.. */
+
char *v_root_preexec;
char *v_preexec;
#endif /* NO_LARGE_VOL_SUPPORT */
#define AFPVOL_OPEN (1<<0)
-#define AFPVOL_DT (1<<1)
+/* flags for AFS and quota 0xxx0 */
#define AFPVOL_GVSMASK (7<<2)
#define AFPVOL_NONE (0<<2)
#define AFPVOL_AFSGVS (1<<2)
* help if device number is notconsistent across reboot
* NOTE symlink to a different device will return an ACCESS error
*/
+#define AFPVOL_RESERVED (1 << 19) /* was AFPVOL_CASEINSEN, volume is case insensitive */
+#define AFPVOL_EILSEQ (1 << 20) /* encode illegal sequence 'asis' UCS2, ex "\217-", which is not
+ a valid SHIFT-JIS char, is encoded as U\217 -*/
+
+#define AFPVOL_CACHE (1 << 21) /* Use adouble v2 CNID caching, default don't use it */
+#define AFPVOL_INV_DOTS (1 << 22) /* dots files are invisible */
+#define AFPVOL_TM (1 << 23) /* Supports TimeMachine */
/* FPGetSrvrParms options */
#define AFPSRVR_CONFIGINFO (1 << 0)
#define VOLPBIT_ATTR_UNIXPRIV (1 << 5)
#define VOLPBIT_ATTR_UTF8 (1 << 6)
#define VOLPBIT_ATTR_NONETUID (1 << 7)
+#define VOLPBIT_ATTR_TM (1 << 13)
#define VOLPBIT_ATTR 0
#define VOLPBIT_SIG 1
#define vol_unix_priv(vol) (afp_version >= 30 && ((vol)->v_flags & AFPVOL_UNIX_PRIV))
+#define vol_inv_dots(vol) (((vol)->v_flags & AFPVOL_INV_DOTS) ? 1 : 0)
+
extern struct vol *getvolbyvid __P((const u_int16_t));
extern int ustatfs_getvolspace __P((const struct vol *,
VolSpace *, VolSpace *,