/*
- * $Id$
- *
* This module handles the loading/saving and maintenance of the
* system's Internet configuration. It's not an optional component; I
* wrote it as a module merely to keep things as clean and loosely coupled
#include "support.h"
#include "config.h"
#include "user_ops.h"
-#include "policy.h"
#include "database.h"
#include "msgbase.h"
#include "internet_addressing.h"
}
-#ifdef ___NOT_CURRENTLY_IN_USE___
-void spamstrings_setTo(struct CtdlMessage *msg) {
- char buf[SIZ];
- char *conf;
- struct spamstrings_t *sptr;
- int i, n;
-
- /* Clear out the existing list */
- while (spamstrings != NULL) {
- sptr = spamstrings;
- spamstrings = spamstrings->next;
- free(sptr->string);
- free(sptr);
- }
-
- /* Read in the new list */
- if (msg->cm_fields['M']==NULL) return;
- conf = strdup(msg->cm_fields['M']);
- if (conf == NULL) return;
-
- n = num_tokens(conf, '\n');
- for (i=0; i<n; ++i) {
- extract_token(buf, conf, i, '\n', sizeof buf);
- sptr = malloc(sizeof(struct spamstrings_t));
- sptr->string = strdup(buf);
- sptr->next = spamstrings;
- spamstrings = sptr;
- }
-
-}
-#endif
-
-
/*
* This handler detects changes being made to the system's Internet
* configuration.
}
-#ifdef ___NOT_CURRENTLY_IN_USE___
-void spamstrings_init_backend(long msgnum, void *userdata) {
- struct CtdlMessage *msg;
-
- msg = CtdlFetchMessage(msgnum, 1);
- if (msg != NULL) {
- spamstrings_setTo(msg);
- CtdlFreeMessage(msg);
- }
-}
-#endif
-
-
void inetcfg_init(void) {
if (CtdlGetRoom(&CC->room, SYSCONFIGROOM) != 0) return;
CtdlForEachMessage(MSGS_LAST, 1, NULL, INTERNETCFG, NULL,
/*****************************************************************************/
/* MODULE INITIALIZATION STUFF */
/*****************************************************************************/
+void clenaup_inetcfg(void)
+{
+ char *buf;
+ buf = inetcfg;
+ inetcfg = NULL;
+ if (buf != NULL)
+ free(buf);
+}
CTDL_MODULE_INIT(inetcfg)
{
{
CtdlRegisterMessageHook(inetcfg_aftersave, EVT_AFTERSAVE);
inetcfg_init();
+ CtdlRegisterCleanupHook(clenaup_inetcfg);
}
- /* return our Subversion id for the Log */
- return "$Id$";
+ /* return our module name for the log */
+ return "inetcfg";
}