]> code.citadel.org Git - citadel.git/blobdiff - citadel/control.c
Lotsa stuff. See the changeLog for more details.
[citadel.git] / citadel / control.c
index f902bb169f9be782775d31f39cc8bb9cfbb90d70..e69b42a413e48d22258eff681aac96d86b4905b7 100644 (file)
@@ -16,6 +16,7 @@
 #include <ctype.h>
 #include <string.h>
 #include <errno.h>
+#include <limits.h>
 #include <pthread.h>
 #include <syslog.h>
 #include "citadel.h"
@@ -25,6 +26,8 @@
 #include "support.h"
 #include "config.h"
 #include "msgbase.h"
+#include "tools.h"
+#include "room_ops.h"
 
 struct CitControl CitControl;
 struct config config;
@@ -141,6 +144,8 @@ void cmd_conf(char *argbuf) {
                cprintf("%d\n", config.c_maxsessions);
                cprintf("%s\n", config.c_net_password);
                cprintf("%d\n", config.c_userpurge);
+               cprintf("%d\n", config.c_roompurge);
+               cprintf("%s\n", config.c_logpages);
                cprintf("000\n");
                }
 
@@ -194,6 +199,11 @@ void cmd_conf(char *argbuf) {
                                break;
                        case 16: config.c_userpurge = atoi(buf);
                                break;
+                       case 17: config.c_roompurge = atoi(buf);
+                               break;
+                       case 18: strncpy(config.c_logpages,
+                                       buf, ROOMNAMELEN);
+                               break;
                                }
                    ++a;
                    }
@@ -202,6 +212,9 @@ void cmd_conf(char *argbuf) {
                         "Global system configuration edited by %s",
                         CC->curr_user);
                aide_message(buf);
+
+               if (strlen(config.c_logpages) > 0)
+                       create_room(config.c_logpages, 4, "", 0);
                }
 
        else {