- Mar 31, 2020
-
-
rswindell authored
in the text.dat. This may be a sysop-configurable value in the future. text.dat NewPasword is now NewPassswordPromptFmt and includes both the minimum and maximum password length as % specifiers.
-
rswindell authored
-
rswindell authored
when echo is disabled or when we're echoing X's (for password input). Ctrl-R key would redraw the raw password at a password prompt, even when the console is in Echo-X mode, pass a non-zero mode flag to redrwstr() to fix that. Also, some experimental UTF-8 input stuff that doesn't work right yet.
-
- Mar 30, 2020
-
-
rswindell authored
-
- Mar 29, 2020
-
-
rswindell authored
specially, just pass them on to the script as-is. Included a JSDOC note about the use of js.exec.apply() to pass a variable number of arguments (ala execv). Thanks Tracker1 for the pointer to 'spread' which led me to function.apply() and the JS-standard method of achieving the result I needed with this enhancement. I still think that a script that calls exit() is unlikely to expect non-string arguments in the first place, but if we don't need special case behavior, it's better not to add it and keep the behavior consistent with load() and require(). That was the decision of the executive board anyway. :-|
-
rswindell authored
patch/bug-report by Mark Lewis.
-
rswindell authored
use this in place of system.node_list[] if you're going to be using a lot of the properties and passing them around to methods which are going to each possibly dereference the values, as *each* deference results in a read of the node record in the node.dab. On my system, a simple node list (e.g. /L command) would result in between 60 and 100 reads of the node.dab (for a 13 node system), which was nuts. The system.get_node() method currently leaves the node record unlocked and there is currently no equivalent put_node() method, so you still need to use the system.node_list[] for modification of node records. But, I now see there are race conditions with the current methods of read-modify-writes of the node_list[] properties. We should be locking a node.dab record, reading it, modifying it, writing it, and then unlocking it - as is done in the C/C++ code. So... that's a todo item. Also created system.stats.node_gets to track the number of node.dab reads from a single instance of the system object. May remove this any time.
-
rswindell authored
script are arrays, pass each element of the array as a separate argument to the child script. This allows one script to generate a variable-length list of arguments to be passed to another.
-
rswindell authored
Improve "script missing" error reporting in js.exec().
-
rswindell authored
not v3.16.
-
- Mar 28, 2020
-
-
rswindell authored
This is an artifact from SBBS v2 for DOS: The file would contain the address of a shadow of the modem status register (written by execdos.exe) for dropped-carrier detection in xsdk doors (or the "dcdwatch" utility) while the BBS was "shrunk" out of memory to execute the external program with maximal available memory.
-
rswindell authored
-
- Mar 25, 2020
-
-
rswindell authored
-
rswindell authored
to "text_sec" (text_sec.js). This means that the Baja TEXT_FILE_SECTION function and the JS bbs.text_sec() method now execute the module rather than executing the old (now removed) C++ code. Hooray!
-
rswindell authored
and Text Section configuration menus to be consistent with other areas of SCFG. Don't default a new text section name to "ANSI Artwork" any more.
-
rswindell authored
-
rswindell authored
(in the same vein as internal codes are entered in the rest of SCFG).
-
rswindell authored
YEAR, MONTH, MONTHNAME, WEEKDAY, DAY
-
- Mar 24, 2020
-
-
rswindell authored
-
rswindell authored
-
rswindell authored
filtering on packet address (e.g. to limit importing to a specific msg network) - for Ragnarok
-
rswindell authored
"getter". Don't call getstats() when querying properties that aren't actually stats (e.g. total_users) - performance optimization.
-
rswindell authored
This makes this file more suitable for import into SCFG->Message Areas (something I'll work on soon), i.e. as an alternative to importing badareas.lst
-
rswindell authored
55 characters (per echobase.hlp and .que in http://echolist.net/echohelp.zip). ... who knew?
-
rswindell authored
when importing an echolist (e.g. badareas.lst) file, the storage path of the template sub-board (if there was one) is cleared. Don't over-ride the template sub's storage path unless a non-blank storage directory was specified in the import file (e.g. subs.txt).
-
- Mar 23, 2020
-
-
rswindell authored
This eliminates the error messages that would be displayed/logged when attempting the SYS_capset SYSCALL, which fails when not root. So the capabilities dance enabled with USE_LINUX_CAPS (which is automatically enabled when /usr/include/sys/capabilites.h exists, which is installed with the libcap2-dev package) apparently is still useful if you need to start sbbs as root: the main thread will remain as root even when the child threads have their user-id's changed to the user specified in the [UNIX] section of sbbs.ini or on the command-line - so reducing the enabled privilege set for this root/main thread to the minimum needed, is a good security measure. It does this reduction (call to linux_minprivs() after the call to change_user()) so I'm not exactly sure how that works, but according to Deuce, this is what's happening. :-/
-
rswindell authored
thing or how to test the change. <shrug>
-
rswindell authored
time for it to go away. Using 'sudo setcap sbbs' during build seems like the better, more supported solution.
-
rswindell authored
the generated 'sbbs' executable to enable low-port-binding capability. e.g. run 'make RELEASE=1 setcap symlinks' to make a release (non-debug) build, set the bind-capability on sbbs, and create symlinks from your exec directory to the build output (*.exe.release) directory.
-
- Mar 22, 2020
- Mar 21, 2020
-
-
rswindell authored
Fixed capitalization and description of "SBBSecho".
-
- Mar 20, 2020
- Mar 19, 2020
-
-
rswindell authored
"dump" to an array of strings using the (new) smb_msghdr_str_list() SMBLIB function. The message header passed must've been previously returned from the get_msg_header() or get_all_msg_headers() method. A similar dump could be constructed from the header properties, as available in JS, but that would be inconsistent with other msg header dumps and likely lack header fields or details available from the lowest level dump method provided in SMBLIB.
-
rswindell authored
- ASCII - UTF8 - CP437 And these, along with the pre-existing PETSCII keyword, are mutually exclusive (only one will be set/true).
-
rswindell authored
- you couldn't specify a maxnum value of 0 (it would get overridden to ~0) - you couldn't specify a mode argument value without also specifying a non-zero maxnum value
-
rswindell authored
-
rswindell authored
-