- May 20, 2023
-
-
Rob Swindell authored
-
- Apr 24, 2023
-
-
Rob Swindell authored
-
- Mar 16, 2023
-
-
Rob Swindell authored
... to make property names more consistent (e.g. with bbs.last_node). The old names (without the underscores) are still usable but won't appear in JSDOCS (i.e. jsobjs.html).
-
- Mar 14, 2023
-
-
Rob Swindell authored
Add some missing descriptions, fix the order of others.
-
Rob Swindell authored
Mainly capitalization, but some typos and added details.
-
- Feb 12, 2023
-
-
Rob Swindell authored
getdirsize() is maxed out at size_t, so return that type
-
- Feb 09, 2023
-
-
Rob Swindell authored
Insert an optional boolean argument to enable a search through deleted and inactive user records (in addition to active user records). This is part of the solution to the problem described in issue #513 where the UEDIT sysop command did not go to a specified user (by alias) automatically, presumably because the user record was marked as deleted.
-
- Dec 30, 2022
-
-
Rob Swindell authored
Some trailing whitespace clean-up too.
-
Rob Swindell authored
-
Rob Swindell authored
Previously, many servers and services didn't support login by real name (e.g. issue #469) even if the sysop had that option enabled in SCFG. Move login control settings from node.ini to system (main.ini -> login) The 3 node toggle options: - Allow Login by User Number - Allow Login by Real Name - Always Prompt for Password ... have been now moved from SCFG->Nodes->Node x->Toggle Options to SCFG-System->Toggle Options. If you upgraded to v3.20a before now, you'll want to double-check these settings to make sure they're how you want them set. New upgraders that run upgrade_to_v320.js (e.g. via 'jsexec update') will get these settings migrated automatically. Added some error detection/logging to upgrade_to_v320.js when failing to open .cnf files. Constified some more user/login related function args and return types.
-
- Dec 23, 2022
-
-
Rob Swindell authored
<host>/error .../spam .../hack
-
- Nov 12, 2022
-
-
Rob Swindell authored
Yeah, the Windows block doesn't some unsafe concatenations still.
-
- Oct 29, 2022
-
-
Rob Swindell authored
This should be used elsewhere too.
-
- Oct 18, 2022
-
-
Rob Swindell authored
Also resolved some 32 vs 64-bit 'long' issues/ambiguities that have long-remained. :-) This commit also removes logon.lst file support. There's a TODO block remaining in js_user.c for setting portions of a user's birthdate (e.g. just the year or month or day).
-
- Mar 28, 2022
-
-
Rob Swindell authored
*/dsts.dab (daily statistics and running totals) -> */dsts.ini */csts.dab (cumulative statistics / log) -> */csts.tab * dsts.ini now has both daily and total stats for all fields (not just timeon and logons). * dsts.ini is now an easily modifiable text file - no longer need dstsedit (here-by deprecated and soon to be deleted) * dsts.ini and csts.tab support 64-bit upload/download byte stats and are very extensible for future fields to be added or extended > 32-bit (this was the main inspiration for this overhaul, but it was overdue and already designed for v4, pretty much) * csts.tab is a tab-delimited fixed length record format suitable for easy import to a spreadsheet program or parsing with scripts. Each day is a 128-character LF-delimited record with tab-delimited fields of plain ASCII text. * All fields except timeon in dsts.ini files are updated immediately and by more non-terminal servers (e.g. post statistics from web UI scripts). * New user stats are tracked more than just for "today". The upgrade of these files is automatic and built-into SBBS. Still to do: overhaul the slog utility to support the new csts.tab file format.
-
- Mar 20, 2022
-
-
Rob Swindell authored
-
Rob Swindell authored
Resolves issue with filelist.js trying to pass 4294967295 (-1) to system.datestr() resulting in: !JavaScript /sbbs/exec/filelist.js line 13: Error: can't convert t to an integer
-
- Feb 12, 2022
-
-
Rob Swindell authored
-
- Jan 20, 2022
-
-
Rob Swindell authored
-
Rob Swindell authored
system.illegal_filename() - check if contains illegal chars/sequences system.safest_filename() - check if contains only safest chars system.allowed_filename() - check if meets criteria from SCFG->File Options system.check_filename() - check if legal and meets configured criteria and is not in file.can bbs.check_filename() - ditto, except will display badfile.msg as appropriate Now scripts can utilize the sysop-controlled filename criteria and security of the BBS.
-
- Jan 05, 2022
-
-
Rob Swindell authored
-
- Jan 02, 2022
-
-
Rob Swindell authored
-
- Aug 09, 2021
-
-
Rob Swindell authored
-
- Apr 20, 2021
-
-
Deucе authored
This variable tracks the time that jsdoor was started.
-
- Apr 06, 2021
-
-
Deucе authored
Previously, these both used gettimeofday() which is both expensive to call, and not monotonic. This fixes system.clock_ticks in JS and various internal bits. for when the UTC wall clock jumps. While we're here, fix the documention of system.clock_ticks
-
- Apr 04, 2021
-
-
Rob Swindell authored
This macro has expanded to nothing for a while now and even before, the usage was misguided and unnecessary as explained in this video: https://www.youtube.com/watch?v=cjotPqQxxAY
-
Rob Swindell authored
CID 319143
-
Rob Swindell authored
-
- Apr 02, 2021
-
-
Deucе authored
This appears to work and the event handler *should* work on other event types already. Note, this is *nix-only due to the use of poll(). select() will need to be used for Windows to keep XP compatability.
-
- Feb 22, 2021
-
-
Rob Swindell authored
-
- Feb 15, 2021
-
-
Rob Swindell authored
Hopefully not introducing any bugs in the process.
-
Rob Swindell authored
Hopefully not introducing any bugs in the process.
-
- Jan 24, 2021
-
-
Rob Swindell authored
The first argument can now optionally be an array of strings (e.g. as read from File.readAll()), so that multiple searches of the same file (e.g. twitlist.cfg, while importing messages) does not require multiple *reads* of the same file.
-
- Dec 12, 2020
-
-
Rob Swindell authored
New @-codes: GIT_HASH and GIT_BRANCH New JS system properties: git_hash and git_branch
-
- Dec 06, 2020
-
-
Rob Swindell authored
When system.new_user() was called but the current "client" object is uninitialized (e.g. has NULL protocol, host or IP address fields because there is no active client, e.g. because is was called from a timed event with active user online) - this code would dereference a NULL pointer and crash the b0rad. Reported by Mortifis.
-
- Dec 02, 2020
-
-
Rob Swindell authored
-
Rob Swindell authored
Like bbs.text(), except the "system" object is more widely available (e.g. in JSexec, mail server, web server, services) - in case any text.dat strings are useful in those execution environments tool. Requested by mlong. Also cleaned up the argument validation in some of these other system methods (throw useful error exceptions rather than just returning false).
-
- Sep 19, 2020
-
-
Rob Swindell authored
betwen 4 (the default) and 40 (the maximum) characters
-
- Sep 17, 2020
-
-
Rob Swindell authored
- JS system.operator_available property (read/writeable) - SYSAVAIL @-code which expands to LiSysopAvailable or LiSysopNotAvailable (use the new SYSAVAIL @-code in the chat menu to show availabilty to chat) - ;avail sysop command (in str_cmds.js) to toggle sysop availability - Changed LiSysopIs text.dat string to be a format string (include %s) and the trailing \r\n, so that it can be used in str_cmds.js or anywhere else to report sysop availability to chat, or can be set to blank string to display nothing (this would not work previously).
-
- Sep 14, 2020
-
-
Rob Swindell authored
-