int c_smtp_port; /* SMTP listener port (usually 25) */
int c_default_filter; /* Default moderation filter level */
int c_aide_zap; /* Are Aides allowed to zap rooms? */
+ int c_imap_port; /* IMAP listener port (usually 143) */
};
#define NODENAME config.c_nodename
cprintf("%d\n", config.c_smtp_port);
cprintf("%d\n", config.c_default_filter);
cprintf("%d\n", config.c_aide_zap);
+ cprintf("%d\n", config.c_imap_port);
cprintf("000\n");
}
if (config.c_aide_zap != 0)
config.c_aide_zap = 1;
break;
+ case 27: config.c_imap_port = atoi(buf);
+ break;
}
++a;
}
void do_system_configuration(void)
{
char buf[256];
- char sc[27][256];
+ char sc[28][256];
int expire_mode = 0;
int expire_value = 0;
int a;
if (buf[0] == '1') {
a = 0;
while (serv_gets(buf), strcmp(buf, "000")) {
- if (a < 27)
+ if (a < 28)
strcpy(&sc[a][0], buf);
++a;
}
strprompt("Minimum number of worker threads", &sc[21][0], 3);
strprompt("Maximum number of worker threads", &sc[22][0], 3);
strprompt("Server-to-server networking password", &sc[15][0], 19);
- strprompt("POP3 server port (-1 to disable)", &sc[23][0], 5);
strprompt("SMTP server port (-1 to disable)", &sc[24][0], 5);
+ strprompt("POP3 server port (-1 to disable)", &sc[23][0], 5);
+ strprompt("IMAP server port (-1 to disable)", &sc[27][0], 5);
/* Expiry settings */
serv_puts("CONF set");
serv_gets(buf);
if (buf[0] == '4') {
- for (a = 0; a < 27; ++a)
+ for (a = 0; a < 28; ++a)
serv_puts(&sc[a][0]);
serv_puts("000");
}
char *Dynamic_Module_Init(void)
{
SYM_IMAP = CtdlGetDynamicSymbol();
- CtdlRegisterServiceHook(1143, /* FIXME put in config setup */
+ CtdlRegisterServiceHook(config.c_imap_port,
NULL,
imap_greeting,
imap_command_loop);
/*
* Default port numbers for various services
*/
- if (config.c_pop3_port == 0) config.c_pop3_port = 110;
if (config.c_smtp_port == 0) config.c_smtp_port = 25;
+ if (config.c_pop3_port == 0) config.c_pop3_port = 110;
+ if (config.c_imap_port == 0) config.c_imap_port = 143;
/* Go through a series of dialogs prompting for config info */
19. Name of room to log express messages to (or a zero-length name for none)
20. Access level required to create rooms
21. Maximum message length which may be entered into the system
- 22. Default moderation filter level for new users (-63 to +63)
- 23. Flag (0 or 1) - allow Aides to zap (forget) rooms
-
-
-
- EXPI (EXPIre system objects)
+ 22. Minimum number of worker threads
+ 23. Maximum number of worker threads
+ 24. Port number for POP3 service
+ 25. Port number for SMTP service
+ 26. Default moderation filter level for new users (-63 to +63)
+ 27. Flag (0 or 1) - allow Aides to zap (forget) rooms
+ 28. Port number for IMAP service
+
+
+ EXPI (EXPIre system objects)
Begins purge operations for objects which, according to site policy, are
"old" and should be removed. EXPI should be called with one argument, one of: