Fix up ARTV import so that imports actually work.
[citadel.git] / citadel / control.c
index fe625d0512cf2570cdbb1ef4e0bb446fc9f75411..ea0865d49fd5db46243e0427d70ff76783a466b9 100644 (file)
@@ -29,6 +29,7 @@
 #include <limits.h>
 #include <sys/types.h>
 #include <sys/file.h>
+#include <libcitadel.h>
 #include "citadel.h"
 #include "server.h"
 #include "control.h"
 #include "config.h"
 #include "msgbase.h"
 #include "citserver.h"
-#include "tools.h"
 #include "room_ops.h"
 #include "user_ops.h"
 #include "database.h"
+#include "threads.h"
 
 #ifndef HAVE_SNPRINTF
 #include "snprintf.h"
@@ -65,8 +66,8 @@ void lock_control(void)
  */
 
        if (flock(fileno(control_fp), (LOCK_EX | LOCK_NB))) {
-               lprintf(CTDL_EMERG, "citserver: unable to lock %s.\n", file_citadel_control);
-               lprintf(CTDL_EMERG, "Is another citserver already running?\n");
+               CtdlLogPrintf(CTDL_EMERG, "citserver: unable to lock %s.\n", file_citadel_control);
+               CtdlLogPrintf(CTDL_EMERG, "Is another citserver already running?\n");
                exit(CTDLEXIT_CONTROL);
        }
 #endif
@@ -162,7 +163,7 @@ void get_control(void)
                }
        }
        if (control_fp == NULL) {
-               lprintf(CTDL_ALERT, "ERROR opening %s: %s\n",
+               CtdlLogPrintf(CTDL_ALERT, "ERROR opening %s: %s\n",
                                file_citadel_control,
                                strerror(errno));
                return;
@@ -330,6 +331,10 @@ void cmd_conf(char *argbuf)
                cprintf("%s\n", config.c_master_pass);
                cprintf("%s\n", config.c_pager_program);
                cprintf("%d\n", config.c_imap_keep_from);
+               cprintf("%d\n", config.c_xmpp_c2s_port);
+               cprintf("%d\n", config.c_xmpp_s2s_port);
+               cprintf("%ld\n", config.c_pop3_fetch);
+               cprintf("%ld\n", config.c_pop3_fastest);
                cprintf("000\n");
        }
 
@@ -337,7 +342,7 @@ void cmd_conf(char *argbuf)
                unbuffer_output();
                cprintf("%d Send configuration...\n", SEND_LISTING);
                a = 0;
-               while (client_getln(buf, sizeof buf), strcmp(buf, "000")) {
+               while (client_getln(buf, sizeof buf) >= 0 && strcmp(buf, "000")) {
                        switch (a) {
                        case 0:
                                safestrncpy(config.c_nodename, buf,
@@ -571,6 +576,18 @@ void cmd_conf(char *argbuf)
                        case 61:
                                config.c_imap_keep_from = atoi(buf);
                                break;
+                       case 62:
+                               config.c_xmpp_c2s_port = atoi(buf);
+                               break;
+                       case 63:
+                               config.c_xmpp_s2s_port = atoi(buf);
+                               break;
+                       case 64:
+                               config.c_pop3_fetch = atol(buf);
+                               break;
+                       case 65:
+                               config.c_pop3_fastest = atol(buf);
+                               break;
                        }
                        ++a;
                }