]> arthur.barton.de Git - netatalk.git/commitdiff
read only mode if cnid scheme is last
authorHAT <hat@fa2.so-net.ne.jp>
Tue, 5 Jun 2012 15:21:18 +0000 (00:21 +0900)
committerHAT <hat@fa2.so-net.ne.jp>
Tue, 5 Jun 2012 15:21:18 +0000 (00:21 +0900)
NEWS
libatalk/util/netatalk_conf.c

diff --git a/NEWS b/NEWS
index 6b276e07627f7170e6cfc3c93b58dc6d06edc92e..0dba0e70426a93f6aa206176f8aa3173112a8c07 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,7 @@
+Changes in 3.0 beta3
+====================
+* UPD: read only mode if cnid scheme is last
+
 Changes in 3.0 beta2
 ====================
 * UPD: Solaris and friends: Replace initscript with SMF manifest
index 0b6e4b7b5695e7918986ce23ee9927b78d99f495..bd35dc76254c1205a11cc8aabe8e32e2c6e4849e 100644 (file)
@@ -756,12 +756,15 @@ static struct vol *creatvol(AFPObj *obj,
      * 1) neither the rolist nor the rwlist exist -> rw
      * 2) rolist exists -> ro if user is in it.
      * 3) rwlist exists -> ro unless user is in it.
+     * 4) cnid scheme = last -> ro forcibly.
      */
     if (pwd) {
         if (accessvol(obj, getoption(obj->iniconfig, section, "rolist", preset, NULL), pwd->pw_name) == 1
             || accessvol(obj, getoption(obj->iniconfig, section, "rwlist", preset, NULL), pwd->pw_name) == 0)
             volume->v_flags |= AFPVOL_RO;
     }
+    if (0 == strcmp(volume->v_cnidscheme, "last"))
+        volume->v_flags |= AFPVOL_RO;
 
     if ((volume->v_flags & AFPVOL_NODEV))
         volume->v_ad_options |= ADVOL_NODEV;