X-Git-Url: https://code.citadel.org/?a=blobdiff_plain;f=citadel%2Fmodules%2Finetcfg%2Fserv_inetcfg.c;h=814659d2833b48832a41687c7de4d940081a1fd4;hb=882ff5a53c3b4e440520a073cf07dc60b2671876;hp=7c0bedaa10aaf1cd89604a9c463b09f6c71b8e7f;hpb=5e3befebe2ed0ce85324da3be83b21880dc7d069;p=citadel.git diff --git a/citadel/modules/inetcfg/serv_inetcfg.c b/citadel/modules/inetcfg/serv_inetcfg.c index 7c0bedaa1..814659d28 100644 --- a/citadel/modules/inetcfg/serv_inetcfg.c +++ b/citadel/modules/inetcfg/serv_inetcfg.c @@ -4,21 +4,15 @@ * wrote it as a module merely to keep things as clean and loosely coupled * as possible. * - * Copyright (c) 1987-2012 by the citadel.org team + * Copyright (c) 1987-2021 by the citadel.org team * - * This program is open source software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 3. - * - * + * This program is open source software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 3. * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * - * - * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. */ #include "sysdep.h" @@ -30,18 +24,7 @@ #include #include #include - -#if TIME_WITH_SYS_TIME -# include -# include -#else -# if HAVE_SYS_TIME_H -# include -# else -# include -# endif -#endif - +#include #include #include #include @@ -57,8 +40,6 @@ #include "internet_addressing.h" #include "genstamp.h" #include "domain.h" - - #include "ctdl_module.h" @@ -85,25 +66,30 @@ void inetcfg_setTo(struct CtdlMessage *msg) { * This handler detects changes being made to the system's Internet * configuration. */ -int inetcfg_aftersave(struct CtdlMessage *msg) { +int inetcfg_aftersave(struct CtdlMessage *msg, struct recptypes *recp) { char *ptr; int linelen; /* If this isn't the configuration room, or if this isn't a MIME * message, don't bother. */ - if (strcasecmp(msg->cm_fields[eOriginalRoom], SYSCONFIGROOM)) return(0); - if (msg->cm_format_type != 4) return(0); + if ((msg->cm_fields[eOriginalRoom]) && (strcasecmp(msg->cm_fields[eOriginalRoom], SYSCONFIGROOM))) { + return(0); + } + if (msg->cm_format_type != 4) { + return(0); + } ptr = msg->cm_fields[eMesageText]; while (ptr != NULL) { linelen = strcspn(ptr, "\n"); - if (linelen == 0) return(0); /* end of headers */ + if (linelen == 0) { + return(0); /* end of headers */ + } if (!strncasecmp(ptr, "Content-type: ", 14)) { - if (!strncasecmp(&ptr[14], INTERNETCFG, - strlen(INTERNETCFG))) { + if (!strncasecmp(&ptr[14], INTERNETCFG, strlen(INTERNETCFG))) { inetcfg_setTo(msg); /* changing configs */ } } @@ -128,26 +114,18 @@ void inetcfg_init_backend(long msgnum, void *userdata) { void inetcfg_init(void) { - if (CtdlGetRoom(&CC->room, SYSCONFIGROOM) != 0) return; - CtdlForEachMessage(MSGS_LAST, 1, NULL, INTERNETCFG, NULL, - inetcfg_init_backend, NULL); + syslog(LOG_DEBUG, "EVQ: called inetcfg_init()"); + if (CtdlGetRoom(&CC->room, SYSCONFIGROOM) != 0) { + return; + } + CtdlForEachMessage(MSGS_LAST, 1, NULL, INTERNETCFG, NULL, inetcfg_init_backend, NULL); } - - /*****************************************************************************/ /* MODULE INITIALIZATION STUFF */ /*****************************************************************************/ -void clenaup_inetcfg(void) -{ - char *buf; - buf = inetcfg; - inetcfg = NULL; - if (buf != NULL) - free(buf); -} CTDL_MODULE_INIT(inetcfg) { @@ -155,10 +133,8 @@ CTDL_MODULE_INIT(inetcfg) { CtdlRegisterMessageHook(inetcfg_aftersave, EVT_AFTERSAVE); inetcfg_init(); - CtdlRegisterCleanupHook(clenaup_inetcfg); } /* return our module name for the log */ return "inetcfg"; } -