#include <pwd.h>
#include <stdarg.h>
#include <errno.h>
-
+#include <libcitadel.h>
#include "citadel.h"
#include "citadel_ipc.h"
#include "axdefs.h"
#include "client_chat.h"
#include "client_passwords.h"
#include "citadel_decls.h"
-#include "tools.h"
#include "sysdep.h"
#ifndef HAVE_SNPRINTF
#include "snprintf.h"
char floorlist[128][SIZ]; /* names of floors */
int termn8 = 0; /* Set to nonzero to cause a logoff */
int secure; /* Set to nonzero when wire is encrypted */
-int can_do_msg4 = 0; /* Set to nonzero if the server can handle MSG4 commands */
extern char instant_msgs; /* instant messages waiting! */
extern int rc_ansi_color; /* ansi color value from citadel.rc */
extern int next_lazy_cmd;
CtdlIPC *ipc_for_signal_handlers; /* KLUDGE cover your eyes */
+int enable_syslog = 0;
/*
return;
}
- pprintf(" User Name Num L LastCall Calls Posts\n");
- pprintf("------------------------- ----- - ---------- ----- -----\n");
+ pprintf(" User Name Num L Last Visit Logins Messages\n");
+ pprintf("------------------------- ----- - ---------- ------ --------\n");
if (listing != NULL) while (!IsEmptyStr(listing)) {
extract_token(buf, listing, 0, '\n', sizeof buf);
remove_token(listing, 0, '\n');
(tmbuf.tm_mon + 1),
tmbuf.tm_mday,
(tmbuf.tm_year + 1900));
- pprintf("%5ld %5ld\n", extract_long(buf, 4), extract_long(buf, 5));
+ pprintf("%6ld %8ld\n", extract_long(buf, 4), extract_long(buf, 5));
}
}
scr_printf("Connected users %d / Active users %d / Highest message #%ld\n", mrtg_users, mrtg_active_users, mrtg_himessage);
scr_printf("Server uptime: %s\n", mrtg_server_uptime);
scr_printf("Your system administrator is %s.\n", ipc->ServInfo.sysadm);
- scr_printf("Copyright (C)1987-2007 by the Citadel development team\n");
+ scr_printf("Copyright (C)1987-2008 by the Citadel development team\n");
}
/*
* it to the reader's screen width, but since our HTML-to-text parser
* isn't really all that great, it's probably better to just go with
* the plain text when we have it available.
+ *
+ * We also indicate to the server that we prefer to decode Base64 and
+ * quoted-printable on the client side.
*/
- if ((CtdlIPCSpecifyPreferredFormats(ipc, buf, "text/plain|text/html") / 100 )== 2) {
- can_do_msg4 = 1;
+ if ((CtdlIPCSpecifyPreferredFormats(ipc, buf, "dont_decode") / 100 ) != 2) {
+ scr_printf("ERROR: Extremely old server; MSG4 framework not supported.\n");
+ logoff(ipc, 0);
+ }
+ if ((CtdlIPCSpecifyPreferredFormats(ipc, buf, "text/plain|text/html") / 100 ) != 2) {
+ scr_printf("ERROR: Extremely old server; MSG4 framework not supported.\n");
+ logoff(ipc, 0);
}
}
// eCrashSymbolTable symbol_table;
#endif
CtdlInitBase64Table();
- calc_dirs_n_files(relh, home, relhome, ctdldir);
+ calc_dirs_n_files(relh, home, relhome, ctdldir, 0);
#ifdef HAVE_BACKTRACE
bzero(¶ms, sizeof(params));
do_pop3client_configuration(ipc);
break;
+ case 128: /* Configure XML/RSS feed retrieval */
+ do_rssclient_configuration(ipc);
+ break;
+
default: /* allow some math on the command */
/* commands 100... to 100+MAX_EDITORS-1 will
call the appropriate editor... in other