/*
- * $Id: volume.h,v 1.16 2010/03/31 09:47:32 franklahm Exp $
- *
* Copyright (c) 1990,1994 Regents of The University of Michigan.
* All Rights Reserved. See COPYRIGHT.
*/
#ifndef ATALK_VOLUME_H
#define ATALK_VOLUME_H 1
-#include <sys/cdefs.h>
#include <sys/types.h>
-#include <netatalk/endian.h>
#include <atalk/unicode.h>
#include <atalk/cnid.h>
char *v_gvs;
void *v_nfsclient;
int v_nfs;
-
+ uintmax_t v_tm_used; /* used bytes on a TM volume */
+ uintmax_t v_written; /* amount of data written in afp_write, reset every time a FCE_TM_SIZE event is sent */
+
/* only when opening/closing volumes or in error */
int v_casefold;
char *v_localname; /* as defined in AppleVolumes.default */
int v_root_preexec_close;
int v_preexec_close;
char *v_uuid; /* For TimeMachine zeroconf record */
-#ifdef FORCE_UIDGID
- char *v_forceuid;
- char *v_forcegid;
-#endif
#ifdef __svr4__
int v_qfd;
#endif /*__svr4__*/
#define AFPVOL_USEDOTS (1 << 11) /* use real dots */
#define AFPVOL_LIMITSIZE (1 << 12) /* limit size for older macs */
#define AFPVOL_MAPASCII (1 << 13) /* map the ascii range as well */
-#define AFPVOL_DROPBOX (1 << 14) /* dropkludge dropbox support */
#define AFPVOL_NOFILEID (1 << 15) /* don't advertise createid resolveid and deleteid calls */
#define AFPVOL_NOSTAT (1 << 16) /* advertise the volume even if we can't stat() it
* maybe because it will be mounted later in preexec */
#define AFPVOL_TM (1 << 23) /* Supports TimeMachine */
#define AFPVOL_ACLS (1 << 24) /* Volume supports ACLS */
#define AFPVOL_SEARCHDB (1 << 25) /* Use fast CNID db search instead of filesystem */
-/* Found this in branch dir-rewrite, maybe we want to use it sometimes */
-#if 0
-#define AFPVOL_CDROM (1 << XX) /* Ejectable media eg CD -> in memory CNID db */
-#endif
+#define AFPVOL_NONETIDS (1 << 26) /* signal the client it shall do privelege mapping */
/* Extended Attributes vfs indirection */
#define AFPVOL_EA_NONE 0 /* No EAs */
#define VOLPBIT_ATTR_BLANKACCESS (1 << 4)
#define VOLPBIT_ATTR_UNIXPRIV (1 << 5)
#define VOLPBIT_ATTR_UTF8 (1 << 6)
-#define VOLPBIT_ATTR_NONETUID (1 << 7)
+#define VOLPBIT_ATTR_NONETIDS (1 << 7)
#define VOLPBIT_ATTR_EXT_ATTRS (1 << 10)
#define VOLPBIT_ATTR_ACLS (1 << 11)
#define VOLPBIT_ATTR_TM (1 << 13)
#define VOLPBIT_XBTOTAL 10
#define VOLPBIT_BSIZE 11 /* block size */
-#ifdef AFP3x
#define utf8_encoding() (afp_version >= 30)
-#else
-#define utf8_encoding() (0)
-#endif
#define vol_noadouble(vol) (((vol)->v_flags & AFPVOL_NOADOUBLE) ? 1 : 0)
#define vol_nodev(vol) (((vol)->v_flags & AFPVOL_NODEV) ? 1 : 0)