X-Git-Url: https://code.citadel.org/?a=blobdiff_plain;f=citadel%2Fuser_ops.c;h=7d4088c56fb20c023eeb724f2d8fd5fcfc8fbfee;hb=da1debddf5988512ac50ff0b62ac85c8f3b8d0f4;hp=2b66fdbe24029a51e77fd6896008977b5ebc31c1;hpb=11e722f9406b58f2884d6d63f4acba49b668f53f;p=citadel.git diff --git a/citadel/user_ops.c b/citadel/user_ops.c index 2b66fdbe2..7d4088c56 100644 --- a/citadel/user_ops.c +++ b/citadel/user_ops.c @@ -712,40 +712,42 @@ void cmd_user(char *cmdbuf) */ void do_login(void) { - CC->logged_in = 1; - syslog(LOG_NOTICE, "<%s> logged in\n", CC->curr_user); + struct CitContext *CCC = CC; - CtdlGetUserLock(&CC->user, CC->curr_user); - ++(CC->user.timescalled); - CC->previous_login = CC->user.lastcall; - time(&CC->user.lastcall); + CCC->logged_in = 1; + syslog(LOG_NOTICE, "<%s> logged in\n", CCC->curr_user); + + CtdlGetUserLock(&CCC->user, CCC->curr_user); + ++(CCC->user.timescalled); + CCC->previous_login = CCC->user.lastcall; + time(&CCC->user.lastcall); /* If this user's name is the name of the system administrator * (as specified in setup), automatically assign access level 6. */ - if (!strcasecmp(CC->user.fullname, config.c_sysadm)) { - CC->user.axlevel = AxAideU; + if (!strcasecmp(CCC->user.fullname, config.c_sysadm)) { + CCC->user.axlevel = AxAideU; } /* If we're authenticating off the host system, automatically give * root the highest level of access. */ if (config.c_auth_mode == AUTHMODE_HOST) { - if (CC->user.uid == 0) { - CC->user.axlevel = AxAideU; + if (CCC->user.uid == 0) { + CCC->user.axlevel = AxAideU; } } - CtdlPutUserLock(&CC->user); + CtdlPutUserLock(&CCC->user); /* - * Populate CC->cs_inet_email with a default address. This will be + * Populate CCC->cs_inet_email with a default address. This will be * overwritten with the user's directory address, if one exists, when * the vCard module's login hook runs. */ - snprintf(CC->cs_inet_email, sizeof CC->cs_inet_email, "%s@%s", - CC->user.fullname, config.c_fqdn); - convert_spaces_to_underscores(CC->cs_inet_email); + snprintf(CCC->cs_inet_email, sizeof CCC->cs_inet_email, "%s@%s", + CCC->user.fullname, config.c_fqdn); + convert_spaces_to_underscores(CCC->cs_inet_email); /* Create any personal rooms required by the system. * (Technically, MAILROOM should be there already, but just in case...) @@ -801,7 +803,7 @@ void CtdlUserLogout(void) * If we were talking to a network node, we're not anymore... */ if (!IsEmptyStr(CCC->net_node)) { - network_talking_to(CCC->net_node, NTT_REMOVE); + network_talking_to(CCC->net_node, strlen(CCC->net_node), NTT_REMOVE); } /* Run any hooks registered by modules... */