https://gitlab.synchro.net/main/sbbs/-/commit/6efa906bdaa162ea1eb95d6a
Modified Files:
src/sbbs3/answer.cpp bat_xfer.cpp chat.cpp data.cpp email.cpp exec.cpp execfunc.cpp getnode.cpp listfile.cpp load_cfg.c logon.cpp logout.cpp main.cpp newuser.cpp readmail.cpp readmsgs.cpp sbbs.h scandirs.cpp scansubs.cpp src/sbbs3/scfg/scfgsys.c src/sbbs3/scfgdefs.h scfglib1.c scfgsave.c str.cpp text_sec.cpp tmp_xfer.cpp useredit.cpp writemsg.cpp xtrn_sec.cpp
Log Message:
Support multiple loadable modules per module type, restricted via ARS
Implemented this idea discussed between Nightfox and myself:
A configurable ARS for some loadable would be a good idea and allow a sysop to use built-in functions for some users and loadable modules for others.
One thing I've thought would be handy would be to have a user preference option for that as well. For instance, if a sysop has msglist or DDMsgReader set up for the loadable module to list/read messages, it may be useful to have a toggle option in the user preferences so users can specify whether they want to use that or the stock Synchronet reader/lister.
----
So with user properties exposed to ARS and loadable modules restricted via
ARS, it's now possible for a "toggle option" in (some yet to be written) user preferences mod to toggle between (or at least "opt-out" from) loadable modules (and possibly revert built-in functionality, when it's there).
Some of the "built-ins" (e.g. the batch transfer menu and file transfer menu) are likely to get removed soon, so reverting to "built-in" doesn't make sense in that case but you could at least limit what users (or user terminals) have access to what loadable modules now. e.g. I plan to make the default/stock configuration use msglist.js only for "ANSI AND COLS 80" users.
This includes recursion protection (refuses to execute recursively and logs
an error if attempted) for all loadable modules.
The SCFG configuration for Loadable Modules could use a little more love now (help screens and such).
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net