/*
* These functions handle authentication of users to a Citadel server.
*
- * Copyright (c) 1996-2012 by the citadel.org team
+ * Copyright (c) 1996-2021 by the citadel.org team
*
* This program is open source software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License, version 3.
#include "webserver.h"
#include <ctype.h>
-extern uint32_t hashlittle( const void *key, size_t length, uint32_t initval);
/*
* Access level definitions. This is initialized from a function rather than a
axdefs[5] = _("Preferred User");
/* chief */
- axdefs[6] = _("Aide");
+ axdefs[6] = _("Admin");
}
/* Something went VERY wrong if we get to this point */
else {
- syslog(1, "finalize_openid_login() failed to do anything. This is a code problem.\n");
+ syslog(LOG_DEBUG, "finalize_openid_login() failed to do anything. This is a code problem.\n");
begin_burst();
output_headers(1, 0, 0, 0, 1, 0);
wc_printf("<html><body>");
/*
* Display a welcome screen to the user.
- *
- * If this is the first time login, and the web based setup is enabled,
- * lead the user through the setup routines
*/
-void do_welcome(void)
-{
+void do_welcome(void) {
StrBuf *Buf;
-#ifdef XXX_NOT_FINISHED_YET_XXX
- FILE *fp;
- int i;
-
- /**
- * See if we have to run the first-time setup wizard
- */
- if (WC->is_aide) {
- if (!setup_wizard) {
- int len;
- sprintf(wizard_filename, "setupwiz.%s.%s",
- abs(HashLittle(ctdlhost, strlen(ctdlhost))),
- abs(HashLittle(ctdlport, strlen(ctdlport)))
- );
-
- fp = fopen(wizard_filename, "r");
- if (fp != NULL) {
- fgets(buf, sizeof buf, fp);
- buf[strlen(buf)-1] = 0;
- fclose(fp);
- if (atoi(buf) == serv_info.serv_rev_level) {
- setup_wizard = 1; /* already run */
- }
- }
- }
-
- if (!setup_wizard) {
- http_redirect("setup_wizard");
- }
- }
-#endif
-
/*
* Go to the user's preferred start page
*/
if (StrLength(Buf) == 0) {
StrBufAppendBufPlain(Buf, "dotgoto?room=_BASEROOM_", -1, 0);
}
- syslog(9, "Redirecting to user's start page: %s\n", ChrPtr(Buf));
+ syslog(LOG_DEBUG, "Redirecting to user's start page: %s\n", ChrPtr(Buf));
http_redirect(ChrPtr(Buf));
}
/* Calling output_headers() this way causes the cookies to be un-set */
output_headers(1, 1, 0, 1, 0, 0);
do_template("logout");
- if (WC->serv_info->serv_supports_guest) {
+ if ((WCC->serv_info != NULL) && WCC->serv_info->serv_supports_guest) {
display_default_landing_page();
return;
}
);
begin_burst();
- wc_printf("Connection to Citadel server at %s:%s : %s\r\n",
- ctdlhost, ctdlport,
+ wc_printf("Connection to Citadel server in %s : %s\r\n", ctdl_dir,
(WC->connected ? "SUCCESS" : "FAIL")
);
Buf = NewStrBuf();
memset(&Room, 0, sizeof(folder));
if (goto_config_room(Buf, &Room) != 0) {
- syslog(9, "display_reg() exiting because goto_config_room() failed\n");
+ syslog(LOG_WARNING, "display_reg() exiting because goto_config_room() failed\n");
if (during_login) {
pop_destination();
}
FreeStrBuf(&Buf);
vcard_msgnum = locate_user_vcard_in_this_room(&VCMsg, &VCAtt);
if (vcard_msgnum < 0L) {
- syslog(9, "display_reg() exiting because locate_user_vcard_in_this_room() failed\n");
+ syslog(LOG_WARNING, "display_reg() exiting because locate_user_vcard_in_this_room() failed\n");
if (during_login) {
pop_destination();
}
hdr->HR.got_auth = AUTH_BASIC;
}
else
- syslog(1, "Authentication scheme not supported! [%s]\n", ChrPtr(Line));
+ syslog(LOG_WARNING, "Authentication scheme not supported! [%s]\n", ChrPtr(Line));
}
}
WebcitAddUrlHandler(HKEY("ajax_login_username_password"), "", 0, ajax_login_username_password, AJAX|ANONYMOUS);
WebcitAddUrlHandler(HKEY("ajax_login_newuser"), "", 0, ajax_login_newuser, AJAX|ANONYMOUS);
WebcitAddUrlHandler(HKEY("switch_language"), "", 0, switch_language, ANONYMOUS);
- RegisterConditional(HKEY("COND:AIDE"), 2, ConditionalAide, CTX_NONE);
- RegisterConditional(HKEY("COND:LOGGEDIN"), 2, ConditionalIsLoggedIn, CTX_NONE);
- RegisterConditional(HKEY("COND:MAY_CREATE_ROOM"), 2, ConditionalHaveAccessCreateRoom, CTX_NONE);
+ RegisterConditional("COND:AIDE", 2, ConditionalAide, CTX_NONE);
+ RegisterConditional("COND:LOGGEDIN", 2, ConditionalIsLoggedIn, CTX_NONE);
+ RegisterConditional("COND:MAY_CREATE_ROOM", 2, ConditionalHaveAccessCreateRoom, CTX_NONE);
return;
}