Skip to content
Snippets Groups Projects
Commit add79f03 authored by Rob Swindell's avatar Rob Swindell :speech_balloon:
Browse files

All loadable modules can now be configured as full command-lines

Previously, many/most loadable modules were limited to just 8 chars,
so while technically you could include a command-line option with a
very short module name, now all modules can be configured with full
(up to 63 char) command-lines.
parent 3cca779f
Branches
Tags
No related merge requests found
...@@ -95,7 +95,6 @@ ...@@ -95,7 +95,6 @@
#define LEN_CODE 16 /* Maximum length of internal codes */ #define LEN_CODE 16 /* Maximum length of internal codes */
#define LEN_QWKID 8 /* Maximum length of QWK-ID */ #define LEN_QWKID 8 /* Maximum length of QWK-ID */
#define LEN_MODNAME 8 /* Maximum length of loadable module name */
#define LEN_SIFNAME 8 /* Maximum length of SIF filename */ #define LEN_SIFNAME 8 /* Maximum length of SIF filename */
#define LEN_EXTCODE (LEN_CODE*2) /* Code prefix + suffix */ #define LEN_EXTCODE (LEN_CODE*2) /* Code prefix + suffix */
......
...@@ -2621,8 +2621,7 @@ void sys_cfg(void) ...@@ -2621,8 +2621,7 @@ void sys_cfg(void)
"\n" "\n"
"Baja modules (`.bin` files) or JavaScript modules (`.js` files) can be\n" "Baja modules (`.bin` files) or JavaScript modules (`.js` files) can be\n"
"automatically loaded and executed during certain Terminal Server\n" "automatically loaded and executed during certain Terminal Server\n"
"operations. The name (root filename) of the module can be specified for\n" "operations. Command-line arguments may be included for all.\n"
"each of the available operations listed below:\n"
"\n" "\n"
"`Login` Required module for interactive terminal logins (answer)\n" "`Login` Required module for interactive terminal logins (answer)\n"
"`Logon` Executed during terminal logon procedure\n" "`Logon` Executed during terminal logon procedure\n"
...@@ -2637,9 +2636,6 @@ void sys_cfg(void) ...@@ -2637,9 +2636,6 @@ void sys_cfg(void)
"`Pre Xtrn` Executed before external programs (doors) run\n" "`Pre Xtrn` Executed before external programs (doors) run\n"
"`Post Xtrn` Executed after external programs (doors) run\n" "`Post Xtrn` Executed after external programs (doors) run\n"
"`Temp Transfer` Temporary/archive file transfer menu\n" "`Temp Transfer` Temporary/archive file transfer menu\n"
"\n"
"Full module command-lines may be used for the operations listed below:\n"
"\n"
"`Read Mail` Executed when a user reads email/netmail\n" "`Read Mail` Executed when a user reads email/netmail\n"
"`Scan Msgs` Executed when a user reads or scans a message sub-board\n" "`Scan Msgs` Executed when a user reads or scans a message sub-board\n"
"`Scan Subs` Executed when a user scans one or more sub-boards for msgs\n" "`Scan Subs` Executed when a user scans one or more sub-boards for msgs\n"
...@@ -2652,7 +2648,7 @@ void sys_cfg(void) ...@@ -2652,7 +2648,7 @@ void sys_cfg(void)
"`Note:` JavaScript modules take precedence over Baja modules if both exist\n" "`Note:` JavaScript modules take precedence over Baja modules if both exist\n"
" in your `exec` or `mods` directories.\n" " in your `exec` or `mods` directories.\n"
; ;
switch(uifc.list(WIN_ACT|WIN_BOT|WIN_RHT,0,0,40,&mod_dflt,&mod_bar switch(uifc.list(WIN_ACT|WIN_BOT|WIN_RHT,0,0,50,&mod_dflt,&mod_bar
,"Loadable Modules",opt)) { ,"Loadable Modules",opt)) {
case -1: case -1:
...@@ -2706,37 +2702,37 @@ void sys_cfg(void) ...@@ -2706,37 +2702,37 @@ void sys_cfg(void)
case 11: case 11:
uifc.input(WIN_MID|WIN_SAV,0,0,"Post External Program Module" uifc.input(WIN_MID|WIN_SAV,0,0,"Post External Program Module"
,cfg.postxtrn_mod,sizeof(cfg.postxtrn_mod)-1,K_EDIT); ,cfg.postxtrn_mod,sizeof(cfg.postxtrn_mod)-1,K_EDIT);
break; break;
case 12: case 12:
uifc.input(WIN_MID|WIN_SAV,0,0,"Read Mail Command" uifc.input(WIN_MID|WIN_SAV,0,0,"Read Mail Module"
,cfg.readmail_mod,sizeof(cfg.readmail_mod)-1,K_EDIT); ,cfg.readmail_mod,sizeof(cfg.readmail_mod)-1,K_EDIT);
break; break;
case 13: case 13:
uifc.input(WIN_MID|WIN_SAV,0,0,"Scan Msgs Command" uifc.input(WIN_MID|WIN_SAV,0,0,"Scan Msgs Module"
,cfg.scanposts_mod,sizeof(cfg.scanposts_mod)-1,K_EDIT); ,cfg.scanposts_mod,sizeof(cfg.scanposts_mod)-1,K_EDIT);
break; break;
case 14: case 14:
uifc.input(WIN_MID|WIN_SAV,0,0,"Scan Subs Command" uifc.input(WIN_MID|WIN_SAV,0,0,"Scan Subs Module"
,cfg.scansubs_mod,sizeof(cfg.scansubs_mod)-1,K_EDIT); ,cfg.scansubs_mod,sizeof(cfg.scansubs_mod)-1,K_EDIT);
break; break;
case 15: case 15:
uifc.input(WIN_MID|WIN_SAV,0,0,"List Msgs Command" uifc.input(WIN_MID|WIN_SAV,0,0,"List Msgs Module"
,cfg.listmsgs_mod,sizeof(cfg.listmsgs_mod)-1,K_EDIT); ,cfg.listmsgs_mod,sizeof(cfg.listmsgs_mod)-1,K_EDIT);
break; break;
case 16: case 16:
uifc.input(WIN_MID|WIN_SAV,0,0,"List Logons Command" uifc.input(WIN_MID|WIN_SAV,0,0,"List Logons Module"
,cfg.logonlist_mod,sizeof(cfg.logonlist_mod)-1,K_EDIT); ,cfg.logonlist_mod,sizeof(cfg.logonlist_mod)-1,K_EDIT);
break; break;
case 17: case 17:
uifc.input(WIN_MID|WIN_SAV,0,0,"List Nodes Command" uifc.input(WIN_MID|WIN_SAV,0,0,"List Nodes Module"
,cfg.nodelist_mod,sizeof(cfg.nodelist_mod)-1,K_EDIT); ,cfg.nodelist_mod,sizeof(cfg.nodelist_mod)-1,K_EDIT);
break; break;
case 18: case 18:
uifc.input(WIN_MID|WIN_SAV,0,0,"Who's Online Command" uifc.input(WIN_MID|WIN_SAV,0,0,"Who's Online Module"
,cfg.whosonline_mod,sizeof(cfg.whosonline_mod)-1,K_EDIT); ,cfg.whosonline_mod,sizeof(cfg.whosonline_mod)-1,K_EDIT);
break; break;
case 19: case 19:
uifc.input(WIN_MID|WIN_SAV,0,0,"Private Message Command" uifc.input(WIN_MID|WIN_SAV,0,0,"Private Message Module"
,cfg.privatemsg_mod,sizeof(cfg.privatemsg_mod)-1,K_EDIT); ,cfg.privatemsg_mod,sizeof(cfg.privatemsg_mod)-1,K_EDIT);
break; break;
case 20: case 20:
......
...@@ -594,16 +594,16 @@ typedef struct ...@@ -594,16 +594,16 @@ typedef struct
int32_t uq; /* User Questions */ int32_t uq; /* User Questions */
uint32_t mail_maxcrcs; /* Dupe checking in e-mail */ uint32_t mail_maxcrcs; /* Dupe checking in e-mail */
uint16_t mail_maxage; /* Maximum age of e-mail */ uint16_t mail_maxage; /* Maximum age of e-mail */
char logon_mod[LEN_MODNAME+1]; /* Logon module */ char logon_mod[LEN_CMD+1]; /* Logon module */
char logoff_mod[LEN_MODNAME+1]; /* Logoff module */ char logoff_mod[LEN_CMD+1]; /* Logoff module */
char newuser_mod[LEN_MODNAME+1]; /* New User Module */ char newuser_mod[LEN_CMD+1]; /* New User Module */
char login_mod[LEN_MODNAME+1]; /* Login module */ char login_mod[LEN_CMD+1]; /* Login module */
char logout_mod[LEN_MODNAME+1]; /* Logout module */ char logout_mod[LEN_CMD+1]; /* Logout module */
char sync_mod[LEN_MODNAME+1]; /* Synchronization module */ char sync_mod[LEN_CMD+1]; /* Synchronization module */
char expire_mod[LEN_MODNAME+1]; /* User expiration module */ char expire_mod[LEN_CMD+1]; /* User expiration module */
char textsec_mod[LEN_MODNAME+1]; /* Text section module */ char textsec_mod[LEN_CMD+1]; /* Text section module */
char xtrnsec_mod[LEN_MODNAME+1]; /* External Program section module */ char xtrnsec_mod[LEN_CMD+1]; /* External Program section module */
char automsg_mod[LEN_MODNAME+1]; /* Auto-message module */ char automsg_mod[LEN_CMD+1]; /* Auto-message module */
char readmail_mod[LEN_CMD+1]; /* Reading mail module */ char readmail_mod[LEN_CMD+1]; /* Reading mail module */
char scanposts_mod[LEN_CMD+1]; /* Scanning posts (in a single sub) module */ char scanposts_mod[LEN_CMD+1]; /* Scanning posts (in a single sub) module */
char scansubs_mod[LEN_CMD+1]; /* Scanning sub-boards module */ char scansubs_mod[LEN_CMD+1]; /* Scanning sub-boards module */
...@@ -612,9 +612,9 @@ typedef struct ...@@ -612,9 +612,9 @@ typedef struct
char whosonline_mod[LEN_CMD+1]; char whosonline_mod[LEN_CMD+1];
char privatemsg_mod[LEN_CMD+1]; char privatemsg_mod[LEN_CMD+1];
char logonlist_mod[LEN_CMD+1]; char logonlist_mod[LEN_CMD+1];
char prextrn_mod[LEN_MODNAME+1]; /* External Program pre-execution module */ char prextrn_mod[LEN_CMD+1]; /* External Program pre-execution module */
char postxtrn_mod[LEN_MODNAME+1]; /* External Program post-execution module */ char postxtrn_mod[LEN_CMD+1]; /* External Program post-execution module */
char tempxfer_mod[LEN_MODNAME+1]; char tempxfer_mod[LEN_CMD+1];
uchar smb_retry_time; /* Seconds to retry on SMBs */ uchar smb_retry_time; /* Seconds to retry on SMBs */
uint16_t sec_warn; /* Seconds before inactivity warning */ uint16_t sec_warn; /* Seconds before inactivity warning */
uint16_t sec_hangup; /* Seconds before inactivity hang-up */ uint16_t sec_hangup; /* Seconds before inactivity hang-up */
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment