]> code.citadel.org Git - citadel.git/blobdiff - citadel/serv_vandelay.c
* Added "Base DN" "Bind DN" and "Bind DN password" config options
[citadel.git] / citadel / serv_vandelay.c
index 0a15b9275359d57e40888c2a6e78c0b202e763a6..1e1addde87eb326974e4056923fd80e9a7d67ae5 100644 (file)
@@ -36,7 +36,7 @@
 #include "citserver.h"
 #include "support.h"
 #include "config.h"
-#include "dynloader.h"
+#include "serv_extensions.h"
 #include "database.h"
 #include "msgbase.h"
 #include "tools.h"
@@ -50,7 +50,7 @@ char artv_tempfilename1[PATH_MAX];
 char artv_tempfilename2[PATH_MAX];
 FILE *artv_global_message_list;
 
-void artv_export_users_backend(struct usersupp *usbuf, void *data) {
+void artv_export_users_backend(struct ctdluser *usbuf, void *data) {
        cprintf("user\n");
        cprintf("%d\n", usbuf->version);
        cprintf("%ld\n", (long)usbuf->uid);
@@ -65,7 +65,6 @@ void artv_export_users_backend(struct usersupp *usbuf, void *data) {
        cprintf("%s\n", usbuf->fullname);
        cprintf("%d\n", usbuf->USscreenwidth);
        cprintf("%d\n", usbuf->USscreenheight);
-       cprintf("%d\n", usbuf->moderation_filter);
 }
 
 
@@ -80,7 +79,7 @@ void artv_export_room_msg(long msgnum, void *userdata) {
 }
 
 
-void artv_export_rooms_backend(struct quickroom *qrbuf, void *data) {
+void artv_export_rooms_backend(struct ctdlroom *qrbuf, void *data) {
        cprintf("room\n");
        cprintf("%s\n", qrbuf->QRname);
        cprintf("%s\n", qrbuf->QRpasswd);
@@ -99,11 +98,11 @@ void artv_export_rooms_backend(struct quickroom *qrbuf, void *data) {
        cprintf("%u\n", qrbuf->QRflags2);
        cprintf("%d\n", qrbuf->QRdefaultview);
 
-       getroom(&CC->quickroom, qrbuf->QRname);
+       getroom(&CC->room, qrbuf->QRname);
        /* format of message list export is all message numbers output
         * one per line terminated by a 0.
         */
-       CtdlForEachMessage(MSGS_ALL, 0L, (-127), NULL, NULL,
+       CtdlForEachMessage(MSGS_ALL, 0L, NULL, NULL,
                artv_export_room_msg, NULL);
        cprintf("0\n");
 
@@ -178,6 +177,7 @@ void artv_export_visits(void) {
                        cprintf("%ld\n", vbuf.v_lastseen);
                }
 
+               cprintf("%s\n", vbuf.v_answered);
                cprintf("%u\n", vbuf.v_flags);
                cprintf("%d\n", vbuf.v_view);
        }
@@ -200,7 +200,6 @@ void artv_export_message(long msgnum) {
        cprintf("%ld\n", msgnum);
        cprintf("%d\n", smi.meta_refcount);
        cprintf("%s\n", smi.meta_content_type);
-       cprintf("%d\n", smi.meta_mod);
 
        serialize_message(&smr, msg);
        CtdlFreeMessage(msg);
@@ -267,15 +266,11 @@ void artv_do_export(void) {
        cprintf("%s\n", config.c_twitroom);
        cprintf("%s\n", config.c_moreprompt);
        cprintf("%d\n", config.c_restrict);
-       cprintf("%ld\n", config.c_msgbase);
        cprintf("%s\n", config.c_bbs_city);
        cprintf("%s\n", config.c_sysadm);
-       cprintf("%s\n", config.c_bucket_dir);
        cprintf("%d\n", config.c_setup_level);
        cprintf("%d\n", config.c_maxsessions);
-       cprintf("%s\n", config.c_net_password);
        cprintf("%d\n", config.c_port_number);
-       cprintf("%d\n", config.c_ipgm_secret);
        cprintf("%d\n", config.c_ep.expire_mode);
        cprintf("%d\n", config.c_ep.expire_value);
        cprintf("%d\n", config.c_userpurge);
@@ -287,7 +282,14 @@ void artv_do_export(void) {
        cprintf("%d\n", config.c_max_workers);
        cprintf("%d\n", config.c_pop3_port);
        cprintf("%d\n", config.c_smtp_port);
-       cprintf("%d\n", config.c_default_filter);
+       cprintf("%d\n", config.c_purge_hour);
+       cprintf("%d\n", config.c_mbxep.expire_mode);
+       cprintf("%d\n", config.c_mbxep.expire_value);
+       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);
 
        /* Export the control file */
        get_control();
@@ -327,16 +329,12 @@ void artv_import_config(void) {
        client_gets(config.c_twitroom);
        client_gets(config.c_moreprompt);
        client_gets(buf);       config.c_restrict = atoi(buf);
-       client_gets(buf);       config.c_msgbase = atol(buf);
        client_gets(config.c_bbs_city);
        client_gets(config.c_sysadm);
        lprintf(9, "c_sysadm = %s\n", config.c_sysadm);
-       client_gets(config.c_bucket_dir);
        client_gets(buf);       config.c_setup_level = atoi(buf);
        client_gets(buf);       config.c_maxsessions = atoi(buf);
-       client_gets(config.c_net_password);
        client_gets(buf);       config.c_port_number = atoi(buf);
-       client_gets(buf);       config.c_ipgm_secret = atoi(buf);
        client_gets(buf);       config.c_ep.expire_mode = atoi(buf);
        client_gets(buf);       config.c_ep.expire_value = atoi(buf);
        client_gets(buf);       config.c_userpurge = atoi(buf);
@@ -348,7 +346,14 @@ void artv_import_config(void) {
        client_gets(buf);       config.c_max_workers = atoi(buf);
        client_gets(buf);       config.c_pop3_port = atoi(buf);
        client_gets(buf);       config.c_smtp_port = atoi(buf);
-       client_gets(buf);       config.c_default_filter = atoi(buf);
+       client_gets(buf);       config.c_purge_hour = atoi(buf);
+       client_gets(buf);       config.c_mbxep.expire_mode = atoi(buf);
+       client_gets(buf);       config.c_mbxep.expire_value = atoi(buf);
+       client_gets(config.c_ldap_host);
+       client_gets(buf);       config.c_ldap_port = atoi(buf);
+       client_gets(config.c_ldap_base_dn);
+       client_gets(config.c_ldap_bind_dn);
+       client_gets(config.c_ldap_bind_pw);
        put_config();
        lprintf(7, "Imported config file\n");
 }
@@ -371,7 +376,7 @@ void artv_import_control(void) {
 
 void artv_import_user(void) {
        char buf[SIZ];
-       struct usersupp usbuf;
+       struct ctdluser usbuf;
 
        client_gets(buf);       usbuf.version = atoi(buf);
        client_gets(buf);       usbuf.uid = atoi(buf);
@@ -386,14 +391,13 @@ void artv_import_user(void) {
        client_gets(usbuf.fullname);
        client_gets(buf);       usbuf.USscreenwidth = atoi(buf);
        client_gets(buf);       usbuf.USscreenheight = atoi(buf);
-       client_gets(buf);       usbuf.moderation_filter = atoi(buf);
        putuser(&usbuf);
 }
 
 
 void artv_import_room(void) {
        char buf[SIZ];
-       struct quickroom qrbuf;
+       struct ctdlroom qrbuf;
        long msgnum;
        int msgcount = 0;
 
@@ -459,6 +463,7 @@ void artv_import_visit(void) {
        for (i=0; i<strlen(buf); ++i) if (!isdigit(buf[i])) is_textual_seen = 1;
        if (is_textual_seen)    strcpy(vbuf.v_seen, buf);
 
+       client_gets(vbuf.v_answered);
        client_gets(buf);       vbuf.v_flags = atoi(buf);
        client_gets(buf);       vbuf.v_view = atoi(buf);
        put_visit(&vbuf);
@@ -482,7 +487,6 @@ void artv_import_message(void) {
                                smi.meta_msgnum = msgnum;
        client_gets(buf);       smi.meta_refcount = atoi(buf);
        client_gets(smi.meta_content_type);
-       client_gets(buf);       smi.meta_mod = atoi(buf);
 
        lprintf(7, "message #%ld\n", msgnum);
 
@@ -530,7 +534,7 @@ void artv_do_import(void) {
                if (!strcasecmp(buf, "version")) {
                        client_gets(s_version);
                        version = atoi(s_version);
-                       if ((version < REV_MIN) || (version > REV_LEVEL)) {
+                       if ((version<EXPORT_REV_MIN) || (version>REV_LEVEL)) {
                                lprintf(7, "Version mismatch - aborting\n");
                                break;
                        }
@@ -563,7 +567,6 @@ void cmd_artv(char *cmdbuf) {
        }
        is_running = 1;
 
-       strcpy(artv_tempfilename1, tmpnam(NULL));
        strcpy(artv_tempfilename2, tmpnam(NULL));
 
        extract(cmd, cmdbuf, 0);
@@ -580,7 +583,7 @@ void cmd_artv(char *cmdbuf) {
 
 
 
-char *Dynamic_Module_Init(void)
+char *serv_vandelay_init(void)
 {
        CtdlRegisterProtoHook(cmd_artv, "ARTV", "import/export data store");
        return "$Id$";