struct CitContext* next_session = NULL;
char *unique_session_numbers;
int ScheduledShutdown = 0;
-int do_defrag = 0;
time_t server_startup_time;
int panic_fd;
CtdlThreadAllocTSD();
- if (do_defrag) {
- defrag_databases();
- }
-
check_ref_counts();
lprintf(CTDL_INFO, "Creating base rooms (if necessary)\n");
lputroom(&qrbuf);
}
+ /* Aide needs to be public postable, else we're not RFC conformant. */
+ if (lgetroom(&qrbuf, AIDEROOM) == 0) {
+ qrbuf.QRflags2 |= QR2_SMTP_PUBLIC;
+ lputroom(&qrbuf);
+ }
+
lprintf(CTDL_INFO, "Seeding the pseudo-random number generator...\n");
urandom = fopen("/dev/urandom", "r");
if (urandom != NULL) {
* might make references to "CC" assuming it's the right one.
*/
become_session(con);
+ logout();
PerformSessionHooks(EVT_STOP);
become_session(NULL);
- /* Now handle all of the administrivia. */
- lprintf(CTDL_DEBUG, "Calling logout(%d)\n", con->cs_pid);
- logout(con);
-
lprintf(CTDL_NOTICE, "[%3d] Session ended.\n", con->cs_pid);
/* If the client is still connected, blow 'em away. */
cprintf("%f\n", CtdlThreadWorkerAvg);
cprintf("%d\n", CtdlThreadGetCount());
- /* Does this server support Sieve mail filtering? */
-#ifdef HAVE_LIBSIEVE
- cprintf("1\n"); /* yes */
-#else
- cprintf("0\n"); /* no */
-#endif
+ cprintf("1\n"); /* yes, Sieve mail filtering is supported */
+ cprintf("%d\n", config.c_enable_fulltext);
+ cprintf("%s\n", svn_revision());
cprintf("000\n");
}
}
else if (!strncasecmp(cmdbuf,"LOUT",4)) {
- if (CC->logged_in) logout(CC);
+ if (CC->logged_in) logout();
cprintf("%d logged out.\n", CIT_OK);
}
cmd_isme(&cmdbuf[5]);
}
+ else if (!strncasecmp(cmdbuf, "RENU", 4)) {
+ cmd_renu(&cmdbuf[5]);
+ }
+
else if (!DLoader_Exec_Cmd(cmdbuf)) {
cprintf("%d Unrecognized or unsupported command.\n", ERROR + CMD_NOT_SUPPORTED);
}