]> code.citadel.org Git - citadel.git/blobdiff - citadel/control.c
* Bumped internal version number to 6.23
[citadel.git] / citadel / control.c
index d1baeae509c359c68dafcc630d27ebb3495f7ee5..c145a5a930eeca087ede2c1cde86afdc1299d74b 100644 (file)
 #include <string.h>
 #include <errno.h>
 #include <limits.h>
-#include <syslog.h>
 #include <sys/types.h>
 #include "citadel.h"
 #include "server.h"
 #include "control.h"
-#include "dynloader.h"
+#include "serv_extensions.h"
 #include "sysdep_decls.h"
 #include "support.h"
 #include "config.h"
@@ -81,7 +80,7 @@ void get_control(void)
                }
        }
        if (control_fp == NULL) {
-               lprintf(1, "ERROR opening citadel.control: %s\n",
+               lprintf(CTDL_ALERT, "ERROR opening citadel.control: %s\n",
                        strerror(errno));
                return;
        }
@@ -180,7 +179,7 @@ void cmd_conf(char *argbuf)
                cprintf("%s\n", config.c_bbs_city);
                cprintf("%s\n", config.c_sysadm);
                cprintf("%d\n", config.c_maxsessions);
-               cprintf("%s\n", config.c_net_password);
+               cprintf("xxx\n"); /* placeholder -- field no longer in use */
                cprintf("%d\n", config.c_userpurge);
                cprintf("%d\n", config.c_roompurge);
                cprintf("%s\n", config.c_logpages);
@@ -190,12 +189,27 @@ void cmd_conf(char *argbuf)
                cprintf("%d\n", config.c_max_workers);
                cprintf("%d\n", config.c_pop3_port);
                cprintf("%d\n", config.c_smtp_port);
-               cprintf("0\n"); /* position 25 no longer exists */
+               cprintf("%d\n", config.c_rfc822_strict_from);
                cprintf("%d\n", config.c_aide_zap);
                cprintf("%d\n", config.c_imap_port);
                cprintf("%ld\n", config.c_net_freq);
                cprintf("%d\n", config.c_disable_newu);
-               cprintf("%d\n", config.c_aide_mailboxes);
+               cprintf("1\n"); /* no longer in use */
+               cprintf("%d\n", config.c_purge_hour);
+#ifdef HAVE_LDAP
+               cprintf("%s\n", config.c_ldap_host);
+               cprintf("%d\n", config.c_ldap_port);
+               cprintf("%s\n", config.c_ldap_base_dn);
+               cprintf("%s\n", config.c_ldap_bind_dn);
+               cprintf("%s\n", config.c_ldap_bind_pw);
+#else
+               cprintf("\n");
+               cprintf("0\n");
+               cprintf("\n");
+               cprintf("\n");
+               cprintf("\n");
+#endif
+               cprintf("%s\n", config.c_ip_addr);
                cprintf("000\n");
        }
 
@@ -266,12 +280,11 @@ void cmd_conf(char *argbuf)
                                break;
                        case 14:
                                config.c_maxsessions = atoi(buf);
-                               if (config.c_maxsessions < 1)
-                                       config.c_maxsessions = 1;
+                               if (config.c_maxsessions < 0)
+                                       config.c_maxsessions = 0;
                                break;
                        case 15:
-                               safestrncpy(config.c_net_password, buf,
-                                           sizeof config.c_net_password);
+                               /* placeholder -- field no longer in use */
                                break;
                        case 16:
                                config.c_userpurge = atoi(buf);
@@ -306,7 +319,9 @@ void cmd_conf(char *argbuf)
                        case 24:
                                config.c_smtp_port = atoi(buf);
                                break;
-                               /* case 25 no longer exists */
+                       case 25:
+                               config.c_rfc822_strict_from = atoi(buf);
+                               break;
                        case 26:
                                config.c_aide_zap = atoi(buf);
                                if (config.c_aide_zap != 0)
@@ -324,10 +339,38 @@ void cmd_conf(char *argbuf)
                                        config.c_disable_newu = 1;
                                break;
                        case 30:
-                               config.c_aide_mailboxes = atoi(buf);
-                               if (config.c_aide_mailboxes != 0)
-                                       config.c_aide_mailboxes = 1;
+                               /* no longer in use */
+                               break;
+                       case 31:
+                               if ((config.c_purge_hour >= 0)
+                                  && (config.c_purge_hour <= 23)) {
+                                       config.c_purge_hour = atoi(buf);
+                               }
+                               break;
+#ifdef HAVE_LDAP
+                       case 32:
+                               safestrncpy(config.c_ldap_host, buf,
+                                           sizeof config.c_ldap_host);
                                break;
+                       case 33:
+                               config.c_ldap_port = atoi(buf);
+                               break;
+                       case 34:
+                               safestrncpy(config.c_ldap_base_dn, buf,
+                                           sizeof config.c_ldap_base_dn);
+                               break;
+                       case 35:
+                               safestrncpy(config.c_ldap_bind_dn, buf,
+                                           sizeof config.c_ldap_bind_dn);
+                               break;
+                       case 36:
+                               safestrncpy(config.c_ldap_bind_pw, buf,
+                                           sizeof config.c_ldap_bind_pw);
+                               break;
+#endif
+                       case 37:
+                               safestrncpy(config.c_ip_addr, buf,
+                                               sizeof config.c_ip_addr);
                        }
                        ++a;
                }
@@ -350,7 +393,7 @@ void cmd_conf(char *argbuf)
                        if (confptr[strlen(confptr) - 1] != 10)
                                client_write("\n", 1);
                        cprintf("000\n");
-                       phree(confptr);
+                       free(confptr);
                } else {
                        cprintf("%d No such configuration.\n",
                                ERROR + ILLEGAL_VALUE);
@@ -360,10 +403,10 @@ void cmd_conf(char *argbuf)
        else if (!strcasecmp(cmd, "PUTSYS")) {
                extract(confname, argbuf, 1);
                cprintf("%d %s\n", SEND_LISTING, confname);
-               confptr =
-                   CtdlReadMessageBody("000", config.c_maxmsglen, NULL);
+               confptr = CtdlReadMessageBody("000",
+                               config.c_maxmsglen, NULL, 0);
                CtdlPutSysConfig(confname, confptr);
-               phree(confptr);
+               free(confptr);
        }
 
        else {