CtdlAccessCheck() may now be passed a new access level to check for: ac_logged_in_or_...
[citadel.git] / citadel / citserver.c
index 48e4deae038439e250011538a2e800934481aa86..859c25fa9d3b46b22cf19212245b32f7470bf248 100644 (file)
@@ -659,6 +659,11 @@ int CtdlAccessCheck(int required_level) {
                return(-1);
        }
 
+       if ((required_level >= ac_logged_in_or_guest) && (CC->logged_in == 0) && (!config.c_guest_logins)) {
+               cprintf("%d Not logged in.\n", ERROR + NOT_LOGGED_IN);
+               return(-1);
+       }
+
        if ((required_level >= ac_logged_in) && (CC->logged_in == 0)) {
                cprintf("%d Not logged in.\n", ERROR + NOT_LOGGED_IN);
                return(-1);