Diff
Not logged in

Differences From:

File src/login.c part of check-in [d3e711fd2f] - Work toward getting bug-tracking working well. by drh on 2008-07-15 16:42:48. [view]

To:

File src/login.c part of check-in [eb24a021d6] - Make all users inherit the capabilities of "nobody" as well as (optionally) of "anonymous". by eric on 2008-07-26 17:08:33. [view]

@@ -239,8 +239,10 @@
   int uid = 0;
   const char *zCookie;
   const char *zRemoteAddr;
   const char *zCap = 0;
+  const char *zNcap;
+  const char *zAcap;
 
   /* Only run this check once.  */
   if( g.userUid!=0 ) return;
 
@@ -297,8 +299,16 @@
   }
   g.userUid = uid;
   if( g.zLogin && strcmp(g.zLogin,"nobody")==0 ){
     g.zLogin = 0;
+  }
+  if( uid>0 ){
+    zNcap = db_text("", "SELECT cap FROM user WHERE login = 'nobody'");
+    login_set_capabilities(zNcap);
+    if( db_get_int("inherit-anon",0) ){
+      zAcap = db_text("", "SELECT cap FROM user WHERE login = 'anonymous'");
+      login_set_capabilities(zAcap);
+    }
   }
   login_set_capabilities(zCap);
 }