When set to true, the CNID database for a volume is stored in the volume root
of a share in a directory .AppleDB like in Netatalk 2. Defaults to false.
From FR#84.
* NEW: Add support for ZFS ACLs on FreeBSD with libsunacl. From FR#83.
* FIX: Active Directory LDAP queries for ACL support with new options
"ldap user filter" and "ldap group filter". Bug #526.
* NEW: Add support for ZFS ACLs on FreeBSD with libsunacl. From FR#83.
* FIX: Active Directory LDAP queries for ACL support with new options
"ldap user filter" and "ldap group filter". Bug #526.
+* NEW: Option "vol dbnest", when set to true, the CNID database for
+ a volume is stored in the volume root of a share in a directory
+ .AppleDB like in Netatalk 2. Defaults to false. From FR#84.
Changes in 3.0.5
================
Changes in 3.0.5
================
</listitem>
</varlistentry>
</listitem>
</varlistentry>
+ <varlistentry>
+ <term>vol dbnest = <replaceable>BOOLEAN</replaceable> (default:
+ <emphasis>no</emphasis>) <type>(G)</type></term>
+
+ <listitem>
+ <para>Setting this option to true brings back Netatalk 2
+ behaviour of storing the CNID database in a folder called
+ .AppleDB inside the volume root of each share.</para>
+ </listitem>
+ </varlistentry>
+
<varlistentry>
<term>volnamelen = <replaceable>number</replaceable>
<type>(G)</type></term>
<varlistentry>
<term>volnamelen = <replaceable>number</replaceable>
<type>(G)</type></term>
for(i = 0; i < vlen; i++)
if(tmpname[i] == '/') tmpname[i] = ':';
for(i = 0; i < vlen; i++)
if(tmpname[i] == '/') tmpname[i] = ':';
- bstring dbpath;
- EC_NULL( val = atalk_iniparser_getstring(obj->iniconfig, INISEC_GLOBAL, "vol dbpath", _PATH_STATEDIR "CNID/") );
- EC_NULL( dbpath = bformat("%s/%s/", val, tmpname) );
- EC_NULL( volume->v_dbpath = strdup(cfrombstr(dbpath)) );
- bdestroy(dbpath);
+
+ if (!atalk_iniparser_getboolean(obj->iniconfig, INISEC_GLOBAL, "vol dbnest", 0)) {
+ bstring dbpath;
+ EC_NULL( val = atalk_iniparser_getstring(obj->iniconfig, INISEC_GLOBAL, "vol dbpath", _PATH_STATEDIR "CNID/") );
+ EC_NULL( dbpath = bformat("%s/%s/", val, tmpname) );
+ EC_NULL( volume->v_dbpath = strdup(cfrombstr(dbpath)) );
+ bdestroy(dbpath);
+ } else {
+ EC_NULL( volume->v_dbpath = strdup(path) );
+ }
if ((val = getoption(obj->iniconfig, section, "cnid scheme", preset, NULL)))
EC_NULL( volume->v_cnidscheme = strdup(val) );
if ((val = getoption(obj->iniconfig, section, "cnid scheme", preset, NULL)))
EC_NULL( volume->v_cnidscheme = strdup(val) );
@localstatedir@/netatalk/CNID/\&.
.RE
.PP
@localstatedir@/netatalk/CNID/\&.
.RE
.PP
+vol dbnest = \fIBOOLEAN\fR (default: \fIno\fR) \fB(G)\fR
+.RS 4
+Setting this option to true brings back Netatalk 2 behaviour of storing the CNID database in a folder called \&.AppleDB inside the volume root of each share\&.
+.RE
+.PP
volnamelen = \fInumber\fR \fB(G)\fR
.RS 4
Max length of UTF8\-MAC volume name for Mac OS X\&. Note that Hangul is especially sensitive to this\&.
volnamelen = \fInumber\fR \fB(G)\fR
.RS 4
Max length of UTF8\-MAC volume name for Mac OS X\&. Note that Hangul is especially sensitive to this\&.