Synchronet Git Commit Log

This is a log of the 500 most recent pushes to the master branch of the Synchronet Git repository.
If you want to view more pushes/commits, you can by passing ?<number> in URL.
  1. mcmlxxix
    Fri Mar 21 2025 13:02:41 GMT-0700 (PDT)
    Modified Files:
    

    xtrn/bublbogl/game.js diff
    xtrn/bublbogl/lobby.bin diff
    fix bad formatting decisions from previous update

  2. Deucе
    Fri Mar 21 2025 11:41:23 GMT-0700 (PDT)
    Modified Files:
    

    src/build/Common.gmake diff
    src/xpdev/CMakeLists.txt diff
    It's spelt _POSIX_C_SOURCE Since this doesn't work, we're clearly not relying on it, so remove it. Reported by: jrtc27 via IRC

  3. Rob Swindell (on Debian Linux)
    Thu Mar 20 2025 17:34:17 GMT-0700 (PDT)
    Modified Files:
    

    src/sbbs3/scfglib2.c diff
    strtoattr() now ignores Ctrl-A chars in the string... as attrstr() used to This returns bug-compatibility with attrstr(), at least for Ctrl-A chars, so that if someone is for example, assigning a Ctrl-A sequence to JS console.attributes, that'll work (again) as it did in SBBS v3.19. Any other invalid chars in the string will stop the parsing, still, even though that's not how attrstr() worked. For Kirkman's doorgame/script backward compatibility.

  4. Rob Swindell (on Debian Linux)
    Tue Mar 18 2025 23:20:20 GMT-0700 (PDT)
    Modified Files:
    

    exec/pcboard.src diff
    exec/wildcat.src diff
    Don't display/log an error message if text/menu/logon.* doesn't exist For Wildcat (N)ewsletter command and PCBoard "NEWS" command, display "No news is good news." instead. :-)

  5. Rob Swindell
    Tue Mar 18 2025 16:59:33 GMT-0700 (PDT)
    Modified Files:
    

    xtrn/DDAreaChoosers/DDFileAreaChooser.js diff
    xtrn/DDAreaChoosers/DDMsgAreaChooser.js diff
    xtrn/DDAreaChoosers/readme.txt diff
    xtrn/DDAreaChoosers/version_history.txt diff
    Merge branch 'dd_area_choosers_name_collapsing_arbitrary_levels' into 'master' DD file & message area choosers: Name collapsing now supports an arbitrary number of levels See merge request main/sbbs!520

  6. Eric Oulashin
    Mon Mar 17 2025 18:15:56 GMT-0700 (PDT)
    Modified Files:
    

    xtrn/DDAreaChoosers/DDFileAreaChooser.js diff
    xtrn/DDAreaChoosers/DDMsgAreaChooser.js diff
    xtrn/DDAreaChoosers/readme.txt diff
    xtrn/DDAreaChoosers/version_history.txt diff
    DD file & message area choosers: Name collapsing now supports an arbitrary number of levels

  7. Rob Swindell (on Debian Linux)
    Mon Mar 17 2025 17:27:08 GMT-0700 (PDT)
    Modified Files:
    

    exec/nntpservice.js diff
    Fix issue with being able to read mail base as a newsgroup ... when using the -mail option, which probably no sysop is. Just needed to set the 'can_read' property. As reported via IRC by Accession

  8. Rob Swindell (on Windows 11)
    Sat Mar 15 2025 14:28:59 GMT-0700 (PDT)
    Modified Files:
    

    src/sexpots/sexpots.c diff
    Increase buffer size from 4096 to 10000 in handle_call() Log errors if/when comWriteBuf() fails. This is to hopefully help to root-cause or even possibly resolve the issue reported in #synchronet by PyRoDrAkE: "It all works well until the Dialup connection runs slower than 4800 baud using SexPots. I connect from my XT at either 1200 baud or 2400 baud and it would just stop drawing midway." There shouldn't be any write timeout in comWriteBuf(), so I don't know why this would help, but it's worth a try. Logging any comWriteBuf() errors is also a good idea in general.

  9. Rob Swindell (on Debian Linux)
    Fri Mar 14 2025 21:21:24 GMT-0700 (PDT)
    Modified Files:
    

    src/sbbs3/sbbsecho.c diff
    Add typecast to elminate GCC warning

  10. Rob Swindell (on Windows 11)
    Fri Mar 14 2025 21:18:51 GMT-0700 (PDT)
    Modified Files:
    

    src/sbbs3/sbbsecho.c diff
    Eliminate some unnecessary typecasts and parens

  11. Rob Swindell (on Windows 11)
    Fri Mar 14 2025 21:18:51 GMT-0700 (PDT)
    Modified Files:
    

    src/sbbs3/sbbsecho.h diff
    Increment SBBSecho version to 3.24

  12. Rob Swindell (on Windows 11)
    Fri Mar 14 2025 21:18:51 GMT-0700 (PDT)
    Modified Files:
    

    src/sbbs3/sbbsecho.c diff
    Take the configured origin line chars into account when determining charset and if the message is UTF-8, encode the origin line as UTF-8 too. If the message is straight ASCII (e.g. the sub-board is configured as ASCII only), convert the configured origin line to ASCII, before appending. At this time, only ASCII and CP437 encodings of originlines are supported in Synchronet (imported and exported origin lines can contain UTF-8). This should address the issue raise by Sergey Dorofeev (2:5020/12000) in the FidoNet UTF-8 echo whereby messages exported from Synchronet systems (presumably using SBBSecho) could contain a mixture of CP437 and UTF-8 encodings (!) when the sysop had CP437 chars in their configured origin line.

  13. Rob Swindell (on Debian Linux)
    Thu Mar 13 2025 01:24:18 GMT-0700 (PDT)
    Removed Files:
    

    install/lsm.txt diff
    Get rid of this noise (obsolete Linux Software Map data file) I sent an update ("add" email), but it was rejected with "No LSM entries were found" - whatever that means.

  14. Rob Swindell (on Debian Linux)
    Thu Mar 13 2025 00:15:36 GMT-0700 (PDT)
    Modified Files:
    

    exec/chksetup.js diff
    Perform a Synchronet version check and warn if it's not equal to the latest ... so yeah, most *nix sysops will get a warning about running something newer than the latest release.

  15. Rob Swindell (on Debian Linux)
    Thu Mar 13 2025 00:01:40 GMT-0700 (PDT)
    Modified Files:
    

    install/sbbs.json diff
    Shorten the by-line to make warnings (by chksetup) more readable

  16. Rob Swindell (on Debian Linux)
    Wed Mar 12 2025 23:57:42 GMT-0700 (PDT)
    Modified Files:
    

    install/sbbs.json diff
    Missed a comma and a quote

  17. Rob Swindell (on Debian Linux)
    Wed Mar 12 2025 23:27:02 GMT-0700 (PDT)
    Added Files:
    

    install/sbbs.json diff
    Synchronet BBS release details ... for a version number comparison (e.g. by chksetup.js)

  18. Rob Swindell (on Debian Linux)
    Wed Mar 12 2025 22:46:50 GMT-0700 (PDT)
    Modified Files:
    

    install/lsm.txt diff
    Updated (why?) This file hasn't been updated in 20 years and nobody noticed. :-) I at least made a new submission (sent email) one last time before we (might) just remove this file since the the LSM database doesn't appear to be of any real use/value these days.

  19. Rob Swindell (on Debian Linux)
    Wed Mar 12 2025 14:56:41 GMT-0700 (PDT)
    Modified Files:
    

    xtrn/tw2/input.js diff
    Clear the aborted flag on input This fixes the bug whereby if the user ever hit Ctrl-C or hit 'N' at a pause prompt, they could never see another menu / display file.

  20. Rob Swindell (on Debian Linux)
    Tue Mar 11 2025 17:18:18 GMT-0700 (PDT)
    Modified Files:
    

    exec/load/sbbslist_html.js diff
    Change link to syncterm.lst file from ftp to http URL

  21. Rob Swindell (on Debian Linux)
    Tue Mar 11 2025 17:18:18 GMT-0700 (PDT)
    Modified Files:
    

    exec/load/presence_lib.js diff
    Fix cosmetic issue with Logging-out node vstatus display (NodeStatusLogout) When displaying this node vstatus, the user's alias shouldn't be appended to the node status, else you get something like this: 16 Logging out Digital ManDigital Man

  22. Rob Swindell (on macOS)
    Sun Mar 09 2025 22:57:11 GMT-0700 (PDT)
    Modified Files:
    

    src/sbbs3/scfglib1.c diff
    Better config (.ini) file read error detection and reporting It was possibly before for fgets() failures to be pretty hard to diagnose.

  23. Rob Swindell (on macOS)
    Sun Mar 09 2025 22:57:11 GMT-0700 (PDT)
    Modified Files:
    

    src/sbbs3/load_cfg.c diff
    Don't try to load node.ini if no nodes are configured in main.ini But set the error string to hopefully be printed as a warning

  24. Rob Swindell (on macOS)
    Sun Mar 09 2025 22:57:11 GMT-0700 (PDT)
    Modified Files:
    

    src/sbbs3/services.c diff
    Don't clear the 'terminated' flag after binding sockets A sysop could hit 'q' to quit (sbbs, console mode) while the binding is taking place.

  25. Deucе
    Sun Mar 09 2025 07:19:51 GMT-0700 (PDT)
    Modified Files:
    

    src/syncterm/ssh.c diff
    Call ssh_close() on failure after ssh_session is initialized Fixes assertion on failed connects.

  26. Deucе
    Sun Mar 09 2025 06:49:51 GMT-0700 (PDT)
    Modified Files:
    

    src/sbbs3/ssl.c diff
    Incremental backoff on loading SSL cert Try for 16 seconds (14 loops) to load the SSL certificate. On the first time through the loop, create self-signed certificate if configured to do so. This also splits the generation of the self-signed certificate into a separate function. While we're here, split the new SSL epoch out into a separate function as well, and explicitly call it when we create a new self-signed cert. This at least partially fixes the epoch thing, but there's still the possibility of creating it multiple times in the same second... the file date isn't really enough.

  27. Rob Swindell (on Windows 11)
    Sat Mar 08 2025 21:48:50 GMT-0800 (PDT)
    Modified Files:
    

    src/sbbs3/chat.cpp diff
    src/sbbs3/logfile.cpp diff
    src/sbbs3/logfile.h diff
    src/sbbs3/main.cpp diff
    src/sbbs3/xtrn_sec.cpp diff
    Not all uses of fopenlog() should open the file O_DENYNONE For quick open/write/close log files (e.g. error.log), go back to using nopen() to insure exclusive access while writing to prevent any accidental corruption from concurrent writes from multiple threads or processes.

  28. Rob Swindell (on Windows 11)
    Sat Mar 08 2025 21:47:55 GMT-0800 (PDT)
    Modified Files:
    

    src/sbbs3/sbbs.jsdocs.vcxproj diff
    Updated to match the latest sbbs.vcxproj

  29. Rob Swindell (on Windows 11)
    Sat Mar 08 2025 21:26:33 GMT-0800 (PDT)
    Modified Files:
    

    src/sbbs3/scfg/scfgsys.c diff
    src/sbbs3/scfgdefs.h diff
    src/sbbs3/scfglib1.c diff
    src/sbbs3/scfgsave.c diff
    src/sbbs3/ssl.c diff
    Add/use option: SCFG->System->Security->Create Self-signed Certificate Default to false / No. Maybe this should default to true / Yes until a certificate (e.g. from Let's Encrypt) is successfully provisioned? Anyway, this is just a quick-hack to address the issue where a sysop's CA-sigend certificate may be overwritten with a self-signed certificate if for some reason Synchronet can't find/read the ssl.cert file. See issue #881.

  30. Rob Swindell (on Windows 11)
    Sat Mar 08 2025 20:47:37 GMT-0800 (PDT)
    Modified Files:
    

    3rdp/win32.release/cryptlib/bin/cl32.dll diff
    3rdp/win32.release/cryptlib/bin/cl32.lib diff
    3rdp/win32.release/cryptlib/include/cryptlib.h diff
    Latest patched cryptlib for Win32 - fixes issue #882

  31. Rob Swindell (on Windows 11)
    Sat Mar 08 2025 20:41:14 GMT-0800 (PDT)
    Modified Files:
    

    src/xpdev/str_list.c diff
    Detect failure (e.g. realloc failure) in strListReadFile->strListAppend()

  32. Deucе
    Sat Mar 08 2025 20:15:20 GMT-0800 (PDT)
    Added Files:
    

    3rdp/build/cl-winapi-needed.patch diff
    Modified Files:

    3rdp/build/CMakeLists-cl.txt diff
    3rdp/build/CMakeLists.txt diff
    3rdp/build/GNUmakefile diff
    Patch to fix issue #882 Missing WINAPI decoration on function loaded from DLL. When called, this would corrupt the parameters to callers, presumably because the register allocater didn't know the call would tromp on something.

  33. Deucе
    Sat Mar 08 2025 19:42:56 GMT-0800 (PDT)
    Modified Files:
    

    3rdp/build/GNUmakefile diff
    Removed Files:

    3rdp/build/cl-enbiggen-acls.patch diff
    Revert "Add a new experimental patch for keyset crash." This reverts commit 219e685852471a2c0aba95d5267a038538e10c02.

  34. Deucе
    Sat Mar 08 2025 19:42:55 GMT-0800 (PDT)
    Modified Files:
    

    3rdp/build/GNUmakefile diff
    Revert "Fix path to new patch" This reverts commit 4f2886fce0041765538d3c099a706bffb6f4696e.

  35. Rob Swindell (on Debian Linux)
    Sat Mar 08 2025 18:17:23 GMT-0800 (PDT)
    Modified Files:
    

    ctrl/file.ini diff
    Mark zip and unzip testable file commands as "Native" This should be redundant since "zip" and "unzip" should already be in the native program list, but at some point we should be able to get rid of the native program list or at least have it default to blank.

  36. Deucе
    Sat Mar 08 2025 09:16:05 GMT-0800 (PST)
    Modified Files:
    

    3rdp/build/GNUmakefile diff
    Fix path to new patch

  37. Deucе
    Sat Mar 08 2025 08:49:19 GMT-0800 (PST)
    Added Files:
    

    3rdp/build/cl-enbiggen-acls.patch diff
    Modified Files:

    3rdp/build/GNUmakefile diff
    Add a new experimental patch for keyset crash. Cryptlib uses the NT 3.1 API for ACLs, which means hard-codeding certain security structure sizes. Quadruple the sizes of these to see if this fixes the crash DigitalMan is seeing.

  38. Rob Swindell (on Windows 11)
    Fri Mar 07 2025 20:05:12 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/atcodes.cpp diff
    Add MSGS @-code - total messages in current sub-board Unlike SMB_MSGS, the sub-board does not have to be already open. As requested/reported by Finglonger (SILENT)

  39. Deucе
    Fri Mar 07 2025 17:31:57 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/ssl.c diff
    Fix failure handing in crypt initialization. Don't add the atexit() do_cryptEnd() handler until we're not going to call cryptEnd() ourselves.

  40. Rob Swindell (on Debian Linux)
    Fri Mar 07 2025 17:17:55 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci.yml diff
    We want the install test to start right away, not way for all builds <@Deuce> If you want the install test to start immediately, you would use needs: []

  41. Rob Swindell (on Debian Linux)
    Fri Mar 07 2025 17:13:52 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci.yml diff
    Use 'needs' instead of 'dependencies' for smoketests so they can run sooner in the pipeline

  42. Rob Swindell (on Debian Linux)
    Fri Mar 07 2025 17:06:24 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci.yml diff
    linux install test is standalone (doesn't require a successful build first)

  43. Deucе
    Fri Mar 07 2025 16:05:36 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_cryptkeyset.c diff
    Set p->ks to CRYPT_UNUSED after successful cryptKeysetClose() Possibly should be done after a failure too...

  44. Rob Swindell
    Fri Mar 07 2025 12:33:27 GMT-0800 (PST)
    Modified Files:
    

    xtrn/ddfilelister/ddfilelister.js diff
    xtrn/ddfilelister/ddfl_cfg.js diff
    xtrn/ddfilelister/readme.txt diff
    xtrn/ddfilelister/revision_history.txt diff
    Merge branch 'dd_file_lister_edit_extd_desc_when_none_fix' into 'master' DDFileLister: Fix for editing a file's extended description when the file doesn't have one initially See merge request main/sbbs!519

  45. Eric Oulashin
    Fri Mar 07 2025 12:33:27 GMT-0800 (PST)
    Modified Files:
    

    xtrn/ddfilelister/ddfilelister.js diff
    xtrn/ddfilelister/ddfl_cfg.js diff
    xtrn/ddfilelister/readme.txt diff
    xtrn/ddfilelister/revision_history.txt diff
    DDFileLister: Fix for editing a file's extended description when the file doesn't have one initially

  46. Deucе
    Fri Mar 07 2025 08:25:42 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/uedit/uedit.c diff
    Use WIN_ATEXIT at exit. Also, fix some formatting.

  47. Rob Swindell (on Debian Linux)
    Thu Mar 06 2025 16:31:46 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/mqtt.c diff
    src/sbbs3/mqtt.h diff
    Don't publish to the initial server topics (e.g. version) until after connect Fix for issue #884 We must wait until the connect_callback() has been called to publish these messages. Using mqtt.server_version as the indicator of an initial startup connection versus a re-connection (due to broker-connection loss), i.e. setting to NULL after initial connection.

  48. Rob Swindell (on Debian Linux)
    Thu Mar 06 2025 12:49:46 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/ssl.c diff
    Log a (notice-level) message when creating a self-signed cert

  49. Rob Swindell
    Thu Mar 06 2025 09:51:20 GMT-0800 (PST)
    Added Files:
    

    xtrn/mrc/mrc-help-main.msg diff
    xtrn/mrc/mrc-help-nick.msg diff
    xtrn/mrc/mrc-help-theme.msg diff
    xtrn/mrc/mrc-help-twit.msg diff
    xtrn/mrc/mrc-splash.msg diff
    Modified Files:

    xtrn/mrc/mrc-client.example.ini diff
    xtrn/mrc/mrc-client.js diff
    xtrn/mrc/mrc-connector.js diff
    xtrn/mrc/mrc-session.js diff
    xtrn/mrc/readme.txt diff
    Merge branch 'massive-mrc-update-20250303' into 'master' MRC Change List on 3/3/2025: See merge request main/sbbs!517

  50. Craig Hendricks
    Thu Mar 06 2025 09:51:20 GMT-0800 (PST)
    Added Files:
    

    xtrn/mrc/mrc-help-main.msg diff
    xtrn/mrc/mrc-help-nick.msg diff
    xtrn/mrc/mrc-help-theme.msg diff
    xtrn/mrc/mrc-help-twit.msg diff
    xtrn/mrc/mrc-splash.msg diff
    Modified Files:

    xtrn/mrc/mrc-client.example.ini diff
    xtrn/mrc/mrc-client.js diff
    xtrn/mrc/mrc-connector.js diff
    xtrn/mrc/mrc-session.js diff
    xtrn/mrc/readme.txt diff
    MRC Change List on 3/3/2025:

  51. Deucе
    Wed Mar 05 2025 15:30:43 GMT-0800 (PST)
    Modified Files:
    

    exec/load/portdefs.js diff
    Fix typo.

  52. Deucе
    Wed Mar 05 2025 12:02:52 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/crypt/cryptkeyset.js diff
    Looks like gitlab doesn't have write access to system.temp_dir Just write to whatever dir, maybe that'll work.

  53. Deucе
    Wed Mar 05 2025 11:55:04 GMT-0800 (PST)
    Added Files:
    

    exec/tests/crypt/cryptkeyset.js diff
    Add a cryptkeyset test I expect this to crash on Windows...

  54. Deucе
    Wed Mar 05 2025 11:36:00 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/ssl.c diff
    assert() pthread_mutex assumptions in ssl.c

  55. Deucе
    Wed Mar 05 2025 11:30:36 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/ssl.c diff
    Don't set cryptlib_initialized = true until the init is complete is_crypt_initialized() does not depend on the once value.

  56. Rob Swindell
    Wed Mar 05 2025 11:07:02 GMT-0800 (PST)
    Modified Files:
    

    exec/load/dd_lightbar_menu.js diff
    Merge branch 'dd_lightbar_menu_non_ansi_input_update' into 'master' DDLightbarMenu: AdditionalQuitKeys now are honored in traditional (non-lightbar) mode, and there's a new menu property, nonANSIPromptText, which allows customization of the prompt text when in traditional/non-ANSI mode. See merge request main/sbbs!518

  57. Eric Oulashin
    Wed Mar 05 2025 11:07:02 GMT-0800 (PST)
    Modified Files:
    

    exec/load/dd_lightbar_menu.js diff
    DDLightbarMenu: AdditionalQuitKeys now are honored in traditional (non-lightbar) mode, and there's a new menu property, nonANSIPromptText, which allows customization of the prompt text when in traditional/non-ANSI mode.

  58. Deucе
    Wed Mar 05 2025 10:59:08 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci-unix.yml diff
    Don't cache spidermonkey configure results Appears to break builds sometimes.

  59. Deucе
    Wed Mar 05 2025 09:30:33 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    src/syncterm/CHANGES diff
    Document changes, bump CTerm revision

  60. Deucе
    Tue Mar 04 2025 19:44:14 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    src/conio/cterm.h diff
    Allow NUL in Stari ST VT-52 sequences. It seems at least some Atari ST VT-52 implementations do.

  61. Rob Swindell (on Windows 11)
    Tue Mar 04 2025 00:40:27 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/sbbsdefs.h diff
    Bump rev to E (i.e. v3.20e)

  62. Rob Swindell (on Windows 11)
    Tue Mar 04 2025 00:39:57 GMT-0800 (PST)
    Modified Files:
    

    docs/v320_new.txt diff
    Fix typo

  63. Rob Swindell (on Windows 11)
    Tue Mar 04 2025 00:37:45 GMT-0800 (PST)
    Modified Files:
    

    docs/jsobjs.html diff
    Regenerated doc for v3.20d Copied from https://nix.synchro.net/jsobjs.html since jsdocs.js is crashing for me (on Windows) in js_cryptkeyset_constructor() -> cryptlib

  64. Rob Swindell (on Windows 11)
    Mon Mar 03 2025 22:14:34 GMT-0800 (PST)
    Modified Files:
    

    install/FILE_ID.DIZ diff
    Updated for v3.20d

  65. Rob Swindell (on Windows 11)
    Mon Mar 03 2025 20:17:28 GMT-0800 (PST)
    Modified Files:
    

    ctrl/services.ini diff
    Disable ircd by default The ircd keeps services from auto-recycling upon request while there's an outbound connection (e.g. to vert).

  66. Rob Swindell (on Windows 11)
    Mon Mar 03 2025 20:16:48 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/services.c diff
    Fix restart of services after a stop Bug introduced in commit 88e8688baac4a83830fdd06509af4b940a65eccf

  67. Rob Swindell (on Windows 11)
    Mon Mar 03 2025 19:29:36 GMT-0800 (PST)
    Modified Files:
    

    exec/load/text.js diff
    Fix TOTAL_TEXT value

  68. Rob Swindell (on Windows 11)
    Mon Mar 03 2025 19:27:10 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/sbbsdefs.h diff
    Increment version to v3.20d

  69. Rob Swindell (on Windows 11)
    Mon Mar 03 2025 19:17:16 GMT-0800 (PST)
    Modified Files:
    

    docs/v320_new.txt diff
    More changes in v3.20d documented

  70. Rob Swindell (on Windows 11)
    Mon Mar 03 2025 19:15:35 GMT-0800 (PST)
    Modified Files:
    

    ctrl/services.ini diff
    Add NO_USER_PROT in comments, enable by default for IMAP[S} services

  71. Rob Swindell (on Windows 11)
    Mon Mar 03 2025 18:23:15 GMT-0800 (PST)
    Modified Files:
    

    docs/install.rtf diff
    Update to v3.20d Windows Vista (and Windows Server 2008) are now the minimum versions supported.

  72. Rob Swindell (on Windows 11)
    Mon Mar 03 2025 18:22:14 GMT-0800 (PST)
    Modified Files:
    

    install/install.iss diff
    Bump version to 3.20.3 (v3.20d) Make Windows 6.0 (Vista) the minimum version for install.

  73. Rob Swindell
    Mon Mar 03 2025 18:19:34 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/ctrl/sbbsctrl.res diff
    Built again with C++Builder IDE Apparently, the IDE loads the .res file and then updates the .bpr file. So we can't just update values in the .bpr and expect them to propagate to a rebuilt .res file. I'm sure I've learned this lesson before and forgotten it. Perhaps multiple times now.

  74. Rob Swindell
    Mon Mar 03 2025 18:10:34 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/ctrl/sbbsctrl.res diff
    Rebuilt with C++Buidler IDE

  75. Rob Swindell (on Windows 11)
    Mon Mar 03 2025 18:06:43 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/readmsgs.cpp diff
    Update data/user/*.ini section name for storing recent save path for msg sub

  76. Rob Swindell (on Windows 11)
    Mon Mar 03 2025 18:06:43 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/ctrl/sbbsctrl.bpr diff
    Increment version to 3.20.3.0 (v3.20d)

  77. Rob Swindell (on Windows 11)
    Mon Mar 03 2025 18:06:43 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/atcodes.cpp diff
    Add "AT" @-code to enable easier output of literal @-codes without expansion Deuce's suggestion

  78. Deucе
    Mon Mar 03 2025 16:24:10 GMT-0800 (PST)
    Modified Files:
    

    exec/textedit.js diff
    Remove cleartoeos() hack It's in JS now.

  79. Deucе
    Mon Mar 03 2025 16:20:44 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    Fix Mode7 APS handling The code is 0x1C, not 0x1E, and it's row then column.

  80. Deucе
    Mon Mar 03 2025 15:30:07 GMT-0800 (PST)
    Modified Files:
    

    exec/textedit.js diff
    Load saved textedit.ini at start.

  81. Deucе
    Mon Mar 03 2025 15:21:10 GMT-0800 (PST)
    Modified Files:
    

    exec/textedit.js diff
    Add CTRL-S to "save" This simply writes changed values to ctrl/textedit.ini, you can copy these into the appropriate text.ini or text.dat. I haven't dug in to see if text.dat has different encoding than ini or anything, and I think that if you want to use this to build a full text.dat, you would want to do it a bit at a time, so a follow- on utility to convert text.ini to text.dat is likely the easiest way to do this stuff.

  82. Deucе
    Mon Mar 03 2025 14:28:20 GMT-0800 (PST)
    Modified Files:
    

    exec/load/syncterm_cache.js diff
    Differentiate between nothing and NUL Not sure why I need to... this may be some terminal-abstraction thing.

  83. Deucе
    Mon Mar 03 2025 14:13:08 GMT-0800 (PST)
    Modified Files:
    

    exec/textedit.js diff
    Ah, here's the point the P_NOATCODES can be removed. That was quick!

  84. Rob Swindell (on Windows 11)
    Mon Mar 03 2025 14:06:54 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/con_out.cpp diff
    Remove broken security check for text.dat strings w/@-codes in bputs() As Deuce pointed out, the text[] pointers are malloc()'d so they're not necessarily sequential/in-order addresses. Definitely not after any text replacements have been made.

  85. Deucе
    Mon Mar 03 2025 13:59:27 GMT-0800 (PST)
    Modified Files:
    

    exec/textedit.js diff
    Always pass P_NOATCODES when calling print() This is to work around an issue when fiddling with text data, and will likely be able to be removed at some point.

  86. Deucе
    Mon Mar 03 2025 13:10:38 GMT-0800 (PST)
    Modified Files:
    

    exec/textedit.js diff
    Don't subtract one from TOTAL_TEXT anymore

  87. Deucе
    Mon Mar 03 2025 13:07:31 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/textgen.c diff
    Fix off-by-one in load/text.js TOTAL_TEXT value i is incremented after reading the last entry, making this value incorrect.

  88. Deucе
    Mon Mar 03 2025 11:59:00 GMT-0800 (PST)
    Modified Files:
    

    exec/textedit.js diff
    Actually allow editing (and some other fixes) Home/End move the the expected place. CTRL-Q now quits, not Q CTRL-R "runs" a message (ie: doesn't abort) useful for @EXEC:noyesbar@ CTRL-Z undoes all changes (reloads text.dat value) CTRL-V allows entering a hex value ^ allows entering a CTRL-code \ allows an escape character

  89. Deucе
    Mon Mar 03 2025 09:57:45 GMT-0800 (PST)
    Modified Files:
    

    exec/textedit.js diff
    Some more mnemonics() and do theoretical 40-col support

  90. Deucе
    Mon Mar 03 2025 09:25:02 GMT-0800 (PST)
    Modified Files:
    

    exec/textedit.js diff
    FileInfoEditPrompt uses mnemonics() as well.

  91. Deucе
    Mon Mar 03 2025 09:16:53 GMT-0800 (PST)
    Modified Files:
    

    exec/textedit.js diff
    Add example args for MsgAttr as well. Nicer example than MsgSubj IMO.

  92. Deucе
    Mon Mar 03 2025 09:07:09 GMT-0800 (PST)
    Added Files:
    

    exec/textedit.js diff
    Start of a text.dat editor Right now it's just a text.dat browser, but it's already somewhat useful, so I'm comitting it. Up/Down = Change entry CTRL-G = Go to entry by number PageUp/PageDown = Change output method (putmsg, mnemonics, print) Q = Quit Left/Right = Move the cursor around in the source text This must be ran from the terminal server, it's really not reasonable to do a text.dat editor as stand-alone.

  93. Deucе
    Sun Mar 02 2025 20:44:06 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_console.cpp diff
    Add console.cleartoeos() method

  94. Deucе
    Sun Mar 02 2025 16:41:37 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/syncterm.c diff
    src/syncterm/term.c diff
    Fix the palette hack a bit This actually adjusts the palette values used by the CTerm shadow palette. This allows the palette to work properly without the weird offset thing. Unfortunately, this means a cterm_reset() will not use the new values, and since term.c doesn't know when cterm_reset() has been called, we can't fix it afterward anymore without being very invasive and double-checking after every cterm_write() call. This is fine for the indended audience however (ie: Atari ST emulation) since they don't have a reset sequence.

  95. Rob Swindell (on Windows 11)
    Sat Mar 01 2025 19:27:10 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/readmsgs.cpp diff
    Save/reuse path where messages are saved (per sub-board) to data/user/*.ini This is a sysop time saver when saving multiple posts to a local text file (using the Operator->Save message text command). This is pretty much a copy/paste from readmail.cpp, but uses a different .ini section name.

  96. Deucе
    Sat Mar 01 2025 17:12:29 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/scfg/scfgxfr2.c diff
    Stop counting dupes for no reason. While dupes were counted, nothing was done with the count, so just delete it. Fixes Clang warning.

  97. Deucе
    Sat Mar 01 2025 17:06:58 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/bbslist.c diff
    src/syncterm/bbslist.h diff
    src/syncterm/syncterm.c diff
    Allow specifying a palette in a list entry. A palette must be decimal integers separated by commas. The integer represents the RRGGBB value (8-bits per channel) of the desired colour. Someday I'll do a proper picker here, but not for 1.x

  98. Rob Swindell (on Debian Linux)
    Sat Mar 01 2025 15:49:46 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci.yml diff
    Rename some of the tests to conform to the pattern

  99. Deucе
    Sat Mar 01 2025 15:44:15 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/term.c diff
    Pass all control keys through to remote in Beeb mode Implements feature request #104

  100. Rob Swindell (on Debian Linux)
    Sat Mar 01 2025 15:30:35 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci.yml diff
    Trigger CI on any *.mk file change

  101. Rob Swindell (on Debian Linux)
    Sat Mar 01 2025 15:30:35 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci.yml diff
    Add an install-linux CI job

  102. Rob Swindell (on Debian Linux)
    Sat Mar 01 2025 15:30:35 GMT-0800 (PST)
    Modified Files:
    

    install/install-sbbs.mk diff
    Update comments to be more clear how to set boolean variables (e.g. =1)

  103. Rob Swindell
    Sat Mar 01 2025 15:10:29 GMT-0800 (PST)
    Modified Files:
    

    exec/load/dd_lightbar_menu.js diff
    Merge branch 'dd_lightbar_menu_numbered_mode_substr_1_longer' into 'master' DDLightbarMenu: For numbered mode (no lightbar), allow 1 mor character when using substr with the item text See merge request main/sbbs!516

  104. Eric Oulashin
    Sat Mar 01 2025 13:15:01 GMT-0800 (PST)
    Modified Files:
    

    exec/load/dd_lightbar_menu.js diff
    DDLightbarMenu: For numbered mode (no lightbar), allow 1 mor character when using substr with the item text

  105. Rob Swindell (on Debian Linux)
    Sat Mar 01 2025 15:07:31 GMT-0800 (PST)
    Modified Files:
    

    install/install-sbbs.mk diff
    Remove references to addfiles, delfiles, and filelist These were all deprecated with v3.19 (replaced with JS modules) and their C source files and build instructions recently removed from the repo. Reported by MarisaG (thank you!)

  106. Rob Swindell (on Debian Linux)
    Sat Mar 01 2025 15:03:35 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/xtrn.cpp diff
    Remove lprintf() call from child process of fork() call on *nix the info-level debug message "Detaching external process"... as this appears to be the cause of background events hanging sometimes, on Linux (at least).

  107. Rob Swindell (on Debian Linux)
    Sat Mar 01 2025 15:00:13 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/ftpsrvr.c diff
    Lower severity of repeated log messages about low disk space "!Insufficient free disk space (%s bytes) to allow upload"

  108. Rob Swindell (on Windows 11)
    Sat Mar 01 2025 14:59:32 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/un_qwk.cpp diff
    Include QWKnet hub-id in "Imported" message statistics ... for Codefenix's mod that'll parse events*.log for QWKnet statistics.

  109. Rob Swindell (on Windows 11)
    Sat Mar 01 2025 14:59:32 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/ctrl/MainFormUnit.cpp diff
    src/sbbs3/ctrl/MainFormUnit.h diff
    src/sbbs3/ctrl/TelnetCfgDlgUnit.cpp diff
    src/sbbs3/ctrl/TelnetCfgDlgUnit.dfm diff
    src/sbbs3/logfile.cpp diff
    src/sbbs3/logfile.h diff
    src/sbbs3/main.cpp diff
    Create data/events*.log file for all platforms and monitoring modes Previously, data/events*.log was only created by sbbsctrl-Win32 The file is referred to as "events*.log" because if the first terminal server node number is > 1, then that first node number will be prepended to the base filename. Also, rolled-over logs and renamed to *.0.log, *.1.log, etc. up to the configured maximum before being deleted. This change eliminates the repeated log line dedupe feature for that file (e.g. the "[x2]" indicator). Also, the "Log Eventsto Disk" option is now removed from the sbbsctrl->Terminal Server->Configure dialog. Also, fopenlog() now opens log files non-locked (deny-none), so that the files can be viewed (e.g. with 'grep' or 'tail -f') while they're open and being written to. There isn't a concurrent write problem for events*.log but there may be for other log file openes by fopenlog() - so that should be investigated. ... for Codefenix's mod that'll parse events*.log for QWKnet statistics.

  110. Rob Swindell (on Windows 11)
    Sat Mar 01 2025 14:59:31 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/exec.cpp diff
    src/sbbs3/sbbs.h diff
    sbbs_t::nodefile_fp and node_ext_fp aren't used for anything in sbbs v3 Get rid of this noise.

  111. Deucе
    Sat Mar 01 2025 10:53:25 GMT-0800 (PST)
    Modified Files:
    

    exec/syncterm-bounce.js diff
    Ensure that ANSI is available

  112. Rob Swindell
    Fri Feb 28 2025 14:20:56 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/ctrl/sbbsctrl.bpr diff
    Define LINK_LIST_THREADSAFE so sbbsctrl doesn't crash in ntdll.dll Regression introduced in commit cf992d8ad1 sbbs.h defines this macro and now that we're not #including it in ctrl/*.cpp, we need it define in the project file. Fixes issue reported by BrokenMind

  113. Rob Swindell
    Thu Feb 27 2025 23:25:20 GMT-0800 (PST)
    Added Files:
    

    xtrn/ddfilelister/ddfl_cfg.js diff
    Modified Files:

    xtrn/ddfilelister/readme.txt diff
    Merge branch 'dd_file_lister_configurator' into 'master' DDFileLister: Configurator (new): ddfl_cfg.js - To be run using jsexec See merge request main/sbbs!515

  114. Eric Oulashin
    Thu Feb 27 2025 23:25:20 GMT-0800 (PST)
    Added Files:
    

    xtrn/ddfilelister/ddfl_cfg.js diff
    Modified Files:

    xtrn/ddfilelister/readme.txt diff
    DDFileLister: Configurator (new): ddfl_cfg.js - To be run using jsexec

  115. Rob Swindell
    Thu Feb 27 2025 17:52:19 GMT-0800 (PST)
    Modified Files:
    

    xtrn/ddfilelister/ddfilelister.js diff
    xtrn/ddfilelister/revision_history.txt diff
    Merge branch 'dd_file_lister_traditional_UI_extd_desc_ansi_improvement' into 'master' DDFileLister: Improvement for the traditional (non-lightbar) user itnerface when displaying extended descriptions with ANSI codes See merge request main/sbbs!514

  116. Eric Oulashin
    Thu Feb 27 2025 17:45:32 GMT-0800 (PST)
    Modified Files:
    

    xtrn/ddfilelister/ddfilelister.js diff
    xtrn/ddfilelister/revision_history.txt diff
    DDFileLister: Improvement for the traditional (non-lightbar) user itnerface when displaying extended descriptions with ANSI codes

  117. Rob Swindell
    Thu Feb 27 2025 14:59:09 GMT-0800 (PST)
    Modified Files:
    

    xtrn/ddfilelister/ddfilelister.js diff
    xtrn/ddfilelister/readme.txt diff
    xtrn/ddfilelister/revision_history.txt diff
    Merge branch 'dd_file_lister_settings_refactor' into 'master' DDFileLister: Refactored the way the settings & colors are structured in the code. No functional change. See merge request main/sbbs!513

  118. Eric Oulashin
    Thu Feb 27 2025 10:47:04 GMT-0800 (PST)
    Modified Files:
    

    xtrn/ddfilelister/ddfilelister.js diff
    xtrn/ddfilelister/readme.txt diff
    xtrn/ddfilelister/revision_history.txt diff
    DDFileLister: Refactored the way the settings & colors are structured in the code. No functional change.

  119. Rob Swindell (on Debian Linux)
    Wed Feb 26 2025 19:00:10 GMT-0800 (PST)
    Modified Files:
    

    exec/str_cmds.js diff
    src/sbbs3/writemsg.cpp diff
    Support per-sub-board user signature (.sig files) This feature was long overdue. And "SIG" command to view, create or edit default signature (same function as available from user_settings.js, in fact a copy/pasted the code). Add "SUBSIG" command to view, create, or edit sub-board signture (no other method is available to this other than direct file system access, e.g. by the sysop).

  120. Rob Swindell
    Tue Feb 25 2025 20:22:34 GMT-0800 (PST)
    Modified Files:
    

    xtrn/ddfilelister/ddfilelister.cfg diff
    xtrn/ddfilelister/ddfilelister.js diff
    xtrn/ddfilelister/readme.txt diff
    xtrn/ddfilelister/revision_history.txt diff
    Merge branch 'dd_file_lister_extd_desc_filename_behavior' into 'master' DDFileLister filename behavior for extended descriptions See merge request main/sbbs!512

  121. Eric Oulashin
    Tue Feb 25 2025 20:22:34 GMT-0800 (PST)
    Modified Files:
    

    xtrn/ddfilelister/ddfilelister.cfg diff
    xtrn/ddfilelister/ddfilelister.js diff
    xtrn/ddfilelister/readme.txt diff
    xtrn/ddfilelister/revision_history.txt diff
    DDFileLister filename behavior for extended descriptions

  122. Rob Swindell
    Tue Feb 25 2025 18:39:49 GMT-0800 (PST)
    Modified Files:
    

    xtrn/ddfilelister/ddfilelister.js diff
    xtrn/ddfilelister/readme.txt diff
    xtrn/ddfilelister/revision_history.txt diff
    Merge branch 'dd_file_lister_long_filename_in_desc_color_fix' into 'master' DDFileLister: Fix for color usage when a long filename is used in the description for some edge cases See merge request main/sbbs!509

  123. Eric Oulashin
    Tue Feb 25 2025 09:35:55 GMT-0800 (PST)
    Modified Files:
    

    xtrn/ddfilelister/ddfilelister.js diff
    xtrn/ddfilelister/readme.txt diff
    xtrn/ddfilelister/revision_history.txt diff
    DDFileLister: Fix for color usage when a long filename is used in the description for some edge cases

  124. Deucе
    Tue Feb 25 2025 07:23:54 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    SGR has at least one (defaulted) parameter

  125. Deucе
    Tue Feb 25 2025 07:21:47 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    CSI < c only takes one manditory argument with default Fixes bug introduced in cc07b354 where the command without any parameters would not return anything.

  126. Deucе
    Tue Feb 25 2025 07:17:16 GMT-0800 (PST)
    Modified Files:
    

    exec/syncterm-bounce.js diff
    Add a timeout to checking if pixels work For when I break SyncTERM.

  127. Rob Swindell (on Windows 11)
    Mon Feb 24 2025 23:42:22 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/sbbsecho.c diff
    Only log one warning per invocation about inability to auto-add sub Just the first sub that couldn't be auto-added.

  128. Deucе
    Mon Feb 24 2025 20:27:00 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/term.c diff
    Set up CP437 mode before zmodem auto up/download Fixes use of system font during up/downloads when auto-started. Ticket 194

  129. Rob Swindell
    Mon Feb 24 2025 11:26:36 GMT-0800 (PST)
    Modified Files:
    

    xtrn/ddfilelister/ddfilelister.js diff
    xtrn/ddfilelister/defaultTheme.cfg diff
    xtrn/ddfilelister/readme.txt diff
    xtrn/ddfilelister/revision_history.txt diff
    Merge branch 'dd_file_lister_filename_color_in_desc_and_refactor' into 'master' DDFileLister: New color option (filenameInDesc) for the color of the full filename when used in the description. Also, a refactor of the extended description toggle mechanism See merge request main/sbbs!507

  130. Eric Oulashin
    Sun Feb 23 2025 14:53:17 GMT-0800 (PST)
    Modified Files:
    

    xtrn/ddfilelister/ddfilelister.js diff
    DDFileLister: Refactored the implementation of toggling extended descriptions

  131. Eric Oulashin
    Sat Feb 22 2025 21:14:19 GMT-0800 (PST)
    Modified Files:
    

    xtrn/ddfilelister/ddfilelister.js diff
    xtrn/ddfilelister/defaultTheme.cfg diff
    xtrn/ddfilelister/readme.txt diff
    xtrn/ddfilelister/revision_history.txt diff
    DDFileLister: New color option for the filename when used in the description: filenameInDesc

  132. Deucе
    Mon Feb 24 2025 09:51:29 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    Fix defaults for variable length sequences Only SGR was impacted, but this explicitly sets the rest of the defaults to zero. Closes ticket 193.

  133. Deucе
    Mon Feb 24 2025 09:10:43 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/bbslist.c diff
    Fix crash when copying entry Resolves ticket 195

  134. Rob Swindell (on Windows 11)
    Mon Feb 24 2025 00:42:20 GMT-0800 (PST)
    Added Files:
    

    src/sbbs3/logfile.h diff
    Modified Files:

    src/sbbs3/ctrl/ConfigWizardUnit.cpp diff
    src/sbbs3/ctrl/ConfigWizardUnit.h diff
    src/sbbs3/ctrl/LoginAttemptsFormUnit.cpp diff
    src/sbbs3/ctrl/MainFormUnit.cpp diff
    src/sbbs3/ctrl/NodeFormUnit.cpp diff
    src/sbbs3/ctrl/UserListFormUnit.cpp diff
    src/sbbs3/sbbs.h diff
    ctrl/*.cpp no longer needs to #include sbbs.h Just needed to move the C-exported functions from logfile.cpp into their own header file (logfile.h) and #include-what-we-use in ctrl/*.cpp This should reduce the Borland C++ impact on sbbs.h and any files it includes.

  135. Rob Swindell (on Windows 11)
    Sun Feb 23 2025 20:30:55 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/sbbsecho.c diff
    Address some MSVC static analysis warnings

  136. Rob Swindell (on Windows 11)
    Sun Feb 23 2025 16:24:04 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/sbbsecho.c diff
    Log warning-level message when we can't auto-add a sub ... because there's no linked-node configured as the uplink for the parent message group.

  137. Rob Swindell (on Debian Linux)
    Sat Feb 22 2025 21:55:31 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/mailsrvr.c diff
    inet_ntoa() -> inet_ntop() conversion inet_ntoa() is deprecated

  138. Rob Swindell (on Debian Linux)
    Sat Feb 22 2025 20:35:51 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/mailsrvr.c diff
    Fix use of inet_ntop() in rblchk() Aren't void pointers fun!?!

  139. Rob Swindell (on Windows 11)
    Sat Feb 22 2025 20:31:05 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/mailsrvr.c diff
    Don't use deprecated function gethostbyname() in rblchk() Eliminated one more use of inet_ntoa() here while at it.

  140. Rob Swindell (on Windows 11)
    Sat Feb 22 2025 19:51:30 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/mailsrvr.c diff
    Fix previous commit: startup.outgoing4 is not a union xp_sockaddr *

  141. Rob Swindell (on Windows 11)
    Sat Feb 22 2025 19:45:51 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/mailsrvr.c diff
    Use inet_addrtop to convert socket addresses to strings to handle endianness Socket addresses are stored in network byte order (big endian) and this sprintf() logic here assumed little endian. This was a regression introduced in either commit 29b93c32 or commit db8bb221 (in the past 2 weeks) when we stopped using (some) of the deprecated IP address/resolution functions and fixed the socket address storage to always be in network byte order (as is the norm). This should fix the issue recently reported in IRC by BrokenMind.

  142. Rob Swindell
    Sat Feb 22 2025 15:27:44 GMT-0800 (PST)
    Modified Files:
    

    xtrn/ddfilelister/ddfilelister.js diff
    xtrn/ddfilelister/readme.txt diff
    xtrn/ddfilelister/revision_history.txt diff
    Merge branch 'dd_file_lister_long_filenames_in_desc_and_extended_desc_toggle' into 'master' DDFileLister: Filenames too long for the menu now displayed above the (extended) description. User can now toggle extended descriptions by pressing X within DDFileLister. Requested by Nelgin. See merge request main/sbbs!504

  143. Eric Oulashin
    Sat Feb 22 2025 15:27:44 GMT-0800 (PST)
    Modified Files:
    

    xtrn/ddfilelister/ddfilelister.js diff
    xtrn/ddfilelister/readme.txt diff
    xtrn/ddfilelister/revision_history.txt diff
    DDFileLister: Filenames too long for the menu now displayed above the (extended) description. User can now toggle extended descriptions by pressing X within DDFileLister. Requested by Nelgin.

  144. Deucе
    Fri Feb 21 2025 17:41:19 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CHANGES diff
    Document change

  145. Deucе
    Fri Feb 21 2025 17:39:55 GMT-0800 (PST)
    Modified Files:
    

    src/conio/utf8_codepages.c diff
    Broken vertical is 0xA6, not 0x86 Fix that, and also fix the cpstr_to_utf8() implementation that bypasses the lookup function.

  146. Deucе
    Fri Feb 21 2025 17:15:11 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/bbslist.c diff
    Support YELLOW_IS_YELLOW in C128 80-column mode. C128 used CGA monitors, and at least the 1902 output yellow. An argument could be made that it should be the default.

  147. Deucе
    Fri Feb 21 2025 17:02:57 GMT-0800 (PST)
    Modified Files:
    

    src/conio/utf8_codepages.c diff
    src/conio/utf8_codepages.h diff
    Split codepages into _B (broken vertical) variants For the three codepages with fonts that do both broken and unbroken vertical bars, add a _B variant for the one with the broken vertical. This allows the broken vertical to be "correctly" in the codepage mapping.

  148. Deucе
    Fri Feb 21 2025 12:14:46 GMT-0800 (PST)
    Modified Files:
    

    src/conio/allfonts.c diff
    src/conio/ciolib.h diff
    Add flag to font data indicating a broken vertical bar Some different fonts in the same codepage use different glyphs, so this can't be a per-codepage setting. Not sure how I'm going to actually implement this properly, but at least the data is there now.

  149. Rob Swindell
    Fri Feb 21 2025 12:10:01 GMT-0800 (PST)
    Modified Files:
    

    xtrn/ddfilelister/ddfilelister.cfg diff
    Merge branch 'dd_file_lister_num_files_in_header_setting' into 'master' DDFileLister: New configuration option, displayNumFilesInHeader. Forgot to include it in the .cfg file in my last commit. See merge request main/sbbs!502

  150. Eric Oulashin
    Fri Feb 21 2025 08:47:25 GMT-0800 (PST)
    Modified Files:
    

    xtrn/ddfilelister/ddfilelister.cfg diff
    DDFileLister: New configuration option, displayNumFilesInHeader. Forgot to include it in the .cfg file in my last commit.

  151. Rob Swindell (on ChromeOS)
    Thu Feb 20 2025 20:46:09 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/unicode.c diff
    src/xpdev/unicode_defs.h diff
    Define/use UNICODE_VERTICAL_LINE Resolve GCC warning: case value ‘124’ not in enumerated type ‘enum unicode_codepoint’

  152. Rob Swindell (on Debian Linux)
    Thu Feb 20 2025 20:28:25 GMT-0800 (PST)
    Modified Files:
    

    exec/webfileindex.ssjs diff
    Fix links to filenames with spaces View images in a smaller viewport (I'm no CSS expert here, obviously)

  153. Rob Swindell (on Debian Linux)
    Thu Feb 20 2025 17:37:00 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/bat_xfer.cpp diff
    src/sbbs3/execfile.cpp diff
    src/sbbs3/file.cpp diff
    src/sbbs3/filedat.c diff
    src/sbbs3/filedat.h diff
    src/sbbs3/ftpsrvr.c diff
    src/sbbs3/listfile.cpp diff
    src/sbbs3/qwk.cpp diff
    src/sbbs3/upload.cpp diff
    src/sbbs3/userdat.c diff
    src/sbbs3/websrvr.c diff
    Add optional error/result outparam to highlevel filedat API functions - loadfile - addfile - removefile - updatefile As discovered via ftp server "error updating" file log message, no details could be logged since these functions just returned a simple bool. So, we now support passing an optional output parameter to capture the result/error value to be displayed or logged when these functions return false. Unrelated fixes to start_batch_download(): When passing a list of files on the command to the file transfer protocol driver (e.g. sz), if any filename contains spaces, that filename must be quoted or else sz will fail with error 'sz: can read only one file from stdin'. Also, the trailing whitespace from the list of filenames must be removed or else sz will report errors 'sz: cannot open : No such file or directory' and 'sz: Transfer incomplete'.

  154. Rob Swindell (on Debian Linux)
    Thu Feb 20 2025 17:32:20 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/sexyz.c diff
    Bug fix for multi-file zmodem-send using wildcards If the first specified file in the list had a wildcard pattern, multiple ZRQINIT (request init) frames would be sent (one for each file matching the first list item file pattern). This was just found via code review, not in the wild.

  155. Rob Swindell
    Thu Feb 20 2025 17:18:14 GMT-0800 (PST)
    Modified Files:
    

    xtrn/ddfilelister/ddfilelister.js diff
    xtrn/ddfilelister/readme.txt diff
    xtrn/ddfilelister/revision_history.txt diff
    Merge branch 'dd_file_lister_num_files_in_header' into 'master' DDFileLister: Now optionally displays the number of files in the header at the top of the list, confirtable with the displayNumFilesInHeader option in the config file See merge request main/sbbs!501

  156. Eric Oulashin
    Thu Feb 20 2025 12:50:13 GMT-0800 (PST)
    Modified Files:
    

    xtrn/ddfilelister/ddfilelister.js diff
    xtrn/ddfilelister/readme.txt diff
    xtrn/ddfilelister/revision_history.txt diff
    DDFileLister: Now optionally displays the number of files in the header at the top of the list, confirtable with the displayNumFilesInHeader option in the config file

  157. Deucе
    Thu Feb 20 2025 15:55:50 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CHANGES diff
    src/syncterm/bbslist.c diff
    Don't disable status line for Atari ST modes Atari ST modes are 25 rows, they don't need to have the status line turned off by default.

  158. Deucе
    Wed Feb 19 2025 22:45:39 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/unicode.c diff
    Add explicit | to | mapping. It's not clear exactly what will happen if I don't, so add it just in case.

  159. Deucе
    Wed Feb 19 2025 22:36:01 GMT-0800 (PST)
    Modified Files:
    

    src/conio/utf8_codepages.c diff
    CP437 needs to be a full table translation CP437 0x7C is U+00A6 It's likely this is true for a bunch of other codepages as well, so I'll need to dig through them soon.

  160. Deucе
    Wed Feb 19 2025 21:46:22 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/unicode.c diff
    CP437 0x7C is UNICODE_BROKEN_BAR (U+00A6) Contrary to pouplar belief CP437 does not encode US-ASCII. US-ASCII has UNICODE_VERTICAL_LINE (U+007C) there (which does match Unicode) Aren't you glad your C compiler didn't use CP437? if (x ??!??! y) is so much uglier than if (x || y) Of course, with C99 (or C90 with the 1995 ammendment), we would have seen a lot of iso646.h and the use of the or, bitor, and or_eq macros, and maybe that would have gotten that whole list of 11 macros promoted to keywords eventually (Likely in C23) since it's hard to eat just one peanut. Of course, that's all alternate history... it's unlikely that any compiler vendor would actually care, and | and ¦ (or | and ³ for those using CP437) would be "the same".

  161. Rob Swindell
    Wed Feb 19 2025 11:10:39 GMT-0800 (PST)
    Modified Files:
    

    xtrn/DDMsgReader/DDMsgReader.js diff
    xtrn/DDMsgReader/ddmr_cfg.js diff
    xtrn/DDMsgReader/readme.txt diff
    xtrn/DDMsgReader/revision_history.txt diff
    Merge branch 'dd_msg_reader_post_msg_pause_quit' into 'master' DDMsgReader: After replying to a message, when status is shown and pauses for user input, Q or Ctrl-C will now exit, and not be ignored. Requested by Keyop. See merge request main/sbbs!500

  162. Eric Oulashin
    Tue Feb 18 2025 19:39:06 GMT-0800 (PST)
    Modified Files:
    

    xtrn/DDMsgReader/DDMsgReader.js diff
    xtrn/DDMsgReader/ddmr_cfg.js diff
    xtrn/DDMsgReader/readme.txt diff
    xtrn/DDMsgReader/revision_history.txt diff
    DDMsgReader: After replying to a message, when status is shown and pauses for user input, Q or Ctrl-C will now exit, and not be ignored. Requested by Keyop.

  163. Deucе
    Tue Feb 18 2025 10:33:20 GMT-0800 (PST)
    Modified Files:
    

    exec/load/syncterm_cache.js diff
    console.inkey() returns empty string on timeout by default

  164. Rob Swindell (on Windows 11)
    Sun Feb 16 2025 22:05:49 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/logon.cpp diff
    Don't backup dsts.ini daily Looks like an unintentional debug-inclusion with commit 2064f3a4f71c6656693a1 as pointed about by Deuce in IRC.

  165. Rob Swindell (on Debian Linux)
    Sun Feb 16 2025 17:20:52 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/ctrl/MailCfgDlgUnit.dfm diff
    Fix extraneous close paren added in previous commit

  166. Rob Swindell (on Debian Linux)
    Sun Feb 16 2025 17:07:07 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/ctrl/MailCfgDlgUnit.cpp diff
    src/sbbs3/ctrl/MailCfgDlgUnit.dfm diff
    src/sbbs3/mailsrvr.c diff
    src/sbbs3/mailsrvr.h diff
    src/sbbs3/scfg/scfgsrvr.c diff
    Add option to no mark POP3-retrieved mail as READ When the option is not set, messages "READ" flag is set when the message is retrieved via POP3. Setting this option defeats that behavior - as requested by Keyop via IRC. Since I'm out of option flags, remove the "receive by user number" option. The receive by user number option was never a good idea and hopefully no one is actually depending on/using that setting. Uesr numbers in the alias.cfg file still work.

  167. Rob Swindell (on Windows 11)
    Sat Feb 15 2025 19:45:46 GMT-0800 (PST)
    Modified Files:
    

    src/sexpots/sexpots.c diff
    src/xpdev/ini_file.h diff
    iniRead/Get/SetIpAddress() functions now return/accept network byte order As a result of recent change to netwrap.c

  168. Rob Swindell (on Windows 11)
    Sat Feb 15 2025 19:35:58 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/execnet.cpp diff
    src/sbbs3/mailsrvr.c diff
    src/sbbs3/telgate.cpp diff
    src/xpdev/netwrap.c diff
    parseIPv4Address() and IPv4AddresstoStr() now return/accept network byte order Since that's the most used/assumed byte order for IP addresses, let's make that the default and eliminate a lot of unnecessary byte-swapping. This fixes the issue reported by Keyop in IRC, introduced in commit 29b93c32

  169. Deucе
    Sat Feb 15 2025 00:45:35 GMT-0800 (PST)
    Modified Files:
    

    src/conio/vidmodes.c diff
    Base the Prestel/Mode 7 aspect ratio on actual math It's a bit different than straight 4:3 due to Mode 7 not using the full line period or all the lines.

  170. Rob Swindell (on Debian Linux)
    Fri Feb 14 2025 21:54:11 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/ftpsrvr.c diff
    Ignore MKD/XMKD commands from users (pretend successful) For non-Guest users (without the 'U' restriction), if the FTP client sends the MKD or XMKD command, just return the proper succcess result and do nothing (don't log as a hack attempt or return a syntax error result). Some FTP clients (e.g. Reolink Doorbell camera) just always try to blindly create a directory before uploading files, but if that command fails (as we would), the upload is aborted. So pretend to create the diretory whether it already exists or not, just so the client will proceed with the upload. For G or U restricted users, treat (log) as hack-attempt, as before.

  171. Rob Swindell (on Debian Linux)
    Fri Feb 14 2025 13:55:26 GMT-0800 (PST)
    Modified Files:
    

    exec/str_cmds.js diff
    If sbbs is configured with "NO_DOS" option, "exec" will assume native program <@Deuce> Filenames are always assumed to be DOS programs, despite not being able to run them. <nelgin> If sbbs was smart, it would know that if it's not a dos program then to use jsexec or whatever. There: sbbs is now more smarter

  172. Rob Swindell (on Windows 11)
    Fri Feb 14 2025 13:28:30 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/mailsrvr.c diff
    src/sbbs3/main.cpp diff
    Fix issue resolving "localhost" to IPv4 address on (some) IPv6-enabled systems We need to provide an address family "hint" to getaddrinfo() to limit the results to IPv4 addresses. Regression introduced in commit 29b93c3297c Reported by Keyop via IRC

  173. Deucе
    Fri Feb 14 2025 01:13:32 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/term.c diff
    Make F3 toggle reveal just like PgDown That's what Commstar uses in Prestel mode after all.

  174. Deucе
    Fri Feb 14 2025 01:09:52 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CHANGES diff
    Mention that the keybindings changed.

  175. Deucе
    Fri Feb 14 2025 01:05:56 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/term.c diff
    Fix up the Mode 7/Prestel key bindings to match Commstar This mostly just changes the arrow key bindings and adds support for Ctrl+Fx and Shift+Fx, and makes End Copy. The big change though is that Page Down, not Tab now toggles reveal mode. Sorry all you guys with 60% keyboards.

  176. Deucе
    Fri Feb 14 2025 00:35:07 GMT-0800 (PST)
    Modified Files:
    

    src/conio/ciolib.h diff
    Add some key macros for Shift+x and Control+x keys For use by SyncTERM in Mode 7/Prestel modes.

  177. Deucе
    Fri Feb 14 2025 00:34:23 GMT-0800 (PST)
    Modified Files:
    

    src/conio/x_events.c diff
    Fix some scancodes... It seems some of the Shift+x codes were incorrect (had unshifted as high byte and shifted as low byte).

  178. Deucе
    Thu Feb 13 2025 23:51:01 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    src/conio/ciolib.h diff
    src/conio/cterm.c diff
    Fix Mode 7 (ie: SAA5050) mode double-height handling Basically, the only thing the SAA5050 enforces is that characters on a bottom row need to be double-height, or they're displayed as spaces. The Prestel terminal now has an extra bit that indicates it is a prestel terminal, and the bitmap console hacks up the second row. While we're poking this, use macros for magic bits in FG/BG colours.

  179. Rob Swindell (on ChromeOS)
    Thu Feb 13 2025 22:14:45 GMT-0800 (PST)
    Modified Files:
    

    docs/v320_new.txt diff
    Document changes since v3.20b Needs clean-up still

  180. Rob Swindell (on Windows 11)
    Thu Feb 13 2025 16:20:38 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/syncterm.iss diff
    Update version number to 1.6 No other changes

  181. Deucе
    Thu Feb 13 2025 13:11:10 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/unicode.c diff
    Convert UNICODE_VIEWDATA_SQUARE to # for CP437. Since we do Mode7

  182. Deucе
    Thu Feb 13 2025 10:31:16 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/getstr.cpp diff
    Remove exascii literals. Replace with \xXX values

  183. Deucе
    Wed Feb 12 2025 21:47:35 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CHANGES diff
    Document blast-through change

  184. Rob Swindell (on Debian Linux)
    Wed Feb 12 2025 20:14:22 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci.yml diff
    Update case of msvc output directories This hopefully fixes the new CI pipeline issue

  185. Deucе
    Wed Feb 12 2025 18:53:17 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    Fix blast-through glyphs for high mosaics. The smooth mosaics aren't available with the SAA5050. Nothing to see here.

  186. Rob Swindell (on Windows 11)
    Wed Feb 12 2025 18:51:48 GMT-0800 (PST)
    Modified Files:
    

    src/conio/conio.vcxproj diff
    src/conio/conio_gdi.vcxproj diff
    src/conio/conio_sdl.vcxproj diff
    src/sbbs3/ans2asc.vcxproj diff
    src/sbbs3/asc2ans.vcxproj diff
    src/sbbs3/baja.vcxproj diff
    src/sbbs3/chksmb.vcxproj diff
    src/sbbs3/dupefind.vcxproj diff
    src/sbbs3/echocfg.vcxproj diff
    src/sbbs3/fixsmb.vcxproj diff
    src/sbbs3/fmsgdump.vcxproj diff
    src/sbbs3/ftpsrvr.vcxproj diff
    src/sbbs3/jsexec.vcxproj diff
    src/sbbs3/load_cfg.vcxproj diff
    src/sbbs3/mailsrvr.vcxproj diff
    src/sbbs3/makeuser.vcxproj diff
    src/sbbs3/node.vcxproj diff
    src/sbbs3/ntsvcs.vcxproj diff
    src/sbbs3/pktdump.vcxproj diff
    src/sbbs3/qwknodes.vcxproj diff
    src/sbbs3/sbbs.vcxproj diff
    src/sbbs3/sbbscon.vcxproj diff
    src/sbbs3/sbbsecho.vcxproj diff
    src/sbbs3/sbbsexec.vcxproj diff
    src/sbbs3/scfg/scfg.vcxproj diff
    src/sbbs3/services.vcxproj diff
    src/sbbs3/sexyz.vcxproj diff
    src/sbbs3/slog.vcxproj diff
    src/sbbs3/smbutil.vcxproj diff
    src/sbbs3/textgen.vcxproj diff
    src/sbbs3/trashman.vcxproj diff
    src/sbbs3/unbaja.vcxproj diff
    src/sbbs3/upgrade_to_v319.vcxproj diff
    src/sbbs3/upgrade_to_v320.vcxproj diff
    src/sbbs3/websrvr.vcxproj diff
    src/sftp/sftp.vcxproj diff
    src/smblib/smblib.vcxproj diff
    src/uifc/uifc.vcxproj diff
    src/xpdev/xpdev.vcxproj diff
    src/xpdev/xpdev_mt.vcxproj diff
    Use MSVS macros for output directories and target filenames This sets us up better for adding more platform support (e.g. x64) later.

  187. Rob Swindell (on Windows 11)
    Wed Feb 12 2025 18:18:19 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/ars.c diff
    src/sbbs3/ars_defs.h diff
    src/sbbs3/chk_ar.cpp diff
    src/sbbs3/userdat.c diff
    Add LANG ARS keyword e.g. "LANG=ES" or "LANG ES" to check for Spanish language This makes ctrl/modopts/*.ini more useful for multiple language support

  188. Rob Swindell (on Windows 11)
    Wed Feb 12 2025 18:03:52 GMT-0800 (PST)
    Added Files:
    

    3rdp/win64.release/libarchive/bin/archive.lib diff
    Modified Files:

    src/conio/conio.vcxproj diff
    src/conio/conio_gdi.vcxproj diff
    src/conio/conio_sdl.vcxproj diff
    src/uifc/uifc.vcxproj diff
    Revert MSVC project files to commit da9512200016ce2 I accidentally committed an experimental x64 build configuration. I want to do that right when I do add the x64 build configuration.

  189. Rob Swindell (on Debian Linux)
    Wed Feb 12 2025 16:23:38 GMT-0800 (PST)
    Modified Files:
    

    exec/load/modopts.js diff
    Add support for ctrl/modopts/*.ini How these files differ from modopts.ini (and by extension, ctrl/modopts.d/*.ini): - The root section is always parsed, part of the returned object - [sections] denote ARS that if matched (current user meets requirements) then those key/values are added as properties of the returned object possibly overriding previously defined properties (options), this allows different users (or clients/hosts, terminals) to get different option values much more easily

  190. Deucе
    Wed Feb 12 2025 13:21:15 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    src/syncterm/CHANGES diff
    Fix APB and APU from top in BBC Micro Mode 7 Up from the top row scrolls down, does not wrap to bottom. Backspace from the top-left position scrolls down and moves the cursor to end end of the new top line, does not wrap to bottom.

  191. Rob Swindell (on Debian Linux)
    Tue Feb 11 2025 23:35:14 GMT-0800 (PST)
    Modified Files:
    

    exec/load/modopts.js diff
    Convert charset to lower case before using in section name (so, [modname:charset=mode7], not [modname:charset=MODE7])

  192. Rob Swindell (on Debian Linux)
    Tue Feb 11 2025 18:43:55 GMT-0800 (PST)
    Modified Files:
    

    exec/load/gettext.js diff
    Convert charset to lowercase, don't depend on file_getcase() to fix ... cause it won't (fix directory case in path).

  193. Rob Swindell (on Windows 11)
    Tue Feb 11 2025 18:22:18 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/str.cpp diff
    Fix case-sensitivity issue in charset element of path in last commit fexistcase() only corrects the case of the filename, not the directories in the path. So we'll just use the lowercase version of the charset string, always. Also, return false upon failure of any call to replace_text(), not just the last one.

  194. Rob Swindell (on Windows 11)
    Tue Feb 11 2025 17:50:25 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/getstr.cpp diff
    Save/restore the row number in insert_indicator() This was the cause of some very slight funkiness when displaying files after a save/restore (e.g. Ctrl-T or other global hot key) operation.

  195. Rob Swindell (on Debian Linux)
    Tue Feb 11 2025 17:39:34 GMT-0800 (PST)
    Modified Files:
    

    exec/load/modopts.js diff
    Support [modname:charset=<charset>] sections This is a getting a little kludgey I think doing something with ARS would be nicer, but then we get into the area of constructing a 'options' object out of keys from multiple sections and which sections should supercede which? This'll do for now for Nelgin's BBC mode7 terminal project.

  196. Rob Swindell (on Debian Linux)
    Tue Feb 11 2025 15:59:22 GMT-0800 (PST)
    Modified Files:
    

    exec/load/gettext.js diff
    src/sbbs3/str.cpp diff
    Support ctrl/<charset>/text.ini file For Nelgin's mode7 terminal project

  197. Deucе
    Tue Feb 11 2025 11:27:11 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/webget.c diff
    Fail to parse https:// URIs when cryptlib is disabled No point in going any further and confusing users.

  198. Deucе
    Tue Feb 11 2025 11:10:50 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/GNUmakefile diff
    webget.o depends on cryptlib

  199. Deucе
    Tue Feb 11 2025 10:20:53 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CMakeLists.txt diff
    src/syncterm/Info.plist diff
    src/syncterm/Manual.txt diff
    src/syncterm/PackageInfo.in diff
    src/syncterm/dpkg-control.in diff
    src/syncterm/haiku.rdef diff
    src/syncterm/syncterm.c diff
    src/syncterm/syncterm.rc diff
    And thou art v1.7b

  200. Deucе
    Tue Feb 11 2025 10:19:30 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CHANGES diff
    src/syncterm/CMakeLists.txt diff
    src/syncterm/Info.plist diff
    src/syncterm/Manual.txt diff
    src/syncterm/PackageInfo.in diff
    src/syncterm/dpkg-control.in diff
    src/syncterm/haiku.rdef diff
    src/syncterm/syncterm.c diff
    src/syncterm/syncterm.rc diff
    I dub thee v1.6

  201. Rob Swindell (on Windows 11)
    Mon Feb 10 2025 20:40:22 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_file.c diff
    Use iniGetSectionList() instead of iniReadSectionList() ... in File.iniGetSections() method because iniReadSectionList() doesn't recognize !include directives. This fixes issue #871 whereby modopts.js couldn't find sections in modopts.d/*.ini files.

  202. Deucе
    Mon Feb 10 2025 15:48:19 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/bbslist.c diff
    Remove summary thing.

  203. Deucе
    Mon Feb 10 2025 15:45:57 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/bbslist.c diff
    Experimental summary thing... disabled, will be deleted I just want this in the history in case I ever want to play with the concept again.

  204. Deucе
    Mon Feb 10 2025 14:42:35 GMT-0800 (PST)
    Modified Files:
    

    src/uifc/uifc32.c diff
    Only base drag-select highlight on the legacy attribute. The fg/bg values all have multiple representations, and some bits have extra meanings, so inequality there doesn't mean they're not the same colour. This fixes an issue where the *second* drag select on a screen would not highlight blue backgrounds correctly. The background colour gets the "pixels set" bit flown because of how restorescreen() works, which caused this to "know" it's not blue and use a blue background. A (good) argument could be made that savescreen()/restorescreen() shouldn't result in any changes, but since uifc32 doesn't directly use colours that aren't represented by legacy attributes, there's no need for it to get tricky here.

  205. Rob Swindell
    Mon Feb 10 2025 11:27:31 GMT-0800 (PST)
    Added Files:
    

    ctrl/SlyEditStrings_En.cfg diff
    Modified Files:

    ctrl/SlyEdit.cfg diff
    docs/slyedit_readme.txt diff
    exec/SlyEdit.js diff
    exec/SlyEdit_Misc.js diff
    exec/slyedcfg.js diff
    Removed Files:

    docs/SlyEdit_DD_Message_Lister_notes.txt diff
    Merge branch 'slyedit_input_timeout_warning' into 'master' SlyEdit: Display a user inactivity warning message (configurable) See merge request main/sbbs!498

  206. Eric Oulashin
    Mon Feb 10 2025 11:27:31 GMT-0800 (PST)
    Added Files:
    

    ctrl/SlyEditStrings_En.cfg diff
    Modified Files:

    ctrl/SlyEdit.cfg diff
    docs/slyedit_readme.txt diff
    exec/SlyEdit.js diff
    exec/SlyEdit_Misc.js diff
    exec/slyedcfg.js diff
    Removed Files:

    docs/SlyEdit_DD_Message_Lister_notes.txt diff
    SlyEdit: Display a user inactivity warning message (configurable)

  207. Deucе
    Sun Feb 09 2025 23:58:02 GMT-0800 (PST)
    Modified Files:
    

    src/conio/ciolib.adoc diff
    src/syncterm/Manual.txt diff
    Mention that some screen modes change the emulation mode.

  208. Deucе
    Sun Feb 09 2025 16:22:50 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/webget.c diff
    Fix harmless Coverity issue. There's no need to set line = NULL since it's always overwritten.

  209. Rob Swindell (on Debian Linux)
    Sun Feb 09 2025 14:42:29 GMT-0800 (PST)
    Modified Files:
    

    exec/mqtt_spy.js diff
    Parse/print the node_aux from the node status topic Fix for issue #870

  210. Deucе
    Sun Feb 09 2025 13:52:54 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    A couple more Atari ST VT52 fixes... FF and VT both move down one line, scrolling if necessary. The rest of the unsupported control characters have no effect (ie: work like NUL) Delete shows the delta.

  211. Deucе
    Sun Feb 09 2025 13:22:05 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    src/conio/cterm.c diff
    src/conio/vidmodes.c diff
    More Atari ST fixes... Add ESC L and ESC M for insert/delete line. Used by commando text. Use a block cursor that blinks at 1Hz. Discard invalid ESC codes.

  212. Deucе
    Sun Feb 09 2025 12:14:57 GMT-0800 (PST)
    Modified Files:
    

    src/conio/ciolib.c diff
    src/conio/vidmodes.c diff
    Fix Atari ST palettes and default attributes Thanks Kirkman!

  213. Rob Swindell (on Debian Linux)
    Sun Feb 09 2025 00:06:54 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/main.cpp diff
    Don't attempt to remove inbound QWK packet if doesn't exist (renamed?) Address error report by Greg Meckel (THEICECA) evnt QNET !ERROR 2 (No such file or directory) (EinError 2) in main.cpp line 3195 (event_thread) removing "C:\sbbs\data\VERT.qwk" access=0 ... this could happen after a bad QWK packet was detected and renamed.

  214. Rob Swindell (on Debian Linux)
    Sat Feb 08 2025 23:52:12 GMT-0800 (PST)
    Modified Files:
    

    exec/load/modopts.js diff
    Load section or keys form [module:lang=<user-lang>] if it exists This allow language-specific module options

  215. Deucе
    Sat Feb 08 2025 22:57:00 GMT-0800 (PST)
    Modified Files:
    

    src/conio/allfonts.c diff
    src/conio/ciolib.adoc diff
    src/conio/ciolib.c diff
    src/conio/ciolib.h diff
    src/conio/cterm.c diff
    src/conio/cterm.h diff
    src/conio/utf8_codepages.c diff
    src/conio/utf8_codepages.h diff
    src/conio/vidmodes.c diff
    src/conio/vidmodes.h diff
    src/syncterm/CHANGES diff
    src/syncterm/bbslist.c diff
    src/syncterm/bbslist.h diff
    src/syncterm/syncterm.c diff
    src/syncterm/term.c diff
    Add Atari ST VT52 modes Completes feature request #95 Have fun kids!

  216. Rob Swindell (on Debian Linux)
    Sat Feb 08 2025 22:55:48 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/ver.cpp diff
    Display the libmosquitto version number too (which applicable)

  217. Rob Swindell
    Sat Feb 08 2025 16:05:27 GMT-0800 (PST)
    Modified Files:
    

    xtrn/DDMsgReader/DDMsgReader.js diff
    xtrn/DDMsgReader/DefaultTheme.cfg diff
    xtrn/DDMsgReader/ddmr_cfg.js diff
    xtrn/DDMsgReader/readme.txt diff
    xtrn/DDMsgReader/revision_history.txt diff
    Merge branch 'dd_msg_reader_input_timeout_warning_text_display' into 'master' DDMsgReader: Input timeout warning improvement - Now displays warning text. Also, new areYouThere configurable string in the theme file. See merge request main/sbbs!496

  218. Eric Oulashin
    Sat Feb 08 2025 15:03:25 GMT-0800 (PST)
    Modified Files:
    

    xtrn/DDMsgReader/DDMsgReader.js diff
    xtrn/DDMsgReader/DefaultTheme.cfg diff
    xtrn/DDMsgReader/ddmr_cfg.js diff
    xtrn/DDMsgReader/readme.txt diff
    xtrn/DDMsgReader/revision_history.txt diff
    DDMsgReader: Input timeout warning improvement - Now displays warning text. Also, new areYouThere configurable string in the theme file.

  219. Deucе
    Sat Feb 08 2025 14:22:07 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.adoc diff
    Document ECMA-35 nF Escape Sequences CTerm does not presently take any action for any of these, but it does parse and ignore them.

  220. Rob Swindell (on Windows 11)
    Sat Feb 08 2025 13:21:03 GMT-0800 (PST)
    Modified Files:
    

    src/conio/conio.vcxproj diff
    src/conio/conio_gdi.vcxproj diff
    src/conio/conio_sdl.vcxproj diff
    src/sbbs3/ans2asc.vcxproj diff
    src/sbbs3/asc2ans.vcxproj diff
    src/sbbs3/baja.vcxproj diff
    src/sbbs3/chksmb.vcxproj diff
    src/sbbs3/dupefind.vcxproj diff
    src/sbbs3/echocfg.vcxproj diff
    src/sbbs3/fixsmb.vcxproj diff
    src/sbbs3/fmsgdump.vcxproj diff
    src/sbbs3/ftpsrvr.vcxproj diff
    src/sbbs3/jsexec.vcxproj diff
    src/sbbs3/load_cfg.vcxproj diff
    src/sbbs3/mailsrvr.vcxproj diff
    src/sbbs3/makeuser.vcxproj diff
    src/sbbs3/node.vcxproj diff
    src/sbbs3/ntsvcs.vcxproj diff
    src/sbbs3/pktdump.vcxproj diff
    src/sbbs3/qwknodes.vcxproj diff
    src/sbbs3/sbbs.vcxproj diff
    src/sbbs3/sbbscon.vcxproj diff
    src/sbbs3/sbbsecho.vcxproj diff
    src/sbbs3/sbbsexec.vcxproj diff
    src/sbbs3/scfg/scfg.vcxproj diff
    src/sbbs3/services.vcxproj diff
    src/sbbs3/sexyz.vcxproj diff
    src/sbbs3/slog.vcxproj diff
    src/sbbs3/smbutil.vcxproj diff
    src/sbbs3/textgen.vcxproj diff
    src/sbbs3/trashman.vcxproj diff
    src/sbbs3/unbaja.vcxproj diff
    src/sbbs3/upgrade_to_v319.vcxproj diff
    src/sbbs3/upgrade_to_v320.vcxproj diff
    src/sbbs3/websrvr.vcxproj diff
    src/sftp/sftp.vcxproj diff
    src/smblib/smblib.vcxproj diff
    src/uifc/uifc.vcxproj diff
    src/xpdev/xpdev.vcxproj diff
    src/xpdev/xpdev_mt.vcxproj diff
    Change target processor back to IA32 (no FP instruction set extensions used) <@Deuce> DigitalMan, also, as it turns out, Windows 7 was the last version of Windows that supported processors without SSE2. Since we're targeting Windows Vista and Windows 7 still, don't require FP extensions that SBBS really won't get much benefit from anyway.

  221. Rob Swindell (on Windows 11)
    Sat Feb 08 2025 13:21:02 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/dirwrap.c diff
    Use strlcpy instead of sprintf("%.*s") string truncation trick Resolves MSVC x64 build warnings. Also fixes a bug with wrong sizeof argument used in readdir() (!)

  222. Rob Swindell (on Windows 11)
    Sat Feb 08 2025 13:21:02 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/filewrap.c diff
    src/xpdev/filewrap.h diff
    Standard (POSIX) getdelim() returns ssize_t, not long int

  223. Rob Swindell (on Windows 11)
    Sat Feb 08 2025 13:21:02 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_bbs.cpp diff
    src/sbbs3/js_file.c diff
    src/sbbs3/js_filebase.c diff
    src/sbbs3/js_msgbase.c diff
    src/sbbs3/js_socket.c diff
    Native JS methods must return JS_FALSE for (Error) exceptions to be thrown I discovered the first case when FileBase.get_path() failed, but didn't (immediately) throw an exception. Reviewing the other instances of JS_RepoertError() calls found several that either reported a garbage (e.g. NULL) string value or returned JS_TRUE. The design pattern used a little in js_socket.c probably should be used more: if (JS_IsExceptionPending(cx)) return JS_FALSE; return JS_TRUE; ... but that's more of a refactor than I had the stomach for right now.

  224. Deucе
    Sat Feb 08 2025 12:15:19 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/webget.c diff
    Fix memory leak in read_chunked()

  225. Deucе
    Fri Feb 07 2025 16:58:09 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/webget.c diff
    Fix chunked transfer encoding of web lists It's Transfer-Encoding:, not Content-Transfer-Encoding:, and each chunk has a \r\n appended to it.

  226. Deucе
    Fri Feb 07 2025 16:42:48 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/webget.c diff
    Terminate header parsing loop on \n as well as \r With the latest change, *val will be \n after the last item, so this avoids an extra loop through the loops.

  227. Deucе
    Fri Feb 07 2025 16:36:34 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/webget.c diff
    Fix two (more) bugs with Web Lists 1 - If cache-control header had more than one option, an infinite loop would occur. 2 - For TLS, if the remote closes the connection after the transfer, a "Complete" error would occur. Together, these should fox ticket 191

  228. Deucе
    Thu Feb 06 2025 00:01:52 GMT-0800 (PST)
    Modified Files:
    

    src/conio/utf8_codepages.c diff
    src/conio/utf8_codepages.h diff
    src/syncterm/term.c diff
    Update prestel unicode tables for new font layout Pasting mosaics won't work properly, but it wouldn't anyway, so I'm not too worried about it. Also, I can't seem to find anything I can paste separated mosaics into, but that may just be due to Unicode 16 being so new.

  229. Deucе
    Wed Feb 05 2025 22:15:16 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    Fix handling of translated blast-through mosaics Since we're translating in ch[0], don't use buf[j] for mosaic or we'll lose the translation we just did.

  230. Deucе
    Wed Feb 05 2025 21:50:46 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    src/syncterm/CHANGES diff
    src/syncterm/term.c diff
    Fix mappings in Beeb and Prestel modes In Beeb mode, receiving the byte on the left prints the one on the right: # -> # _ -> — ` -> £ In Prestel: # -> £ _ -> # ` -> — Keyboard mappings adjusted so what you press is what you see.

  231. Deucе
    Wed Feb 05 2025 20:09:08 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    Character 127 in Beeb mode is destructive backspace.

  232. Deucе
    Wed Feb 05 2025 20:02:05 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    Split Prestel from Beeb emulation parsing, add VDU 7, 23, and 31 Prestel and Beeb emulations are different enough that using a shared switch statement doesn't really make sense. This adds Mode 7 support for VDU commands 7 (beep), 23 (cursor only), and 31 (move to X/Y, 0-based). The rest of the unsupported commands don't seem overly useful in a BBS context (disable/enable output) or I don't want to deal with documenting and implementing ("Page mode").

  233. Rob Swindell (on Windows 11)
    Wed Feb 05 2025 19:17:44 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/syncterm.iss diff
    Update for SyncTERM 1.5 and Inno Setup 6 Address warnings from Inno Setup 6, indluding support for both "administrative" and "non administrative" install modes (!). This means, if you have not installed SyncTERM previously, you should have an option to install for "All users" (requiring administrative rights) or "Just You". When installing in non-administrative mode ("Just You"), the program will be installed in your user "Programs" folder, e.g. C:\Users\<yourname>\AppData\Local\Programs\SyncTERM If you previously installed SyncTERM in the common "Program Files" or "Program File (x86)" directories (which assuming administrative mode, the only install mode previously), then the installer will install again to that same location (and require administrative access). I'm still including a syncterm.lst download option (using curl.exe) because the Web List feature is not working so great in v1.5. That option should go away in the next release.

  234. Rob Swindell (on Debian Linux)
    Wed Feb 05 2025 18:43:44 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/text_defaults.c diff
    CriticalErrors update

  235. Rob Swindell (on Debian Linux)
    Wed Feb 05 2025 18:42:25 GMT-0800 (PST)
    Modified Files:
    

    exec/irc.js diff
    Add some bbs.online checks to hopefully detect disconnected user better Seen disconnected users "stuck" in irc.js for long periods of time. Hopefully this helps.

  236. Rob Swindell (on Debian Linux)
    Wed Feb 05 2025 18:41:43 GMT-0800 (PST)
    Modified Files:
    

    exec/webfileindex.ssjs diff
    Handle files where the 'added' property is 0 or undefined

  237. Rob Swindell (on Debian Linux)
    Wed Feb 05 2025 18:40:04 GMT-0800 (PST)
    Modified Files:
    

    exec/jsdocs.js diff
    More consistent capitalization

  238. Rob Swindell (on Debian Linux)
    Wed Feb 05 2025 18:39:16 GMT-0800 (PST)
    Modified Files:
    

    exec/addfiles.js diff
    Log/output an alert if the max files for a dir has been reached or exceeded

  239. Rob Swindell (on Debian Linux)
    Wed Feb 05 2025 18:35:40 GMT-0800 (PST)
    Modified Files:
    

    exec/delfiles.js diff
    Catch and log exceptions if FileBase.get_path() fails I saw this in my error.log: evnt DELFILES !JavaScript /sbbs/exec/delfiles.js line 100: Error: -110 loading file 'somefile.name' Which would terminate the script. We don't need to do that, just log it and continue on. Other changes of no consequence.

  240. Deucе
    Wed Feb 05 2025 16:12:00 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CHANGES diff
    I've enabled the cursor for Mode 7... document that.

  241. Deucе
    Wed Feb 05 2025 16:10:22 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    Mode 7 terminals (ie: Commstar) do not support cursor control Specifically, \x11 is not cursor on, and \x14 is not cursor off.

  242. Deucе
    Wed Feb 05 2025 14:37:50 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CHANGES diff
    src/syncterm/webget.c diff
    Ignore errors removing old list file If there's a problem, we'll catch it on the rename(), no need to add a race condition by checking if it exists first. Should fix issue 190

  243. Deucе
    Wed Feb 05 2025 14:21:51 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    src/syncterm/CHANGES diff
    Disable Prestel ENQ/Memory in BBC Micro Mode 7 There's very little evidence that Prestel terminals supported this, and zero evidence that BBC Micro terminals did. ESC and ENQ are ignored like all other control characters in Mode 7 now.

  244. Rob Swindell (on Debian Linux)
    Wed Feb 05 2025 13:03:11 GMT-0800 (PST)
    Modified Files:
    

    exec/load/sbbsdefs.js diff
    Define K_WRAP as a legacy alias for K_WORDWRAP

  245. Rob Swindell (on Debian Linux)
    Wed Feb 05 2025 13:02:18 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/umonitor/umonitor.c diff
    Don't use K_WRAP here, it's not even a UIFC "thing"

  246. Rob Swindell (on Windows 11)
    Wed Feb 05 2025 12:39:35 GMT-0800 (PST)
    Modified Files:
    

    exec/default.js diff
    exec/load/sbbsdefs.js diff
    src/sbbs3/chat.cpp diff
    src/sbbs3/getstr.cpp diff
    src/sbbs3/js_bbs.cpp diff
    src/sbbs3/sbbsdefs.h diff
    src/sbbs3/writemsg.cpp diff
    src/uifc/uifc.h diff
    Add K_LINEWRAP getstr() mode flag, rename K_WRAP to K_WORDWRAP For 10 years (commit e212e2c5fe9), sbbs_t/console.getstr() has limited length of string input to the available columns of the terminal. To fix issue #869, rather than change getstr()'s default behavior, add a new mode flag: K_LINEWRAP which does not limit the string length input based on the terminal width (and the current column) (e.g. for use with ;string commands from the default command shell). Ideally, I'd like to have a marquee-style option (K_mode flag) where longer strings just side-scroll to accommodate strings longer than the terminal width, but in the mean-time, this'll do. So anywhere we think a narrow (e.g. 40 column) terminal is being excessively restricted in string input width and starting the input in the first column is not an option/solution, adding the K_LINEWRAP flag to the getstr() call is the proposed solution.

  247. Rob Swindell (on Debian Linux)
    Wed Feb 05 2025 11:48:06 GMT-0800 (PST)
    Modified Files:
    

    exec/str_cmds.js diff
    Reload text.<lang>.ini file upon ;RELOAD command

  248. Rob Swindell (on Windows 11)
    Wed Feb 05 2025 11:15:46 GMT-0800 (PST)
    Modified Files:
    

    exec/load/text.js diff
    5 new (mostly QWK-related) text.dat string ID definitions

  249. Rob Swindell (on Windows 11)
    Wed Feb 05 2025 11:14:29 GMT-0800 (PST)
    Modified Files:
    

    ctrl/text.dat diff
    Add condition newline to CriticalErrors string Fix issue #868 - pretty this string for 40 col terminals

  250. Deucе
    Wed Feb 05 2025 10:36:49 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CHANGES diff
    src/syncterm/CMakeLists.txt diff
    src/syncterm/Info.plist diff
    src/syncterm/Manual.txt diff
    src/syncterm/PackageInfo.in diff
    src/syncterm/dpkg-control.in diff
    src/syncterm/haiku.rdef diff
    src/syncterm/syncterm.c diff
    src/syncterm/syncterm.rc diff
    src/syncterm/term.c diff
    Fix regression in Atari auto-login In v1.5, it was changed to sending an ASCII CR instead of an ATASCII one, breaking auto-login.

  251. Deucе
    Wed Feb 05 2025 09:45:18 GMT-0800 (PST)
    Modified Files:
    

    src/conio/ciolib.adoc diff
    Add missing cell

  252. Deucе
    Wed Feb 05 2025 09:35:33 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CMakeLists.txt diff
    src/syncterm/Info.plist diff
    src/syncterm/Manual.txt diff
    src/syncterm/PackageInfo.in diff
    src/syncterm/dpkg-control.in diff
    src/syncterm/haiku.rdef diff
    src/syncterm/syncterm.c diff
    src/syncterm/syncterm.rc diff
    And now master is 1.6a

  253. Deucе
    Wed Feb 05 2025 09:18:02 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CHANGES diff
    src/syncterm/CMakeLists.txt diff
    src/syncterm/Info.plist diff
    src/syncterm/Manual.txt diff
    src/syncterm/PackageInfo.in diff
    src/syncterm/dpkg-control.in diff
    src/syncterm/haiku.rdef diff
    src/syncterm/syncterm.c diff
    src/syncterm/syncterm.rc diff
    SyncTERM 1.5

  254. Deucе
    Wed Feb 05 2025 08:22:13 GMT-0800 (PST)
    Modified Files:
    

    src/conio/Common.gmake diff
    src/conio/win32cio.c diff
    We don't need to dynamically load [GS]etConsoleMode()

  255. Rob Swindell (on Windows 11)
    Tue Feb 04 2025 21:25:06 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/mailsrvr.c diff
    Don't MSVC warning suppression

  256. Rob Swindell (on Windows 11)
    Tue Feb 04 2025 21:23:55 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/ntsvcs.c diff
    Assume Windows XP / Server 2003 or later No need to use LoadLibrary() and GetProcAddress() here

  257. Rob Swindell (on Windows 11)
    Tue Feb 04 2025 21:20:15 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/dirwrap.c diff
    Remove pre-WinXP support from getdiskspace() No need to use LoadLibrary and GetProcessAddress here any more either

  258. Deucе
    Tue Feb 04 2025 20:56:09 GMT-0800 (PST)
    Modified Files:
    

    src/build/Common.gmake diff
    Actually, bump Gmake builds to Windows 7. Vista ended support before XP did, and it doesn't seem to show up on any usage lists (while XP still has 0.27% of all Windows systems... which are 25.46% of systems on the internet) https://gs.statcounter.com/os-market-share

  259. Deucе
    Tue Feb 04 2025 19:50:13 GMT-0800 (PST)
    Modified Files:
    

    src/build/Common.gmake diff
    Default GNUmake to Vista/IE7 as well

  260. Rob Swindell (on Windows 11)
    Tue Feb 04 2025 19:28:12 GMT-0800 (PST)
    Modified Files:
    

    src/sexpots/sexpots.vcxproj diff
    src/vdmodem/vdmodem.vcxproj diff
    Target Windows Vista (not Windows XP)

  261. Rob Swindell (on Windows 11)
    Tue Feb 04 2025 19:15:35 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/mailsrvr.c diff
    Fix bug that broken mail received header RBL check 9 years ago in commit dbbfabf1b133b4116d69d4a13c38acfe1607a500

  262. Rob Swindell (on Windows 11)
    Tue Feb 04 2025 19:14:19 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/qwk.cpp diff
    Address MSVC warnings: check return value of sscanf Insure that msgcnt is initialized.

  263. Rob Swindell (on Windows 11)
    Tue Feb 04 2025 19:12:43 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/mailsrvr.c diff
    src/sbbs3/main.cpp diff
    Don't use deprecated functions: inet_addr() and gethostbyname()

  264. Rob Swindell (on Windows 11)
    Tue Feb 04 2025 18:52:49 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_socket.c diff
    Don't use deprecated function: inet_addr()

  265. Rob Swindell (on Windows 11)
    Tue Feb 04 2025 18:52:01 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/ftpsrvr.c diff
    Addrss some new MSVC warnings Check sscanf() result Don't use deprecated function: inet_addr()

  266. Rob Swindell (on Windows 11)
    Tue Feb 04 2025 18:48:28 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/netwrap.c diff
    malloc() result check, suppress MSVC warning

  267. Rob Swindell (on Windows 11)
    Tue Feb 04 2025 18:47:57 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/genwrap.c diff
    Use strlcpy instead of strncpy to insure termination, suppress MSVC warning

  268. Rob Swindell (on Windows 11)
    Tue Feb 04 2025 16:55:05 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/text_defaults.c diff
    Correct text.dat string number (comment) for QWKBadControlCommand

  269. Rob Swindell (on Windows 11)
    Tue Feb 04 2025 16:54:24 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/genwrap.c diff
    Fix common typo in comments

  270. Rob Swindell (on Windows 11)
    Tue Feb 04 2025 16:43:24 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/genwrap.c diff
    When building for Windows Vista+, use GetTickCount64() through-out At one point while migrating off the Windows XP compatible WinSDK and toolset, I was getting nice deprecation warnings in this file about uses of GetTickCount() and the 49 day roll-over isuse. I stopped getting those deprecation warnings (not sure when/why), but I'm still doing the right thing here/now and using the newer Win32 API function when it's available (always, for the versions of Windows we're building Synchronet and friends for).

  271. Rob Swindell (on Windows 11)
    Tue Feb 04 2025 16:40:02 GMT-0800 (PST)
    Added Files:
    

    src/build/target_winver.props diff
    Modified Files:

    src/conio/conio.vcxproj diff
    src/conio/conio_gdi.vcxproj diff
    src/conio/conio_sdl.vcxproj diff
    src/sbbs3/ans2asc.vcxproj diff
    src/sbbs3/asc2ans.vcxproj diff
    src/sbbs3/baja.vcxproj diff
    src/sbbs3/chksmb.vcxproj diff
    src/sbbs3/dupefind.vcxproj diff
    src/sbbs3/echocfg.vcxproj diff
    src/sbbs3/fixsmb.vcxproj diff
    src/sbbs3/fmsgdump.vcxproj diff
    src/sbbs3/ftpsrvr.vcxproj diff
    src/sbbs3/jsexec.vcxproj diff
    src/sbbs3/load_cfg.vcxproj diff
    src/sbbs3/mailsrvr.vcxproj diff
    src/sbbs3/makeuser.vcxproj diff
    src/sbbs3/node.vcxproj diff
    src/sbbs3/ntsvcs.vcxproj diff
    src/sbbs3/pktdump.vcxproj diff
    src/sbbs3/qwknodes.vcxproj diff
    src/sbbs3/sbbs.vcxproj diff
    src/sbbs3/sbbscon.vcxproj diff
    src/sbbs3/sbbsecho.vcxproj diff
    src/sbbs3/scfg/scfg.vcxproj diff
    src/sbbs3/services.vcxproj diff
    src/sbbs3/sexyz.vcxproj diff
    src/sbbs3/slog.vcxproj diff
    src/sbbs3/smbutil.vcxproj diff
    src/sbbs3/textgen.vcxproj diff
    src/sbbs3/trashman.vcxproj diff
    src/sbbs3/unbaja.vcxproj diff
    src/sbbs3/upgrade_to_v319.vcxproj diff
    src/sbbs3/upgrade_to_v320.vcxproj diff
    src/sbbs3/websrvr.vcxproj diff
    src/sftp/sftp.vcxproj diff
    src/smblib/smblib.vcxproj diff
    src/uifc/uifc.vcxproj diff
    src/xpdev/xpdev.vcxproj diff
    src/xpdev/xpdev_mt.vcxproj diff
    Target Windows Vista+ (not Windows XP) and enable enhanced instruction sets Synchronet v3.20 doesn't actually work on Windows XP due to depenendies in 3rd party libraries we link with and more recent ciolib improvements. So, no need to use an ancient WinSDK (7.0) or toolset anymore. Hooray! I'm not changing the versions of C or C++ language enabled (yet), but that's something we should consider doing. Also, re-enable enhanced x86 processor extensions (e.g. SSE2) as I doubt very much you can run Windows Vista on a pre-2000 CPU anyway. If this is a problem for anyone, it's trivial to disable the processor extensions again.

  272. Rob Swindell (on Windows 11)
    Tue Feb 04 2025 13:17:42 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/objects.mk diff
    src/sbbs3/sbbs3.sln diff
    src/sbbs3/targets.mk diff
    Removed Files:

    src/sbbs3/addfiles.c diff
    src/sbbs3/addfiles.vcxproj diff
    src/sbbs3/delfiles.c diff
    src/sbbs3/delfiles.vcxproj diff
    src/sbbs3/filelist.c diff
    src/sbbs3/filelist.vcxproj diff
    Remove deprecated projects (with JS equivalents) No need to continue to carry this baggage dupefind is another candidate for removal (soon)

  273. Rob Swindell (on Windows 11)
    Mon Feb 03 2025 18:55:53 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/sbbsecho.c diff
    Add debug-level log messages when import_netmail() returns a non-zero value To help debug any situations where import_netmail() might silently fail (though I don't anticipate there are any, Accession suggested there was).

  274. Rob Swindell (on Windows 11)
    Mon Feb 03 2025 18:55:53 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_bbs.cpp diff
    bbs.load_text() can now be used to load text*.ini file For sysops that don't want to use the user's chosen language to auto-load alternate text strings, they can specify some other filename from the ctrl directory (so long as it ends in .ini). I wouldn't use text.*.ini however, since those filenames are assumed to be language translations and will automatically appear in user_settings.js as a user-selectable language. text-*.ini would be fine though as an alternate text.ini filename: not colliding with text.ini or text.*.ini

  275. Rob Swindell (on Windows 11)
    Mon Feb 03 2025 18:55:53 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/prntfile.cpp diff
    Fix random menu/display file selection when some files can't be displayed When one or more files that match the menu file pattern can't be displayed (e.g. the user's terminal is not wide enough or there's any other menu file open/read error), pick another random menu file and try displaying that one, until either a menu file has been displayed successfully or all files (matching the pattern) have been attempted. For example, you have text/menu/random1.c80.msg and random2.msg, if the first file (random1.c80.msg) is selected at random but the user's terminal isn't at least 80 columns wide, another file will be picked at random. Since only random2.msg remains in the list (matching the pattern "random*"), that's the only file that will always be displayed.

  276. Rob Swindell (on Debian Linux)
    Mon Feb 03 2025 18:37:22 GMT-0800 (PST)
    Added Files:
    

    text/menu/random_sync_5m.c80.msg diff
    text/menu/random_sync_5m_fire.c80.msg diff
    New random Sync/Synchronet splash screens, by Smooth of Phenom Productions Thank you 5mooth!

  277. Rob Swindell (on Windows 11)
    Mon Feb 03 2025 17:13:09 GMT-0800 (PST)
    Added Files:
    

    text/menu/random_sync_abs_blue.c80.msg diff
    text/menu/random_sync_abs_dark.c80.msg diff
    text/menu/random_sync_abs_light.c80.msg diff
    text/menu/random_sync_starwars1.c80.msg diff
    text/menu/random_sync_starwars2.c80.msg diff
    text/menu/random_synch_gj_splash.c80.msg diff
    Rename random logon block-art splash screens to *.c80.msg Fix issue #867 Renamed to .msg to make for easier preview/edit with PabloDraw

  278. Rob Swindell (on Windows 11)
    Mon Feb 03 2025 11:20:26 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/userdat.c diff
    Fix ERROR 2 (...) in putnode.cpp ... opening "node.exb" Need the O_CREAT mode flag. Broken with commit d116f3622: I started using opennodeext() (created 5 years ago with commit 710bb23c1bd) rather than nopen(), and I didn't realize that opennodeext() was not including O_CREAT. Once the ctrl/node.exb was created (by anything), this error wouldn't happen. And it'd only be an issues for systems with text.dat's that included custom node status (NodeAction*) strings. Good catch Nelgin!

  279. Rob Swindell (on Windows 11)
    Mon Feb 03 2025 11:04:11 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/putmsg.cpp diff
    Correctly center lines of text that contain @-codes, after @center@ @-codes weren't expanded before the text length calculation, so the centering logic (offset in the user's terminal screen) would usually be incorrect as pointed out by Nelgin in #synchronet when we were discussing the |C @-code modifier (which is to center an @-code value in a field, not the screen). This issue was a known limitation of the fix to issue #418 (commit 8987150bd) but now that we have the expand_atcodes() function (hooray!), this is an easily solvable problem. Note: we're now calling center() withOUT the 'msg' parameter set to true, which means the @center@ code goes back to the previous (to issue #418 fix) behavior of just using bputs() for the centered text (we don't need the recursive call to pustmsg() to support @-codes any longer). This was the only reason that center() grew the optional 'msg' parameter so we likely can remove that option/feature at some date.

  280. Rob Swindell (on Windows 11)
    Mon Feb 03 2025 10:51:51 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/mailsrvr.c diff
    text/menu/restrict.asc diff
    Add new I-restriction, to disallow receipt of Internet mail to specific users (mail received from authenticated SMTP clients is still allowed) Previously, the M-restriction also prevent receipt of Internet mail from authenticated SMTP clients, so separate that restriction into the new 'I' restriction. This fixes issue #865

  281. Rob Swindell (on Windows 11)
    Mon Feb 03 2025 01:12:15 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci.yml diff
    Remove the PATH debug Also add cryptlib to PATH for jsexec smoke test, just in case

  282. Rob Swindell (on Windows 11)
    Mon Feb 03 2025 01:04:34 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci.yml diff
    CI_PROJECT_DIR looks like the more correct variable to use here

  283. Rob Swindell (on Windows 11)
    Mon Feb 03 2025 00:56:03 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci.yml diff
    Add an echo PATH debug statement again <sigh>

  284. Rob Swindell (on Windows 11)
    Mon Feb 03 2025 00:47:26 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci.yml diff
    We need the original PATH directories too

  285. Rob Swindell (on Windows 11)
    Mon Feb 03 2025 00:26:58 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci.yml diff
    Do the more powershell thing

  286. Rob Swindell (on Windows 11)
    Mon Feb 03 2025 00:03:52 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci.yml diff
    This PowerShell, not cmd.exe, as Deuce pointed out Oops.

  287. Rob Swindell (on Windows 11)
    Sun Feb 02 2025 23:55:57 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci.yml diff
    Try using quotes not clear why this would be required, but exampels seem to use 'em

  288. Rob Swindell (on Windows 11)
    Sun Feb 02 2025 23:45:35 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/logon.cpp diff
    Actually use the (first) shell we found that the user meets the requirements As discovered and reported by Deuce and Nelgin

  289. Rob Swindell (on Windows 11)
    Sun Feb 02 2025 23:45:14 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci.yml diff
    Echo the path for debugging

  290. Rob Swindell (on Windows 11)
    Sun Feb 02 2025 23:32:42 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci.yml diff
    Try setting the PATH to point to the win32.release/cryptlib/bin dir ... so we always use the correct cl32.dll when running the jsexec test suite on Windows.

  291. Rob Swindell (on Windows 11)
    Sun Feb 02 2025 23:01:48 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_cryptcert.c diff
    src/sbbs3/js_cryptcon.c diff
    src/sbbs3/js_cryptkeyset.c diff
    Throw a JS exception if do_cryptInit() fails Catch cryptlib version mismatch gracefully

  292. Deucе
    Sun Feb 02 2025 21:42:07 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_socket.c diff
    Remove accidental whitespace No functional change.

  293. Rob Swindell (on Windows 11)
    Sun Feb 02 2025 20:28:21 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_socket.c diff
    Correct JSDOCS for TLS PSK properties The wrong version nubmer was specified for these new properties - these properties were added in v3.20c which is represented numerically as 32002 in decimal. The description of the tls_psk_id property was missing socket_prop_desc.

  294. Rob Swindell (on Windows 11)
    Sun Feb 02 2025 19:55:59 GMT-0800 (PST)
    Modified Files:
    

    3rdp/win32.release/cryptlib/bin/cl32.dll diff
    3rdp/win32.release/cryptlib/bin/cl32.lib diff
    3rdp/win32.release/cryptlib/include/cryptlib.h diff
    The latest cryptlib patched and built for win32-x86 release

  295. Deucе
    Sun Feb 02 2025 19:09:20 GMT-0800 (PST)
    Modified Files:
    

    exec/broker.js diff
    Support uid/pw only auth There are now two ways to authenticate with the broker: 1) TLS PSK with a sysop account, and set the password field at the MQTT level to the system password (user field, if present is ignored). This is the prefered method as it provides mutual authentication and you simply can't steal credentials with MITM. 2) Synchronet TLS certificate, sysop username and the users password followed by a colon, followed by the system password. The server authentication will now depend on the appropriate trust chain in the client. If using a Let's Encrypt certificate for example, you can' securely connect to localhost with this method. tools and libraries tend to allow TLS-PSK with password at the MQTT level, many GUI tools do not allow TLS-PSK.

  296. Deucе
    Sun Feb 02 2025 19:09:20 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_socket.c diff
    Use the new TLS PSK flag to control if sock.tls_psk_id is set Now both the "regular" certificate, and PSK will be supported on a TLS socket, and it's up to the client to check which was used.

  297. Deucе
    Sun Feb 02 2025 19:09:20 GMT-0800 (PST)
    Added Files:
    

    3rdp/build/cl-add-psk-flag.patch diff
    Modified Files:

    3rdp/build/CMakeLists-cl.txt diff
    3rdp/build/CMakeLists.txt diff
    3rdp/build/GNUmakefile diff
    Add patch to flag PSK TLS sessions

  298. Rob Swindell (on ChromeOS)
    Sun Feb 02 2025 14:53:24 GMT-0800 (PST)
    Modified Files:
    

    ctrl/text.dat diff
    Fix number of QWKBadControlCommand trimmed some trailing whitespace

  299. Deucе
    Sun Feb 02 2025 12:14:55 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/sbbs.version diff
    Make sad linkers happy.

  300. Deucе
    Sun Feb 02 2025 11:56:08 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/sbbs.version diff
    Hide more Cryptlib symbols

  301. Deucе
    Sun Feb 02 2025 10:07:55 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/webget.c diff
    It appears the Windows won't allow rename()ing a file over top of an existing one.

  302. Deucе
    Sun Feb 02 2025 00:05:20 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_socket.c diff
    Add Socket.tls_psk_id property If tls_psk is used, indicates which entry in tls_psk was used by the remote.

  303. Deucе
    Sat Feb 01 2025 22:52:43 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_mqtt.c diff
    Lower-case password in JS as well

  304. Deucе
    Sat Feb 01 2025 15:35:28 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/webget.c diff
    Fix webget of chunked responses Broken with the paranoid_strtoul() addition

  305. Rob Swindell (on Debian Linux)
    Sat Feb 01 2025 15:00:33 GMT-0800 (PST)
    Modified Files:
    

    exec/user_settings.js diff
    Default "Foward email to netmail" answer to the current setting As much as possible, ENTER should mean "no change".

  306. Rob Swindell (on Windows 11)
    Sat Feb 01 2025 14:49:27 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/useredit.cpp diff
    text/menu/uedit.asc diff
    Add user NetMail address edit option ('N' command) to UEDIT A sysop can do the same by going through the 'I' (user config/settings command), but that's a bit more convoluted.

  307. Rob Swindell (on Debian Linux)
    Sat Feb 01 2025 13:56:21 GMT-0800 (PST)
    Modified Files:
    

    exec/load/newsutil.js diff
    Use the from_net_addr even if the from_net_type is 0/NONE Since it's technically a "local post", but the user/sysop wants their client- provided email address to appear in the header, use it, if provided (don't use a made-up BBS email address that may not be valid). For Accession

  308. Deucе
    Sat Feb 01 2025 13:49:20 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_mqtt.c diff
    src/sbbs3/mqtt.c diff
    src/sbbs3/scfg/scfgnet.c diff
    src/sbbs3/scfgdefs.h diff
    src/sbbs3/scfglib1.c diff
    Add new "Synchronet Broker" MQTT TLS type With this, you don't need a username, password, PSK, or PSK ID, certs, CAs, etc, and things just work by magic (when using the Synchronet broker)

  309. Deucе
    Sat Feb 01 2025 12:40:58 GMT-0800 (PST)
    Modified Files:
    

    exec/broker.js diff
    Call client_add()/client_remove() as appropriate For when running as a service.

  310. Deucе
    Sat Feb 01 2025 12:14:41 GMT-0800 (PST)
    Modified Files:
    

    exec/broker.js diff
    src/sbbs3/js_socket.c diff
    Don't allow public key auth if tls_psk is set

  311. Deucе
    Fri Jan 31 2025 23:55:25 GMT-0800 (PST)
    Modified Files:
    

    exec/broker.js diff
    Add some documentation about how the script works. As always when writing documentation, fix things that aren't quite right... we now schedule nextPacket, but run each packet to completion as long as we have all the bytes.

  312. Deucе
    Fri Jan 31 2025 22:33:37 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/webget.c diff
    Remove extra set of errno. We don't need this anymore because the paranoid wrapper does it.

  313. Deucе
    Fri Jan 31 2025 22:27:40 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/webget.c diff
    Add an use new strtou?ll?() wrappers in webget.c This is kind of a prototype for xpdev... but it's a bit klunky. The issue these fix is that some C libraries (Windows and GLibC) will return 0 and leave errno unset when no digits are converted, while other libraries (FreeBSD and musl) will set errno if no digits are converted. This means that even setting errno to zero before calling, then checking it if the return value is zero is not enough to catch errors. This actually led to Windows and (most) Linux systems not being able to download the web lists because of a bug where it was converting starting in the middle of the string rather than where the numbers are. It worked fine on Alpine Linux and FreeBSD though.

  314. Deucе
    Fri Jan 31 2025 21:45:43 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/webget.c diff
    Fix header parsing... content-length: and content-transfer-encoding: were badly broken.

  315. Rob Swindell (on Windows 11)
    Fri Jan 31 2025 21:10:52 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/scfg/scfgxtrn.c diff
    Fix bug with fixed event toggles I'm totally perplexed that none of the compilers we have warned about this obvious incorrect usage of the toggle_flag() function. Not warning about passing false (0/NULL) for a char* makes some sense, but not the passing of a const char* in place of a bool (int)? Maybe we should be building with -Wall?

  316. Deucе
    Fri Jan 31 2025 20:55:12 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/webget.c diff
    fclose() newfile before renaming. Thanks Microsoft!

  317. Deucе
    Fri Jan 31 2025 20:52:11 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_socket.c diff
    Fix last commit. If we called accept(), it's not datagram, and if you're using SCTP and Synchronet lies to you, you can fix it yourself.

  318. Deucе
    Fri Jan 31 2025 19:58:23 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_socket.c diff
    Set Socket.type correctly on accept() from multisock

  319. Deucе
    Fri Jan 31 2025 19:58:23 GMT-0800 (PST)
    Modified Files:
    

    exec/broker.js diff
    Make broker.js capable of running as a static service.

  320. Deucе
    Fri Jan 31 2025 19:58:23 GMT-0800 (PST)
    Modified Files:
    

    exec/broker.js diff
    src/sbbs3/js_socket.c diff
    src/sbbs3/js_socket.h diff
    Add support for TLS PSK auth For use by broker.js which now requires a Sysop User ID and password as the TLS PSK, and requires the system password in the MQTT password field.

  321. Rob Swindell (on Debian Linux)
    Fri Jan 31 2025 18:18:04 GMT-0800 (PST)
    Modified Files:
    

    exec/mqtt_spy.js diff
    Catch and print exceptions Because of the way this script is invoked from str_cmds.js (using js.exec) any exceptions were just silent failures, making debugging issues (e.g. the recent regression with the global ascii() function) difficult.

  322. Rob Swindell (on Debian Linux)
    Fri Jan 31 2025 18:16:26 GMT-0800 (PST)
    Modified Files:
    

    exec/irc.js diff
    Increase connect timeout from 15 to 30 seconds vert.synchro.net is taking > 15 seconds after initial IRC version notice

  323. Rob Swindell (on Windows 11)
    Fri Jan 31 2025 18:14:57 GMT-0800 (PST)
    Modified Files:
    

    ctrl/text.dat diff
    src/sbbs3/msgtoqwk.cpp diff
    src/sbbs3/qwk.cpp diff
    src/sbbs3/telgate.cpp diff
    src/sbbs3/text.h diff
    src/sbbs3/text_defaults.c diff
    src/sbbs3/text_id.c diff
    Replace some hard-coded strings with Ctrl-A codes with text.dat strings As Nelgin pointed out, there are a few hard-coded strings in the C++ source with attribute (Ctrl-A) codes still. This commit takes care of 5 of them: - TelnetGatewayPrompt - QWKEndOfMessage - QWKTagLineFmt - QWKControlCommand - QWKBadControlCommand

  324. Rob Swindell (on Windows 11)
    Fri Jan 31 2025 18:14:57 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/logon.cpp diff
    src/sbbs3/main.cpp diff
    src/sbbs3/sbbsdefs.h diff
    src/sbbs3/scfg/scfgxtrn.c diff
    src/sbbs3/scfgdefs.h diff
    src/sbbs3/scfglib1.c diff
    src/sbbs3/scfgsave.c diff
    Add an optional weekly fixed system event Yes, you can do the same thing with timed events, pretty much

  325. Rob Swindell (on Windows 11)
    Fri Jan 31 2025 18:14:56 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/getnode.cpp diff
    src/sbbs3/main.cpp diff
    src/sbbs3/sbbsdefs.h diff
    Rename SS_NEWDAY to SS_DATE_CHANGED Embarassingly, I'd added SS_NEW_DAY recently (for a different purpose) with such a similiar name. So let's rename this flag since it serves a very different purpose and avoid the confusion between the two flags.

  326. Rob Swindell (on Windows 11)
    Fri Jan 31 2025 18:14:56 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/sbbsdefs.h diff
    src/sbbs3/useredit.cpp diff
    Eliminate SS_INUEDIT This hasn't done anything SBBSv3 - no way to enter internal user editor recursively.

  327. Rob Swindell (on Windows 11)
    Fri Jan 31 2025 18:14:56 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/execfunc.cpp diff
    src/sbbs3/sbbsdefs.h diff
    Eliminate SS_ANSCAP - never did anything in SBBS v3, that I recall

  328. Rob Swindell (on Windows 11)
    Fri Jan 31 2025 18:14:56 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/websrvr.c diff
    More use of errprintf() to reduce duplicate error log messages

  329. Rob Swindell (on Windows 11)
    Fri Jan 31 2025 18:14:56 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/global/except.js diff
    src/sbbs3/js_global.c diff
    mqtt_spy.js depends on the previous behavior of ascii() When passed null or undefined, it needs to return null or undefined. Document that behavior.

  330. Deucе
    Fri Jan 31 2025 16:48:08 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_cryptcert.c diff
    Fix JSDOCS It's CryptCert.FORMAT.XXX

  331. Deucе
    Fri Jan 31 2025 16:10:59 GMT-0800 (PST)
    Modified Files:
    

    exec/broker.js diff
    Fix inverted comparisons in SUB and UNSUB messages

  332. Deucе
    Fri Jan 31 2025 14:59:20 GMT-0800 (PST)
    Modified Files:
    

    exec/broker.js diff
    Do some of that refactor Add a nextPacket() method that will get the next packet Add a Connection.parseBytes() method to consume the rx_buf Simplify Packet.newBytes() to only do socket recv() Clear RX buffer when closing socket

  333. Deucе
    Fri Jan 31 2025 14:28:18 GMT-0800 (PST)
    Modified Files:
    

    exec/broker.js diff
    ... But only if it's not null already.

  334. Deucе
    Fri Jan 31 2025 14:27:35 GMT-0800 (PST)
    Modified Files:
    

    exec/broker.js diff
    Set sock to null *after* closing it.

  335. Deucе
    Fri Jan 31 2025 14:25:02 GMT-0800 (PST)
    Modified Files:
    

    exec/broker.js diff
    More fixes... it seems broadly usefulish now - Increment bytes required for every extra VBI byte we learn about - If sock is null, don't look at sock.connection - Set sock to null after close - Don't read from sock unless we need some bytes - If we already have some bytes, parse them There's a couple hacks in here that should be refactored though.

  336. Deucе
    Fri Jan 31 2025 13:04:44 GMT-0800 (PST)
    Modified Files:
    

    exec/broker.js diff
    Log who packets are going to/from, fix potential leak in previous commit

  337. Deucе
    Fri Jan 31 2025 12:50:28 GMT-0800 (PST)
    Modified Files:
    

    exec/broker.js diff
    After receiving all packet data, receive the next packet. This appears to be why it was hanging. :D

  338. Deucе
    Fri Jan 31 2025 12:36:11 GMT-0800 (PST)
    Added Files:
    

    exec/broker.js diff
    Add a pure-JS MQTT broker This is not nearly ready for full-time yet, but it seems to mostly limp along fine... there's some issues with the callbacks and such, and the TLS support isn't currently usable by Synchronet. Worth committing though.

  339. Rob Swindell (on Debian Linux)
    Fri Jan 31 2025 12:24:46 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_user.c diff
    src/sbbs3/scfg/scfg.c diff
    src/sbbs3/scfg/scfgmsg.c diff
    src/sbbs3/scfg/scfgsub.c diff
    src/sbbs3/scfg/scfgxfr2.c diff
    src/sbbs3/scfg/scfgxtrn.c diff
    src/sbbs3/scfglib.h diff
    src/sbbs3/scfglib1.c diff
    src/sbbs3/userdat.c diff
    Better duplicate "key value" detection/rejection for configuration settings Internal codes are always treated as keys (in a database sense) and should be unique, but they weren't always enforced to be unique in SCFG. There's still a few config items with internal codes that aren't forced unique (e.g. chat channels). File Library short names and Mesage Group short names are also key values and must be unique and that's now enforced as well. Remove the default name for new File Libraries and Message Groups (which are likely duplicate anyway).

  340. Rob Swindell (on Debian Linux)
    Fri Jan 31 2025 12:14:19 GMT-0800 (PST)
    Modified Files:
    

    src/uifc/uifc.h diff
    src/uifc/uifc32.c diff
    Add K_CHANGED mode flag for uifc.input() Used in combination with K_EDIT, if the string isn't actually changed, return -1 (same as abort/ESC). This allows the elimination of some save/compare/copy code in SCFG where we only care to even look at the string if it was changed from its existing value.

  341. Deucе
    Thu Jan 30 2025 10:42:52 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/menu.c diff
    Fix attempt to free static const string in online menu Broken when I removed the ALT-X shortcuts for ANSI/Curses modes. Should fix issue #188

  342. Deucе
    Wed Jan 29 2025 20:56:59 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/webget.c diff
    More suppressions

  343. Deucе
    Wed Jan 29 2025 19:52:21 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/webget.c diff
    Attempt to silence Coverity a bit harder

  344. Deucе
    Tue Jan 28 2025 20:14:18 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/webget.c diff
    Whoops, add the string

  345. Deucе
    Tue Jan 28 2025 20:05:18 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/bbslist.c diff
    src/syncterm/webget.c diff
    A bit more Coverity follow-on

  346. Deucе
    Tue Jan 28 2025 19:29:37 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/bbslist.c diff
    src/syncterm/syncterm.c diff
    src/syncterm/term.c diff
    src/syncterm/webget.c diff
    src/xpdev/named_str_list.c diff
    Fix all the new issues Coverity complains about A couple were valid issues, but the majority were impossible.

  347. Deucе
    Tue Jan 28 2025 17:17:26 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CHANGES diff
    Mention the removal of login delays. 20ms, so you wouldn't notice, but it may be the cause of problem reports in the future, so best to have it logged somewhere.

  348. Deucе
    Tue Jan 28 2025 17:13:58 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/term.c diff
    Send login info in a single conn_send() call Should "fix" the timing difference in login info between modes. This removes a 10ms SLEEP() between the different pieces of data, and would likely have resolved ticket 185 if it wasn't already closed.

  349. Deucе
    Tue Jan 28 2025 15:32:12 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/bbslist.c diff
    Reload the lists after the list list is modified

  350. Deucе
    Tue Jan 28 2025 15:29:17 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/bbslist.c diff
    Add defaults for first BBS list

  351. Deucе
    Tue Jan 28 2025 15:13:45 GMT-0800 (PST)
    Modified Files:
    

    exec/sbbslist.js diff
    Add syncterm-ssh and syncterm-telnet commands These prefer the protocol after the - and only include one listing per BBS entry.

  352. Deucе
    Tue Jan 28 2025 15:12:39 GMT-0800 (PST)
    Modified Files:
    

    exec/load/sbbslist_lib.js diff
    Add options to specify a preferred order of services Default is SSH, then Telnet, then RLogin The most preferred one is the one that doesn't get the protocol as part of the BBS name. Also, add an "onlyone" parameter (defaults to false) that requests each BBS only gets one entry.

  353. Deucе
    Tue Jan 28 2025 11:56:16 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci-unix.yml diff
    Add -S to jsdoor too

  354. Deucе
    Tue Jan 28 2025 11:55:20 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci-unix.yml diff
    Add -S to jsexec commandlines so we get status info

  355. Deucе
    Tue Jan 28 2025 11:32:25 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/test.js diff
    Flush stdout after each test. This makes watching the valgrind tests more entertaining. Likely makes it easier to tell what test crashed too, but let's face it, I'm doing this to be entertained.

  356. Deucе
    Tue Jan 28 2025 11:26:05 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/suppressions.vg diff
    Add suppression for FreeBSD pthread_cond_init()

  357. Deucе
    Tue Jan 28 2025 11:07:38 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CHANGES diff
    Mention the telnet defer negotiation option

  358. Deucе
    Tue Jan 28 2025 09:44:53 GMT-0800 (PST)
    Modified Files:
    

    src/conio/retro.c diff
    Don't call env cb if it's NULL

  359. Deucе
    Tue Jan 28 2025 09:44:17 GMT-0800 (PST)
    Modified Files:
    

    src/conio/retro.c diff
    Don't call video_cb() if it's NULL

  360. Deucе
    Tue Jan 28 2025 09:42:19 GMT-0800 (PST)
    Modified Files:
    

    src/conio/retro.c diff
    Call exit() rather than sleep forever in retro_deinit() This doesn't fix anything since calling exit() from a DLL is nonsense, but at least it's less wrong than just waiting forever. Also, when main() returns, tell the frontent to shut down. It's most likely that this ends up causing the frontend to crash, but if the stars align, it may exit instead.

  361. Deucе
    Tue Jan 28 2025 08:56:30 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/bbslist.c diff
    src/syncterm/bbslist.h diff
    src/syncterm/conn_telnet.c diff
    src/syncterm/conn_telnet.h diff
    src/syncterm/telnets.c diff
    Add option to defer telnet negotiation. Some BBSs (ms.bsrealm.net) have a mailer running on the initial socket, and telnet negotiations with that disconnect. Other systems could potentially perform the negotiation then fail to pass the telnet state to the next program. With the new "Defer Negotiate" telnet option, SyncTERM won't send any telnet negotiations until it receives a telnet command from the remote first.

  362. Deucе
    Mon Jan 27 2025 23:21:46 GMT-0800 (PST)
    Added Files:
    

    src/conio/libretro.h diff
    It seems everyone is expected to vendor libretro.h

  363. Deucе
    Mon Jan 27 2025 23:20:18 GMT-0800 (PST)
    Modified Files:
    

    src/conio/retro.c diff
    Heh, fix codes over 255 as well.

  364. Deucе
    Mon Jan 27 2025 23:12:01 GMT-0800 (PST)
    Modified Files:
    

    src/conio/retro.c diff
    Derp, map the raw key too.

  365. Deucе
    Mon Jan 27 2025 22:17:20 GMT-0800 (PST)
    Modified Files:
    

    src/conio/retro.c diff
    Don't export keyval Win32CIO already does that.

  366. Deucе
    Mon Jan 27 2025 22:14:25 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/webget.c diff
    Fix WITHOUT_CRYPTLIB

  367. Deucе
    Mon Jan 27 2025 22:14:17 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/GNUmakefile diff
    Fix WITH_RETRO for Win32

  368. Deucе
    Mon Jan 27 2025 21:46:07 GMT-0800 (PST)
    Modified Files:
    

    src/conio/retro.c diff
    src/syncterm/ssh.c diff
    A bit more work on retro... get keyboard map working But, this is incompatible with a bunch of things, including cryptlib, so shelve it for now.

  369. Deucе
    Mon Jan 27 2025 20:44:51 GMT-0800 (PST)
    Modified Files:
    

    src/conio/CMakeLists.txt diff
    src/syncterm/CMakeLists.txt diff
    Add libretro support to CMake

  370. Deucе
    Mon Jan 27 2025 20:27:41 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/bbslist.c diff
    src/xpdev/named_str_list.c diff
    Fix the many crashes when there are no web lists configured. Heh, whoops.

  371. Rob Swindell (on Debian Linux)
    Mon Jan 27 2025 18:30:32 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/uedit/uedit.c diff
    Remember the current menu option/selection for each sub-menu (list)

  372. Rob Swindell (on Windows 11)
    Mon Jan 27 2025 18:30:21 GMT-0800 (PST)
    Added Files:
    

    text/menu/random_sync_abs_blue.asc diff
    text/menu/random_sync_abs_dark.asc diff
    text/menu/random_sync_abs_light.asc diff
    Some more random sync logos, these by abstrakt (fire), circa 2023 These use column 80 so I had to use the '-80' switch with ans2asc (which is a really nice feature!) or else they didn't display correctly on wider terminals.

  373. Rob Swindell (on Windows 11)
    Mon Jan 27 2025 18:30:21 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/useredit/MainFormUnit.cpp diff
    Use the new userdat api functions: del_user() and undel_user() Display the user's deletion date (when available) - always displayed in numeric format because datestr() takes a time_t argument and Borland's time_t is just 32-bits still. Fix typo in "Active User" string

  374. Deucе
    Mon Jan 27 2025 18:02:39 GMT-0800 (PST)
    Added Files:
    

    src/conio/retro.c diff
    src/conio/retro.h diff
    Modified Files:

    src/conio/Common.gmake diff
    src/conio/GNUmakefile diff
    src/conio/ciolib.c diff
    src/conio/ciolib.h diff
    src/syncterm/GNUmakefile diff
    src/syncterm/ssh.c diff
    Initial hack of libretro build. Does output and "normal" keys work. That was easy. :)

  375. Rob Swindell
    Mon Jan 27 2025 13:40:03 GMT-0800 (PST)
    Modified Files:
    

    docs/slyedit_readme.txt diff
    Removed Files:

    ctrl/slyedit_readme.txt diff
    Merge branch 'slyedit_readme_location' into 'master' SlyEdit: The readme should only be in docs (not ctrl). Also, updated the version history of the correct one so that it's complete. See merge request main/sbbs!495

  376. Eric Oulashin
    Mon Jan 27 2025 13:40:03 GMT-0800 (PST)
    Modified Files:
    

    docs/slyedit_readme.txt diff
    Removed Files:

    ctrl/slyedit_readme.txt diff
    SlyEdit: The readme should only be in docs (not ctrl). Also, updated the version history of the correct one so that it's complete.

  377. Deucе
    Mon Jan 27 2025 13:31:38 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci.yml diff
    Re-enable Valgrind on FreeBSD. I have hacked up a patch to Valgrind.

  378. Deucе
    Mon Jan 27 2025 11:01:56 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/conn.c diff
    src/syncterm/conn.h diff
    src/syncterm/conn_telnet.c diff
    src/syncterm/rlogin.c diff
    src/syncterm/ssh.c diff
    src/syncterm/telnets.c diff
    src/syncterm/webget.c diff
    Use a 5 second connect() timeout when updating the cache

  379. Deucе
    Mon Jan 27 2025 11:01:00 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/webget.c diff
    Initialize sess->sock INVALID_SOCKET != 0, so this potentially ended up closing stdin and breaking ANSI and Curses modes.

  380. Deucе
    Mon Jan 27 2025 09:25:51 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/menu.c diff
    Don't show Alt shortcuts in modes that don't support them. "Fixes" ticket 184.

  381. Deucе
    Mon Jan 27 2025 09:07:28 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/term.c diff
    Fix legacy attributes when redrawing status bar legacy_attr is the CGA attribute, not ANSI colours. :D Fixes ticket 183.

  382. Deucе
    Sun Jan 26 2025 23:06:04 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci.yml diff
    Disable Valgrind on FreeBSD for now. I'm out of ideas and want the pipes flowing.

  383. Deucе
    Sun Jan 26 2025 23:03:33 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_global.c diff
    src/sbbs3/js_user.c diff
    Fix all the "Not in request" assertions with debug JS This still appears to not fix valgrind on FreeBSD. :( The background thread thing is interesting though because there's an implication that the thread ID matters to GC in the assertion, and we were very sloppy about requests in there.

  384. Deucе
    Sun Jan 26 2025 22:45:18 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_file.c diff
    Fix spurious call to JS_THIS_OBJECT() This appears to be why valgrind on FreeBSD was failing. You can't actually call this in a constructor because creating this is the whole point of calling it.

  385. Rob Swindell (on ChromeOS)
    Sun Jan 26 2025 21:05:55 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/scfg/scfgxfr2.c diff
    src/sbbs3/scfgdefs.h diff
    src/sbbs3/scfgsave.c diff
    Store the configured values in the SMB status header of file bases when changed (in SCFG). This is a fix for issue #861

  386. Rob Swindell (on ChromeOS)
    Sun Jan 26 2025 20:21:18 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/sbbsdefs.h diff
    src/sbbs3/scfg/scfgmsg.c diff
    src/sbbs3/scfg/scfgsub.c diff
    src/sbbs3/scfgdefs.h diff
    src/sbbs3/scfgsave.c diff
    Replace SUB_HDRMOD sub_t.misc flag with bool cfg_modified No reason waste a (stored) config/settings flag (bit) for this purpose

  387. Deucе
    Sun Jan 26 2025 18:47:48 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/suppressions.vg diff
    Add a wildcard so these work in debug builds too

  388. Deucе
    Sun Jan 26 2025 18:34:19 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/suppressions.vg diff
    Fix last commit. Put the "fun" back in malloc()!

  389. Deucе
    Sun Jan 26 2025 18:32:07 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/suppressions.vg diff
    New JS suppressions for FreeBSD 14 and updated Valgrind

  390. Deucе
    Sun Jan 26 2025 18:25:08 GMT-0800 (PST)
    Modified Files:
    

    src/conio/ciolib.adoc diff
    src/conio/sdl_con.c diff
    src/conio/win32gdi.c diff
    src/conio/x_events.c diff
    src/syncterm/CHANGES diff
    src/syncterm/Manual.txt diff
    Add Alt+Home to centre window on screen Works in SDL mode and X11 mode with an appropriate Window Manager (I was going to use center window gravity, but since my WM doesn't support that, I just assume that all the good ones dont). Not tested in Win32-GDI mode, but should likely work I suppose.

  391. Rob Swindell
    Sun Jan 26 2025 14:54:48 GMT-0800 (PST)
    Modified Files:
    

    ctrl/SlyEdit.cfg diff
    ctrl/slyedit_readme.txt diff
    docs/slyedit_readme.txt diff
    exec/SlyEdit.js diff
    exec/SlyEdit_DCTStuff.js diff
    exec/SlyEdit_IceStuff.js diff
    exec/SlyEdit_Misc.js diff
    exec/slyedcfg.js diff
    Merge branch 'slyedit_input_timeout_with_getkey' into 'master' SlyEdit: User activity timeout improvement (via use of console.getkey() instead of the custom function that was being used) See merge request main/sbbs!494

  392. Eric Oulashin
    Sun Jan 26 2025 14:54:48 GMT-0800 (PST)
    Modified Files:
    

    ctrl/SlyEdit.cfg diff
    ctrl/slyedit_readme.txt diff
    docs/slyedit_readme.txt diff
    exec/SlyEdit.js diff
    exec/SlyEdit_DCTStuff.js diff
    exec/SlyEdit_IceStuff.js diff
    exec/SlyEdit_Misc.js diff
    exec/slyedcfg.js diff
    SlyEdit: User activity timeout improvement (via use of console.getkey() instead of the custom function that was being used)

  393. Deucе
    Sun Jan 26 2025 14:19:33 GMT-0800 (PST)
    Added Files:
    

    3rdp/build/js-map-aligned.patch diff
    Modified Files:

    3rdp/build/GNUmakefile diff
    Fix egregious race/infinite loop bug for FreeBSD and NetBSD The allocator has a loop trying to map an aligned page, and there's an obvious (and commented-on) race condition in it. The purpose is apparently to get an aligned allocation using mmap(). For FreeBSD and NetBSD, we can simply pass the desired alignment to mmap() and we're good. Other platforms are still hosed though. This generally didn't happen, but something about FreeBSD 14.2 on a many core (16+HT) system causes it to park in the loop and stay there, adding new threads to to fun as it goes along. This uses MAP_ALLOCED() if defined avoid the loop completely. We'll see if it works soon enough.

  394. Deucе
    Sun Jan 26 2025 11:15:49 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci-unix.yml diff
    Now that I know about GIT_STRATEGY, use it everywhere! The docs suggest there's a place to set the default, but I don't see it other than the "Variables", which I don't really want to do. Regardless, switch to explicit "fetch" (which falls back to clone)

  395. Deucе
    Sun Jan 26 2025 10:53:05 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci-unix.yml diff
    Fix path in previous commit.

  396. Deucе
    Sun Jan 26 2025 10:48:28 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci-unix.yml diff
    Make the tests and cleanup phase not require a git checkout Archive the ctrl and exec dirs during sbbs-build for the tests. Also, fix use of sbbs-build archive... on FreeBSD, there are two, we need to use the right one.

  397. Deucе
    Sun Jan 26 2025 10:17:40 GMT-0800 (PST)
    Modified Files:
    

    src/conio/ciolib.c diff
    src/conio/ciolib.h diff
    src/conio/mouse.c diff
    src/syncterm/CHANGES diff
    src/syncterm/bbslist.c diff
    src/syncterm/syncterm.c diff
    src/syncterm/syncterm.h diff
    Add toggle to invert mouse wheel. It actually inverts buttons four and five, but we're not going to tell people that. Implements feature request 75.

  398. Deucе
    Sun Jan 26 2025 09:07:25 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/Manual.txt diff
    src/syncterm/bbslist.c diff
    src/syncterm/webget.c diff
    Add help, documentation, and better error messages Feature is likely "done" at this point.

  399. Rob Swindell
    Sat Jan 25 2025 22:17:09 GMT-0800 (PST)
    Modified Files:
    

    exec/load/dd_lightbar_menu.js diff
    xtrn/DDMsgReader/DDMsgReader.js diff
    xtrn/DDMsgReader/ddmr_cfg.js diff
    xtrn/DDMsgReader/readme.txt diff
    xtrn/DDMsgReader/revision_history.txt diff
    Merge branch 'dd_msg_reader_timeout_disconnect_and_dd_lightbar_menu_console_getkey' into 'master' DDMsgReader: Inactivity disconnection more consistent with Synchronet behavior. DDLightbarMenu: Use console.getkey() instead of getKeyWithESCChars(), as getKeyWithESCChars() is no longer needed. See merge request main/sbbs!493

  400. Eric Oulashin
    Sat Jan 25 2025 22:17:09 GMT-0800 (PST)
    Modified Files:
    

    exec/load/dd_lightbar_menu.js diff
    xtrn/DDMsgReader/DDMsgReader.js diff
    xtrn/DDMsgReader/ddmr_cfg.js diff
    xtrn/DDMsgReader/readme.txt diff
    xtrn/DDMsgReader/revision_history.txt diff
    DDMsgReader: Inactivity disconnection more consistent with Synchronet behavior. DDLightbarMenu: Use console.getkey() instead of getKeyWithESCChars(), as getKeyWithESCChars() is no longer needed.

  401. Rob Swindell (on ChromeOS)
    Sat Jan 25 2025 21:48:32 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_bbs.cpp diff
    bbs.revert_text() (called with no args) is supposed to revert all text strings and not throw and exception. :-( This was broken in commit 6dbd2fec644cd1f153137bc27432cf3e127ca81a Caught by code review.

  402. Rob Swindell (on ChromeOS)
    Sat Jan 25 2025 20:40:54 GMT-0800 (PST)
    Modified Files:
    

    ctrl/file.ini diff
    Read and rewrote with SCFG (no functional changes) Just adds new keys/default values

  403. Rob Swindell (on ChromeOS)
    Sat Jan 25 2025 20:36:52 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/scfg/scfgxfr1.c diff
    Add more details on what the Supported Archive Formats option controls (and doesn't control)

  404. Rob Swindell (on ChromeOS)
    Sat Jan 25 2025 18:53:25 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/bbslist.c diff
    A typecast to suppress GCC warning about loss of constiness

  405. Deucе
    Sat Jan 25 2025 18:48:59 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/bbslist.c diff
    Use the new iniAppendSectionWithNamedStrings() function Should be better than what I was doing.

  406. Rob Swindell (on ChromeOS)
    Sat Jan 25 2025 18:41:39 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/ini_file.c diff
    src/xpdev/ini_file.h diff
    Add iniAppendSectionWithNamedStrings() If you have list of named strings (named_string_t) and want to add them as a section of key/value pairs to a [section] in .ini formatted string list, this is the function you want to use. I'm not sure if this is exactly what Deuce had in mind (for use in SyncTERM), but it wasn't a lot of code to write and might be useful to someone someday.

  407. Deucе
    Sat Jan 25 2025 18:27:08 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/bbslist.c diff
    Add the thing to save the web lists.

  408. Deucе
    Sat Jan 25 2025 18:09:22 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/bbslist.c diff
    src/syncterm/syncterm.c diff
    src/syncterm/syncterm.h diff
    Have get_syncterm_filename() get the system cache path too Now we can easily try downloading a URI when it's configured. Still can't save the changes though.

  409. Rob Swindell (on Windows 11)
    Sat Jan 25 2025 17:48:54 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/sbbscon.vcxproj diff
    sbbscon include ver.cpp which needs to (now) #include archive.h so needs the libarchive property sheet to get that include dir added

  410. Rob Swindell (on Windows 11)
    Sat Jan 25 2025 17:48:30 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_console.cpp diff
    Resolve MSVC warning

  411. Rob Swindell (on Debian Linux)
    Sat Jan 25 2025 17:33:38 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/ver.cpp diff
    archive.h is a system header, use the right #include syntax should fix MSVC build error: ver.cpp(29): fatal error C1083: Cannot open include file: 'archive.h': No such file or directory

  412. Rob Swindell (on Debian Linux)
    Sat Jan 25 2025 17:26:03 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_archive.c diff
    src/sbbs3/jsdoor.c diff
    Don't bother creating Archive.supported_formtsf or jsdoor

  413. Rob Swindell (on Debian Linux)
    Sat Jan 25 2025 17:22:16 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_console.cpp diff
    Add getkey_inactivity_warning property (alias: inactivity warning) Configured duration in seconds before warning about pending disconnection due to user/keyboard inactivity (or 0 if disabled).

  414. Deucе
    Sat Jan 25 2025 17:08:02 GMT-0800 (PST)
    Modified Files:
    

    src/conio/allfonts.c diff
    Fix build without fonts

  415. Rob Swindell (on Debian Linux)
    Sat Jan 25 2025 16:37:01 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/ver.cpp diff
    Display the libarchive version details along with the other libs we use

  416. Rob Swindell (on Debian Linux)
    Sat Jan 25 2025 16:36:39 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/scfglib2.c diff
    Free the supported_archive_formats str_list in the right function

  417. Rob Swindell (on Debian Linux)
    Sat Jan 25 2025 16:18:18 GMT-0800 (PST)
    Modified Files:
    

    exec/newuser.js diff
    Fix misuse of system.trashcan() caught by new parameter validation exceptions newuser.js line 57: Error: Insufficient Arguments (1 provided, a minimum of 2 expected)

  418. Rob Swindell (on ChromeOS)
    Sat Jan 25 2025 16:17:50 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/filedat.c diff
    src/sbbs3/js_archive.c diff
    src/sbbs3/main.cpp diff
    src/sbbs3/pack_qwk.cpp diff
    src/sbbs3/pack_rep.cpp diff
    src/sbbs3/qwk.cpp diff
    src/sbbs3/sbbs.h diff
    src/sbbs3/scfg/scfgxfr1.c diff
    src/sbbs3/scfgdefs.h diff
    src/sbbs3/scfglib2.c diff
    src/sbbs3/scfgsave.c diff
    src/sbbs3/useredit.cpp diff
    Make the fully-supported (lib)archive file types/formats configurable Before now, the archive formats/types (e.g. for creating QWK/REP packets or temp file download archives) supported by libarchive have been *hard-coded* in Synchronet to "zip, 7z, tgz", but if you really want to support the creation of more archive formats using the internal (libarchive) support in Synchronet, and your system supports it (e.g. confirmed using archive.js), you can add those types to this list or remove any that are problematic. This list does not impact the archive types that can be viewed or extracted using libarchive.

  419. Deucе
    Sat Jan 25 2025 13:51:13 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/xpdev.vcxproj diff
    src/xpdev/xpdev_mt.vcxproj diff
    Hack some files into the thing...

  420. Deucе
    Sat Jan 25 2025 13:47:32 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/named_str_list.c diff
    Missed a speck...

  421. Deucе
    Sat Jan 25 2025 13:44:00 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/named_str_list.c diff
    More Borland happiness Sadness for the rest of the world.

  422. Deucе
    Sat Jan 25 2025 13:41:07 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/named_str_list.c diff
    src/xpdev/named_str_list.h diff
    Some Borland fixups Not all of them though... I just mr IRC history. :)

  423. Deucе
    Sat Jan 25 2025 13:40:04 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/CMakeLists.txt diff
    Fix CMake builds

  424. Rob Swindell (on ChromeOS)
    Sat Jan 25 2025 11:53:10 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/system/rtypes.js diff
    src/sbbs3/js_system.c diff
    Revert system.get_node_message() and system.get_telegram() to return null ... upon failure/no message waiting. Some scripts (e.g. ecWebv4) explicitly check for a null return value. So document the return value will be null when there's no message waiting. This isue was introduced in commit f300a32ef58f0340ce60f and reported via DOVE-Net by kk4qbn (KK4QBN)

  425. Deucе
    Sat Jan 25 2025 11:38:22 GMT-0800 (PST)
    Added Files:
    

    src/xpdev/named_str_list.c diff
    src/xpdev/named_str_list.h diff
    Modified Files:

    src/syncterm/bbslist.c diff
    src/syncterm/syncterm.c diff
    src/xpdev/gen_defs.h diff
    src/xpdev/objects.mk diff
    Some more work on the Web Lists interface in SyncTERM I've added a new named_str_list.[ch] thing to xpdev which allows manipulation the lists you get back from ini_file.c. Still need to do a thing to write the changes back, and write all the help text, but it's coming together. Also, fix formatting errors in the download status window.

  426. Deucе
    Sat Jan 25 2025 01:02:44 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/bbslist.c diff
    Start of a menu to edit web lists. Goodnight.

  427. Deucе
    Sat Jan 25 2025 00:34:01 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/syncterm.c diff
    Don't show a size until we get the content-length or start getting bytes Prevents cached lists from showing zero.

  428. Deucе
    Sat Jan 25 2025 00:09:40 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/bbslist.c diff
    Ensure some settings aren't loaded from system lists. Paths, passwords, user IDs, log settings, etc.

  429. Deucе
    Fri Jan 24 2025 23:52:55 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/bbslist.c diff
    src/syncterm/syncterm.c diff
    src/syncterm/syncterm.h diff
    Add support for actually downloading files. Just add this to your syncterm.ini: [WebLists] Synchronet=http://synchro.net/syncterm.lst AtariAge=http://www.sfhqbbs.org/ataribbslist-syncterm.php

  430. Deucе
    Fri Jan 24 2025 23:49:07 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/webget.c diff
    src/syncterm/webget.h diff
    Add TLS support and a cb_data field I think I fixed a bug or two too, but I can't remember and you can't run this code yet, so it doesn't matter.

  431. Deucе
    Fri Jan 24 2025 21:08:54 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/webget.c diff
    Fix duplicate data in cacheinfo file Since the cache file is opened for append, truncate it before calling iniWriteFile(). This isn't create because if it fails, it will leave the file empty, which will cause the next time this function is called to do a full request, but at least if fails safe.

  432. Deucе
    Fri Jan 24 2025 20:59:04 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/webget.c diff
    Do all the caching, chunking, and fetching stuff. This should now be ready for use... it will not connect if the data is still fresh (default freshness period is one day), and will use If-Modified-Since and If-None-Match conditions depending on the cached data as well. All that's left is configuring it, fetching the lists, and loading them.

  433. Deucе
    Fri Jan 24 2025 20:59:04 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/bbslist.c diff
    Add a TODO comment

  434. Rob Swindell
    Fri Jan 24 2025 19:56:36 GMT-0800 (PST)
    Modified Files:
    

    exec/load/dd_lightbar_menu.js diff
    Merge branch 'dd_lightbar_menu_use_console_inactivity_hangup' into 'master' DDLightbarMenu: Remove the inputTimeoutMS property; use console.inactivity_hangup instead. See merge request main/sbbs!492

  435. Eric Oulashin
    Fri Jan 24 2025 19:48:22 GMT-0800 (PST)
    Modified Files:
    

    exec/load/dd_lightbar_menu.js diff
    DDLightbarMenu: Remove the inputTimeoutMS property; use console.inactivity_hangup instead.

  436. Rob Swindell (on macOS)
    Fri Jan 24 2025 18:34:17 GMT-0800 (PST)
    Modified Files:
    

    src/build/Common.gmake diff
    Revert "macOS Clang linker - don't warn about duplicate libraries" This reverts commit abdeb48fa0ef12e4513a9db5d469878e8b79756d. Apparently the Clang on the x86 Mac mini build node doesn't support this option

  437. Rob Swindell (on macOS)
    Fri Jan 24 2025 18:22:04 GMT-0800 (PST)
    Modified Files:
    

    src/build/Common.gmake diff
    macOS Clang linker - don't warn about duplicate libraries

  438. Deucе
    Fri Jan 24 2025 16:10:48 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/ini_file.c diff
    fseek() after ftruncate() Ensure the stream is in a meaningful place. Fixes a bug, but one we're unlikely to have ever seen the way we use this.

  439. Deucе
    Fri Jan 24 2025 11:28:00 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/bbslist.c diff
    Allow "reserving" names The SyncTERM cache uses the BBS name as the directory name, so any system-level caching needs to either be in the cache root directory or in a directory whose name is guaranteed to not collide with an entry name. This leaves two options... either prevent a list of suffixes from being used on BBS names, or have a separate system cache whose name cannot be used as a BBS name. I've taken the second route here... SyncTERM will not load a BBS entry with the (case insensitive) name "syncterm-system-cache" and will not allow creating one. This is the directory where "global" cache files will be stored (ie: scripts, internet dialing directories, etc.)

  440. Deucе
    Fri Jan 24 2025 10:42:01 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci-unix.yml diff
    Add sync after extracting archive It looks like at least one bus error was when the linker was loading the .so. Maybe a sync(8) here will "fix" that?

  441. Deucе
    Fri Jan 24 2025 10:38:30 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Add silly check to make coverity happy. This is in the fastpath, but it's on the slow side where I don't mind the occasional extra silly check.

  442. Deucе
    Fri Jan 24 2025 10:33:22 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CMakeLists.txt diff
    Fix path

  443. Deucе
    Fri Jan 24 2025 10:31:20 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CMakeLists.txt diff
    src/syncterm/SyncTERM.vcxproj diff
    Add webget.c to more build systems.

  444. Deucе
    Fri Jan 24 2025 10:29:54 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/webget.c diff
    include more stuff for asprintf() and timegm() on Windows

  445. Deucе
    Fri Jan 24 2025 10:26:04 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/webget.c diff
    Fix warnings and errors on Windows. Apparently, Windows doesn't have a MSG_DONTWAIT flag to recv().

  446. Deucе
    Fri Jan 24 2025 09:55:04 GMT-0800 (PST)
    Added Files:
    

    src/syncterm/webget.c diff
    src/syncterm/webget.h diff
    Modified Files:

    src/syncterm/objects.mk diff
    Start of a caching web client thingie In support of feature request 86. Now, there's no immediate plan for what 86 is actually asking for, but being able to point to things like the Synchronet BBS List and having them automatically show up in your dialing directory would be pretty nice. Actually doing 86 means being able to merge lists, which I'm not sure I want to deal with at this time.

  447. Rob Swindell (on Debian Linux)
    Thu Jan 23 2025 23:31:59 GMT-0800 (PST)
    Modified Files:
    

    exec/webfileindex.ssjs diff
    Cosmetic improvements using Unicode characters as icons (file cabinets, folders) Bold the directory/library names and other markup improvements. Expand viewable types to more readable archive types supported by libarchive (many more than the list in Archive.supported_formats).

  448. Rob Swindell (on Debian Linux)
    Thu Jan 23 2025 23:31:59 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/scfg/scfgsrvr.c diff
    Add configurable mail server 'post_to' (recipient of posts) setting

  449. Rob Swindell (on Debian Linux)
    Thu Jan 23 2025 23:31:59 GMT-0800 (PST)
    Modified Files:
    

    exec/user_settings.js diff
    Use Archive.suopported_formats, if defined, instead of hard-coded list of file types Remove an apparent nnecessary reset of console.aborted flag

  450. Rob Swindell (on ChromeOS)
    Thu Jan 23 2025 22:55:34 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_bbs.cpp diff
    This period was supposed to be there at all

  451. Deucе
    Thu Jan 23 2025 19:01:46 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/Manual.txt diff
    Fix oxymoron

  452. Deucе
    Thu Jan 23 2025 17:50:36 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/Manual.txt diff
    Document libjxl dependency. Also, mention that SDL2 is required for macOS and Haiku

  453. Deucе
    Thu Jan 23 2025 17:10:20 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_bbs.cpp diff
    Pretty sure this period is supposed to be inside the quotes...

  454. Deucе
    Thu Jan 23 2025 16:47:00 GMT-0800 (PST)
    Added Files:
    

    src/syncterm/prestest/extra2.png diff
    Add screenshot of extra2.pst

  455. Deucе
    Thu Jan 23 2025 16:46:32 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/prestest/dhg.png diff
    src/syncterm/prestest/engtest-revealed.png diff
    src/syncterm/prestest/engtest.png diff
    src/syncterm/prestest/extra-revealed.png diff
    src/syncterm/prestest/extra.png diff
    Update test screenshots

  456. Deucе
    Thu Jan 23 2025 16:41:41 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Fix double-height separated mosaic drawing Regression introduced in 47b6f7a72f42bbbe264ecf57a09b4bcd7de4139c

  457. Deucе
    Thu Jan 23 2025 16:16:45 GMT-0800 (PST)
    Added Files:
    

    src/syncterm/prestest/extra2.pst diff
    Modified Files:

    src/conio/cterm.c diff
    src/syncterm/CHANGES diff
    src/syncterm/prestest/extra-revealed.png diff
    src/syncterm/prestest/extra.png diff
    Refine SAA5050 state based on Keyop's experiments It seems there is a "hold mosaic" mode, but it doesn't completely avoid look-behind when it's set. The rules for what "clears" the held mosaic when not in hold mosic mode are a bit murky... added extra2.pst to test.

  458. Deucе
    Thu Jan 23 2025 13:09:59 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    It appears MSVC doesn't support the 25-year-old standard restrict qualifier

  459. Deucе
    Thu Jan 23 2025 12:25:24 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Split the happy path font rendering into separate function And merge the single/double height ones into the same function. Normalize all the types while I'm here. With this, the happy path draw_char_row_fast() is very simple and easy to keep updated, and all of the complexity goes into draw_char_row_slow(). There seems to be around a 20% performance difference between them, but it can be hard to tell for sure because of the time spent cheating. Note that it doesn't appear to be worth cheating if we're going fast, but that's getting a bit too deep for my tastes.

  460. Deucе
    Thu Jan 23 2025 12:05:15 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    Some todone comments.

  461. Deucе
    Thu Jan 23 2025 09:46:49 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    src/conio/cterm.h diff
    Remove CTERM_WITHOUT_CONIO "support" This has only ever worked briefly, and makes the code more confusing.

  462. Deucе
    Thu Jan 23 2025 08:53:32 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/bbslist.c diff
    Change screen mode to "BBC Micro Mode 7" Also, change the terminal type reported to "Beeb7"

  463. Deucе
    Thu Jan 23 2025 08:47:33 GMT-0800 (PST)
    Modified Files:
    

    src/conio/allfonts.c diff
    src/conio/bitmap_con.c diff
    src/conio/ciolib.h diff
    src/conio/cterm.c diff
    src/conio/cterm.h diff
    src/syncterm/bbslist.c diff
    src/syncterm/bbslist.h diff
    src/syncterm/syncterm.c diff
    src/syncterm/term.c diff
    Add new "BBC Micro" screen mode. This is almost exactly like Prestel, but it's for BBS Micro BBSs such as BeeBS. The basic changes are: 1) Moving off the bottom of the screen scrolls instead of wraps 2) BBC Micro "high ASCII" is supported 3) Return sends \r, not # To support the high ASCII, I actually implemented the ITU-T Rec.T0101 G1 set, which means the smooth mosaic characters are theoretically available. However, the SAA5050 emulation clobbers this by "correctly" turning them into "blast-through" alphanumeric characters. Doing this required the separated mosaic support be moved into the font rendering and out of the font itself. Anyway, the Sysop of beebs.ddns.net should be happy... and since this will advertise a terminal type of "BBC Micro", they should be able to auto-detect between ANSI and BBC Micro during login so the user doesn't need to enter it. Hit me up on IRC if you want help with that.

  464. Deucе
    Thu Jan 23 2025 05:04:40 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/syncterm.c diff
    This is what 470f0171 was when I committed it. :(

  465. Rob Swindell (on Debian Linux)
    Thu Jan 23 2025 02:51:53 GMT-0800 (PST)
    Modified Files:
    

    exec/webfileindex.ssjs diff
    Minor beautification Indenting lib and dir lists use the ul tag, I'm sure this isn't technically the most correct way to do this, but its providing the cosmetic result I want.

  466. Rob Swindell (on Debian Linux)
    Thu Jan 23 2025 01:58:39 GMT-0800 (PST)
    Modified Files:
    

    exec/webfileindex.ssjs diff
    Display file SHA1 (if has one) and date/time in div title (hover text)

  467. Rob Swindell (on Debian Linux)
    Wed Jan 22 2025 23:58:18 GMT-0800 (PST)
    Modified Files:
    

    exec/webfileindex.ssjs diff
    Filter out the non-viewable files for the next/prev file buttons

  468. Rob Swindell (on Debian Linux)
    Wed Jan 22 2025 23:18:45 GMT-0800 (PST)
    Modified Files:
    

    exec/webfileindex.ssjs diff
    Add support for viewing file (images and archive) contents

  469. Deucе
    Wed Jan 22 2025 20:52:30 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/syncterm.c diff
    Add an extra newline after displaying usage.

  470. Deucе
    Wed Jan 22 2025 20:48:29 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/syncterm.c diff
    If stdout is a tty, use ANSI output mode Should make DigitalMan happy by making help output be in the console on Windows with syncterm.com. Hopefully syncterm.exe doesn't get the help output hosed by this. Also, if the output mode is ANSI, don't require a key press to exit.

  471. Deucе
    Wed Jan 22 2025 20:29:12 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    src/conio/ciolib.h diff
    src/conio/vidmodes.c diff
    src/syncterm/syncterm.c diff
    SAA5050 is 25 rows, not 24. This means the crappy 40-column status line can be used!

  472. Deucе
    Wed Jan 22 2025 19:16:55 GMT-0800 (PST)
    Added Files:
    

    src/syncterm/prestest/dhg.png diff
    src/syncterm/prestest/engtest-revealed.png diff
    src/syncterm/prestest/engtest.png diff
    src/syncterm/prestest/extra-revealed.png diff
    src/syncterm/prestest/extra.png diff
    Add reference images of what these tests are supposed to look like. Assuming I'm right that is... if I'm wrong, this is merely what they look like in SyncTERM today.

  473. Deucе
    Wed Jan 22 2025 19:08:48 GMT-0800 (PST)
    Removed Files:
    

    src/syncterm/prestest/e.pst diff
    Remove e.pst It's just a broken copy of engtest.pst

  474. Deucе
    Wed Jan 22 2025 19:06:09 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/prestest/extra.pst diff
    Fix # sign

  475. Deucе
    Wed Jan 22 2025 18:23:48 GMT-0800 (PST)
    Added Files:
    

    src/syncterm/prestest/extra.pst diff
    Add extra tests found online.

  476. Deucе
    Wed Jan 22 2025 16:21:44 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Synchronize blink rate to real Model B Keyop provided a video of flashing stuff for me. This now synchronizes with that video. Can't get any better than that.

  477. Deucе
    Wed Jan 22 2025 15:35:11 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CHANGES diff
    Mention the new font for Prestel

  478. Deucе
    Wed Jan 22 2025 15:31:52 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/ripper.c diff
    Attempt to silence false positive warning. The warning suggests that x1 and y1 may be uninitialized in the i > 0 block, but that's not really possible... It's too bad the warning doesn't clarify. It's also weird that the warning was in the draw_line() call and not in the lines above that (incorrectly) compared them with -1. Fix that check while we're here.

  479. Deucе
    Wed Jan 22 2025 15:05:33 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/ripper.c diff
    Fix possibly undefined value in ellipse. Top-right quadrant doesn't need a quadrant angle, the angle is what we want already.

  480. Deucе
    Wed Jan 22 2025 14:58:00 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Adjust Prestel cursor flash. It appears that it flashes at 1.5Hz with the off period synchronized to the blinking text off period. Still no idea what generates it though.

  481. Rob Swindell (on Debian Linux)
    Wed Jan 22 2025 14:56:03 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/msg_queue.c diff
    src/xpdev/msg_queue.h diff
    API change: long->int No functional change

  482. Rob Swindell (on Debian Linux)
    Wed Jan 22 2025 14:36:23 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/sbbs_ini.c diff
    Read/write the new sbbs.ini [Mail] PostTo setting Whoops, missed this from the previous commit. But testing the pipes for jsexec crashes too, so that's not a bad thing.

  483. Rob Swindell (on Debian Linux)
    Wed Jan 22 2025 14:29:45 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/mailsrvr.c diff
    src/sbbs3/mailsrvr.h diff
    Add new "PostTo" setting to (optionally) change the recipient of SMTP-posts Messages posted to sub-boards via SMTP normally will have the recipient name/address as the "To" (RECIPIENT) value of the posted message. If the sysop wishes to replace this string (for all SMTP-posted messages) with a different string (e.g. "All") this is the setting to allow that. I do want web-scrapping spammers to collect the 'to' fields for my TLDR and Coverity-scan posts and post their own spam messages via email (any more). Also accommodate the new link list API (long -> int).

  484. Rob Swindell (on Debian Linux)
    Wed Jan 22 2025 14:29:12 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/mqtt.c diff
    src/sbbs3/sbbscon.c diff
    src/sbbs3/sbbsecho.c diff
    Accommodate the link_list API change (long -> int)

  485. Rob Swindell (on Debian Linux)
    Wed Jan 22 2025 14:27:44 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/link_list.c diff
    src/xpdev/link_list.h diff
    Change 'long' to 'int' in link list API so the sizes of these elements are the same across all our current target platforms

  486. Rob Swindell (on Debian Linux)
    Wed Jan 22 2025 13:58:48 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/link_list.c diff
    src/xpdev/link_list.h diff
    Add/use new function: listAddNodeWithFlags() Fixes race condition/possible crash in listAddNodeData(), listAddNodeString() and listAddNodeList(). These functions were modifying the node->flags *after* a node was added to the list and list lock released. This is most likely the cause of the issue caught by valgrind when running the jsexec-testsuite: https://gitlab.synchro.net/main/sbbs/-/jobs/498286 Thank you Deuce and valgrind, nice catch!

  487. Deucе
    Wed Jan 22 2025 13:52:55 GMT-0800 (PST)
    Modified Files:
    

    src/conio/allfonts.c diff
    Regenerate Prestel font from decapped ROM image The only difference appears to be the column the 1 is in the ¼ character.

  488. Deucе
    Wed Jan 22 2025 12:37:40 GMT-0800 (PST)
    Added Files:
    

    src/syncterm/prestest/7to8.c diff
    src/syncterm/prestest/dhg.pst diff
    src/syncterm/prestest/e.pst diff
    src/syncterm/prestest/engtest.pst diff
    src/syncterm/prestest/engtest8.pst diff
    Add my Prestel test "stuff"

  489. Deucе
    Wed Jan 22 2025 12:05:31 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    Update comments for closer reading of the spec. Section 2.3.1 is the C0 set, which "is not stored or displayed" Section 2.3.2 is the C1 set, so interpret "all control characters" in this context as meaning "all C1 characters".

  490. Deucе
    Wed Jan 22 2025 11:59:35 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    Switch back to ignoring unhandled C0 bytes. This "feels" more like what the spec means.

  491. Deucе
    Wed Jan 22 2025 11:56:05 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    Clear cterm->sequence and cterm->escbuf when ignoring ESC

  492. Deucе
    Wed Jan 22 2025 11:53:29 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    Ignore invalid ESC sequences in Prestel mode

  493. Deucе
    Wed Jan 22 2025 11:18:41 GMT-0800 (PST)
    Modified Files:
    

    src/conio/allfonts.c diff
    src/conio/cterm.c diff
    Support the "Replacement Character" in Prestel mode This is the unicode replacement character, now displayed whenever a G1 byte is received (byte values 160-255). Prestel terminals are 7-bit devices, and use special escape sequences to select alternate glyphs. The Videotex standards define a default G1 set though, which I am not supporting in the 1.x versions. So that sysops and users know "something weird happened", this weird glyph will clearly indicate that. The C1 characters (128-159) I am supporting though simply because it's easy to do, and I saw at least one BBS using them. These BBSs won't actually work with a real Prestel terminal though... they may end up as parity errors, or they may end up as C0 bytes, or they may be replaced with a '?'... I've seen all three now. SyncTERM can at least do the right thing since it's well defined. This may also fix held mosaic display for unhandled C0 bytes... it looks like previously they were ignored, but the Prestel Terminal Specification clearly states that "Generally all control characters are displayed as spaces"... it doesn't limit them to supported control characters.

  494. Deucе
    Wed Jan 22 2025 10:29:08 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    Fix handling of C1 control characters At the same time, fix an old error in prestel_handle_escaped() that didn't pass the ctrl to prestel_apply_ctrl_after() properly, and always flush the print buffer before calling prestel_handle_escaped() We still shouldn't actually get C1 characters on a Prestel connection, but if we do, at least we're doing the right thing now. As for G1 characters, the default repetoire for these terminals per ITU-T REC. T0101 is the mosaic character set with smoothed moasics, something there's no evidence of a Prestel terminal ever supporting. In order to implement those properly, I would need special handling of "separated" in the renderer, and would need to fiddle with the font to include the contiguous smoothed mosaics (and exclide the separated ones). Since this would end up allowing wildly un-Pretel behaviour (ie: mosaics without a mosaic escape) I'm inclined to just treat them all as spaces and move on util/unless I do full support for all the Videotex standards. Nobody has asked me to open this can of worms, so I'm just going to leave it on the shelf.

  495. Deucе
    Wed Jan 22 2025 09:35:13 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Move assignments for things only needed in the loop inside the loop

  496. Deucе
    Tue Jan 21 2025 21:56:45 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Synchronize cursor and text blinking for PC modes.

  497. Deucе
    Tue Jan 21 2025 21:29:23 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Atari doesn't blink?

  498. Deucе
    Tue Jan 21 2025 21:16:53 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Fix previous commit.

  499. Deucе
    Tue Jan 21 2025 21:15:33 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Add C64/C128 blinking... 1.5Hz Blinking text is opposite of the cursor

  500. Deucе
    Tue Jan 21 2025 20:48:32 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Fix up cursor and blinking rates, step 1... For "PC" modes, cursor blinked at 1/16th of the VSYNC rate, so use the CGA timings, where were generally the slowest of the bunch... This means cursor blink at 3.745Hz, and character blink at 1.8725Hz. For Prestel, character blink was 0.75Hz with a 3:1 On:Off ratio. The cursor on the other hand was 1/32th the VSYNC and was generally PAL, so 1.5625Hz. I still need to dig into C64 and Atari modes, because they're likely way off now (assuming either supports blinking).

  501. Deucе
    Tue Jan 21 2025 17:36:55 GMT-0800 (PST)
    Modified Files:
    

    src/conio/allfonts.c diff
    Make the whole 32-127 range match CP437 Only 0-31 and 128-255 are left needing CP437 love.

  502. Deucе
    Tue Jan 21 2025 17:10:16 GMT-0800 (PST)
    Modified Files:
    

    src/conio/allfonts.c diff
    src/conio/bitmap_con.c diff
    src/conio/ciolib.c diff
    src/conio/ciolib.h diff
    src/conio/cterm.c diff
    src/conio/vidmodes.c diff
    src/syncterm/fonts.c diff
    src/syncterm/fonts.h diff
    src/syncterm/syncterm.c diff
    src/syncterm/term.c diff
    Add "support" for 12x20 fonts (prestel mode only) Also hack together a 12x20 "CP437" font that's just the Prestel font with the characters uifc32 uses from cp437 in it.

  503. Rob Swindell (on Windows 11)
    Tue Jan 21 2025 13:50:07 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/syncterm.iss diff
    Add syncterm.com and syncterm.dll, x86 and x64 versions Update for v1.4

  504. Deucе
    Tue Jan 21 2025 11:13:53 GMT-0800 (PST)
    Added Files:
    

    src/syncterm/fonts/prestel.f16 diff
    Add the Prestel font that's hard-coded so fans can update it.

  505. Deucе
    Tue Jan 21 2025 09:58:37 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    src/conio/ciolib.h diff
    We're using all the extra foreground colour bits for Prestel Move reveal/dirty status into background colour. Should fix ticket 182.

  506. Rob Swindell (on Debian Linux)
    Tue Jan 21 2025 00:43:32 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/useredit/MainFormUnit.cpp diff
    LEN_MODEM -> LEN_CONNECTION

  507. Rob Swindell (on Debian Linux)
    Tue Jan 21 2025 00:33:32 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/ctrl/UserListFormUnit.cpp diff
    Ah, I missed one more user_t.modem -> connection change

  508. Rob Swindell (on Debian Linux)
    Tue Jan 21 2025 00:22:11 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/answer.cpp diff
    src/sbbs3/chk_ar.cpp diff
    src/sbbs3/exec.cpp diff
    src/sbbs3/filedat.c diff
    src/sbbs3/ftpsrvr.c diff
    src/sbbs3/gtkuseredit/events.c diff
    src/sbbs3/gtkuserlist/events.c diff
    src/sbbs3/js_system.c diff
    src/sbbs3/js_user.c diff
    src/sbbs3/logon.cpp diff
    src/sbbs3/newuser.cpp diff
    src/sbbs3/sbbs.h diff
    src/sbbs3/sbbsdefs.h diff
    src/sbbs3/services.c diff
    src/sbbs3/str.cpp diff
    src/sbbs3/uedit/uedit.c diff
    src/sbbs3/upgrade_to_v320.c diff
    src/sbbs3/userdat.c diff
    src/sbbs3/useredit.cpp diff
    src/sbbs3/useredit/MainFormUnit.cpp diff
    src/sbbs3/websrvr.c diff
    Rename user_t.modem to user_t.connection No change in functionality, just code comprehension

  509. Rob Swindell (on Debian Linux)
    Mon Jan 20 2025 23:16:46 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/services.c diff
    src/sbbs3/services.h diff
    Add per-service option: NO_USER_PROT If enabled, this option prevents logins to this service from changing the protocol (aka modem) field for a user logging-in. This is a work around for Deon who has some message areas set to require "PROT NOT IMAP" for access requirements and when his IMAP client connects and logs-in, that changes the protocol field in his user account (to "IMAP") which means that user account cannot see/read those message areas (until the protocol field is changed by another login to another server/service) and thus won't receive echomail notifications for message received for them in those areas.

  510. Rob Swindell (on Debian Linux)
    Mon Jan 20 2025 22:53:27 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/global/rtypes.js diff
    Fix wrong quote usage

  511. Rob Swindell (on Debian Linux)
    Mon Jan 20 2025 22:48:35 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/global/rtypes.js diff
    src/sbbs3/js_global.c diff
    Return null from resolve_ip('') and resolve_host('') even on Windows Defeat the Windows getaddrinfo feature: If the pNodeName parameter contains an empty string, all registered addresses on the local computer are returned.

  512. Rob Swindell (on Windows 11)
    Mon Jan 20 2025 22:25:03 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/global/rtypes.js diff
    resovle_ip('') returns a local IP address on Windows at least for me, "fe80::5dfc:b29c:85d6:8de7%21"

  513. Rob Swindell (on Debian Linux)
    Mon Jan 20 2025 22:06:00 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci.yml diff
    Try running the jsexec-testsuite with the MSVC Win32 build

  514. Rob Swindell (on Windows 11)
    Mon Jan 20 2025 21:56:39 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/global/rtypes.js diff
    resolve_host("") actually returns a string on Windows at least, "vert.search.charter.net" in my case

  515. Deucе
    Mon Jan 20 2025 21:45:05 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_socket.c diff
    Add constants to the Socket class. This is just the ones mentioned in the jsdocs. I'll add more if/when I want them. :D

  516. Rob Swindell (on Debian Linux)
    Mon Jan 20 2025 21:40:13 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci.yml diff
    Add a smoke test for msvc/win32 build of jsexec

  517. Rob Swindell (on Debian Linux)
    Mon Jan 20 2025 21:13:06 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_user.c diff
    Add User.security.deletion_date property corresponding wth new user DELDATE field

  518. Rob Swindell (on Debian Linux)
    Mon Jan 20 2025 20:44:56 GMT-0800 (PST)
    Modified Files:
    

    ctrl/text.dat diff
    src/sbbs3/text_defaults.c diff
    Add parameter to DeletedUser string (deletion or last activity date)

  519. Rob Swindell (on Debian Linux)
    Mon Jan 20 2025 20:44:56 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/system/except.js diff
    system.secondstr() does require an argumnet

  520. Rob Swindell (on Windows 11)
    Mon Jan 20 2025 20:35:51 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/main.cpp diff
    Make JS global alert() and deny() methods inline with jsexec versions alert() doesn't throw exception on null/undefined, just no arg deny() throws exception on no args or null/undefined arg

  521. Rob Swindell (on Windows 11)
    Mon Jan 20 2025 20:20:46 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_system.c diff
    system zonestr(), timestr(), and datestr() methods don't require an argumnet So don't check for null/undefined argv[0] if not passed one

  522. Deucе
    Mon Jan 20 2025 20:16:22 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_internal.c diff
    Don't call JS_GC() after js.exec() until new background threads exit Hopefully this will fix the occasional crash in the testsuites (and presumably, occasional crash in other things that use background threads with js.exec(), if there are any). Except this time, in the right place.

  523. Rob Swindell (on Debian Linux)
    Mon Jan 20 2025 20:11:47 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/exec.cpp diff
    Revert "Don't call JS_GC() after js.exec() until new background threads exit" This reverts commit ed8c30dabfca6158b3e9207a9f36f4fde0dd5f3a.

  524. Rob Swindell (on Debian Linux)
    Mon Jan 20 2025 20:11:21 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/exec.cpp diff
    Revert "Fix MSVC link error" This reverts commit 7eb498aa080dc3bcd8162ff8c2b7e9a9448d4372.

  525. Rob Swindell (on Windows 11)
    Mon Jan 20 2025 19:54:23 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_system.c diff
    src/sbbs3/userdat.c diff
    Resolve MSVC warnings

  526. Rob Swindell (on Windows 11)
    Mon Jan 20 2025 19:53:57 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/exec.cpp diff
    Fix MSVC link error

  527. Deucе
    Mon Jan 20 2025 19:41:31 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/exec.cpp diff
    Don't call JS_GC() after js.exec() until new background threads exit Hopefully this will fix the occasional crash in the testsuites (and presumably, occasional crash in other things that use background threads with js.exec(), if there are any).

  528. Rob Swindell (on Debian Linux)
    Mon Jan 20 2025 18:26:07 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/scfg/scfgsys.c diff
    Update online help to describe deldays options accounting for DELDATE User records (aka slots) will be preserved this many days since the user was deleted (if the DELDATE field is non-zero) otherwise, days since last user activity.

  529. Rob Swindell (on Debian Linux)
    Mon Jan 20 2025 17:44:52 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_system.c diff
    src/sbbs3/main.cpp diff
    src/sbbs3/newuser.cpp diff
    src/sbbs3/sbbs.h diff
    src/sbbs3/sbbsdefs.h diff
    src/sbbs3/uedit/uedit.c diff
    src/sbbs3/userdat.c diff
    src/sbbs3/userdat.h diff
    src/sbbs3/useredit.cpp diff
    src/sbbs3/userfields.h diff
    New userdat API functions for deleting and un-deleting user records The initial purpose is to support new user field: DELDATE (user record deletion date) - this allow user record retention for a period after deletion rather than after period after last user activity. The Win32 usereditor needs updating to use this function too.

  530. Deucе
    Mon Jan 20 2025 16:20:54 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    retbuf paranoia Reported in unmonitor, which always passes NULL.

  531. Deucе
    Mon Jan 20 2025 14:46:24 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/rwlockwrap.h diff
    src/xpdev/threadwrap.h diff
    Conditionally #include assert.h if we're going to define macros using it

  532. Deucе
    Mon Jan 20 2025 14:40:02 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    src/conio/mouse.c diff
    src/conio/sdl_con.c diff
    src/conio/win32gdi.c diff
    src/conio/x_cio.c diff
    src/conio/x_events.c diff
    src/syncterm/conn.c diff
    src/syncterm/conn_conpty.c diff
    src/syncterm/conn_pty.c diff
    src/syncterm/modem.c diff
    src/syncterm/ripper.c diff
    src/syncterm/rlogin.c diff
    src/syncterm/ssh.c diff
    src/syncterm/telnets.c diff
    src/syncterm/term.c diff
    src/xpdev/rwlockwrap.h diff
    src/xpdev/threadwrap.h diff
    src/xpdev/xpbeep.c diff
    src/xpdev/xpevent.c diff
    src/xpdev/xpsem.c diff
    Replace the multiple custom assert wrappers with a single set Previously, different files had different sets of wrappers around pthread_mutex_* and rwlock_* functions. This commit removes those and puts assert_ prefixed ones in threadwrap.h and rwlockwrap.h. It also uses them in all the bits that SyncTERM uses. This means debug builds are much more likely to unexpectedly terminate with an assertion... when it does, let us know!

  533. Deucе
    Mon Jan 20 2025 14:02:21 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/xpbeep.c diff
    Add missing re-lock in xptone_open_locked() While we're here, add debug assertions to the pthread stuff.

  534. Rob Swindell (on Debian Linux)
    Mon Jan 20 2025 13:07:13 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_bbs.cpp diff
    Better parameter validation in bbs methods More method will now throw exception if called without args: bbs.check_filename(), bbs.logkey(), bbs.export_filelist() bbs.check_syspass() will prompt for system password if passed null or undefined value. Fix (and document) the optional channel argument to bbs.multinode_chat()

  535. Rob Swindell (on Debian Linux)
    Mon Jan 20 2025 13:07:03 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_bbs.cpp diff
    Fix bbs.compare_ars() called with no params Throws an exception now instead of using uninitialized args: ;eval Parameter(s): bbs.compare_ars() InternalError: allocation size overflow Updated JSDOCS for methods (mostly just adding punctuation). Fixed a typo or two.

  536. Deucе
    Mon Jan 20 2025 12:01:02 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/suppressions.vg diff
    Actually, it turns out I just can't copy/paste correctly.

  537. Rob Swindell (on Debian Linux)
    Mon Jan 20 2025 12:00:30 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_user.c diff
    A little JSDOC updated text and beautification

  538. Deucе
    Mon Jan 20 2025 11:57:58 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/suppressions.vg diff
    Hrm, maybe the vg replace one doesn't count...

  539. Deucе
    Mon Jan 20 2025 11:54:50 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/suppressions.vg diff
    Expand pulseaudio suppression, add suppression for Linux

  540. Deucе
    Mon Jan 20 2025 11:48:28 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci-unix.yml diff
    src/sbbs3/suppressions.vg diff
    Add some leak suppressions and enable leak checks in valgrind. Likely will fail for Linux if we need some OS-specific suppressions like we do for FreeBSD.

  541. Rob Swindell (on Debian Linux)
    Mon Jan 20 2025 11:34:34 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/user/except.js diff
    exec/tests/user/rtypes.js diff
    src/sbbs3/js_user.c diff
    Scripts assume that calling user.compare_ars(undefined) will not throw ... an exception (e.g. chat_sec.js), so return false instead. This fixes issue #864 Thank you Accession and Nelgin for the report

  542. Deucе
    Mon Jan 20 2025 11:13:38 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci-unix.yml diff
    Flip the valgrind switch... Now that valgrind is working, remove the verbose flag, and have it return 1 if any errors occur.

  543. Deucе
    Mon Jan 20 2025 11:10:18 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/suppressions.vg diff
    FreeBSD optimizes GCUntilDone() out... suppress on js_GC as well

  544. Deucе
    Mon Jan 20 2025 11:02:53 GMT-0800 (PST)
    Added Files:
    

    src/sbbs3/suppressions.vg diff
    Modified Files:

    .gitlab-ci-unix.yml diff
    .gitlab-ci.yml diff
    Add a test that runs valgrind on jsexec We need some JS_GC() suppressions though.

  545. Rob Swindell (on Debian Linux)
    Mon Jan 20 2025 03:00:23 GMT-0800 (PST)
    Modified Files:
    

    exec/delfiles.js diff
    Ajust the log levels and details of log messages make the output less 'chatty'

  546. Rob Swindell (on Debian Linux)
    Mon Jan 20 2025 00:34:21 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/execfunc.cpp diff
    src/sbbs3/js_bbs.cpp diff
    src/sbbs3/newuser.cpp diff
    src/sbbs3/sbbs.h diff
    src/sbbs3/useredit.cpp diff
    Rename sbbs_t::maindflts to ::user_config

  547. Rob Swindell (on Debian Linux)
    Mon Jan 20 2025 00:34:21 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/useredit.cpp diff
    Elminate meaningless typecast

  548. Deucе
    Sun Jan 19 2025 23:08:11 GMT-0800 (PST)
    Added Files:
    

    3rdp/build/cl-size-doesnt-mean-copied.patch diff
    Modified Files:

    3rdp/build/CMakeLists-cl.txt diff
    3rdp/build/CMakeLists.txt diff
    3rdp/build/GNUmakefile diff
    Add a patch to avoid using uninitialized data as random source sysctl() doesn't guarantee to copy data when the destination buffer isn't large enough. Makes Valgrind a lot easier to use on BSD systems by remove at tonne of violations.

  549. Rob Swindell (on Debian Linux)
    Sun Jan 19 2025 22:58:55 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/sbbsecho.c diff
    More log messages around notifying users of imported echomail, for Deon Log levels ERROR, NOTICE, and DEBUG

  550. Deucе
    Sun Jan 19 2025 22:45:05 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/userdat.c diff
    Zero-length string is not a valid real name.

  551. Rob Swindell (on Debian Linux)
    Sun Jan 19 2025 21:43:22 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/system/except.js diff
    system.findstr and matchuserdata no longer throw exceptions for undef 2nd arg these functions just return the 'not found' equivalent return type when passed null or undefined for the search string.

  552. Rob Swindell (on Debian Linux)
    Sun Jan 19 2025 21:39:13 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/system/rtypes.js diff
    Remove the debug output that helped identify which rtype function failed

  553. Rob Swindell (on Debian Linux)
    Sun Jan 19 2025 21:38:05 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_system.c diff
    More argument validation fixups for system.matchuserdata()

  554. Rob Swindell (on Debian Linux)
    Sun Jan 19 2025 21:17:18 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_system.c diff
    Fix system.matchuserdata() bug caught by tests/system/rtypes.js on rpi4 Argument count wasn't checked before checking/parsing each optional argument. Also noticed/ that the 'match_del' parameter added in commit e61eb77b91fe didn't advance the argument index, fixed that issue.

  555. Rob Swindell (on Debian Linux)
    Sun Jan 19 2025 20:57:15 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/system/rtypes.js diff
    That didn't work, so try using stdout unconditionally Just trying to get the output into the gitlab test failure output

  556. Rob Swindell (on Debian Linux)
    Sun Jan 19 2025 20:51:16 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/system/rtypes.js diff
    Enable some debug output to find which funcion is failing on rPi4 raspian-armhf-on-aarch64

  557. Rob Swindell (on Debian Linux)
    Sun Jan 19 2025 20:34:05 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/system/rtypes.js diff
    Remove get_node() rtype test, requires an sbbs installation (node.dab)

  558. Rob Swindell (on Debian Linux)
    Sun Jan 19 2025 20:34:05 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_system.c diff
    Fix typo in exception message about getnodedat() failure

  559. Deucе
    Sun Jan 19 2025 20:30:38 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Initialize off, then add an assert to suppress warning.

  560. Deucе
    Sun Jan 19 2025 20:30:38 GMT-0800 (PST)
    Modified Files:
    

    src/conio/x_events.c diff
    Formatting

  561. Rob Swindell (on Debian Linux)
    Sun Jan 19 2025 20:27:31 GMT-0800 (PST)
    Added Files:
    

    exec/tests/system/except.js diff
    exec/tests/system/rtypes.js diff
    exec/tests/system/skipif diff
    Modified Files:

    src/sbbs3/js_system.c diff
    More parameter validation for JS 'system' methods And corresponding tests

  562. Deucе
    Sun Jan 19 2025 20:23:48 GMT-0800 (PST)
    Modified Files:
    

    src/conio/x_events.c diff
    Remove debug code It looks like the ChromeOS WM is resizeing the window. :(

  563. Deucе
    Sun Jan 19 2025 18:10:24 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CHANGES diff
    Document Prestel fixes

  564. Deucе
    Sun Jan 19 2025 17:52:34 GMT-0800 (PST)
    Modified Files:
    

    src/conio/x_events.c diff
    Add some debug logging Maybe we can figure out what the Chromebook is doing...

  565. Deucе
    Sun Jan 19 2025 17:16:47 GMT-0800 (PST)
    Modified Files:
    

    src/conio/x_events.c diff
    Recalculate scaling when resize_window() is called in fullscreen mode.

  566. Rob Swindell (on Debian Linux)
    Sun Jan 19 2025 16:41:10 GMT-0800 (PST)
    Modified Files:
    

    ctrl/xtrn.ini diff
    Add delfiles (filebase maintenance) as a default timed event This is how the max files/age of files in directories is enforced.

  567. Deucе
    Sun Jan 19 2025 16:10:37 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/GNUmakefile diff
    More rpath hackery... If SBBSDIR is set, add $(SBBSDIR)/exec to rpath. Always add the original output directory to rpath. I'm not sure what the old LD_RUN_PATH stuff was trying to do, but I think these are the bits that make it work.

  568. Deucе
    Sun Jan 19 2025 15:49:28 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Reset screena *and* screenb, not jsut screena and screena

  569. Deucе
    Sun Jan 19 2025 15:45:15 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    When reallocating screen rects, reset the toprow. Fixes error where toprow may end up past the bottom of the screen when the screen size decreases.

  570. Deucе
    Sun Jan 19 2025 14:08:37 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Fix Prestel double-height bottom clearing issue Any change to any double-height bit anywhere on the screen can potentially change the display of every character after it on the screen. If the bit changes, force a full redraw from vmem (Luckily there's no graphics in Prestel mode). Fixes ticket 181 Ugh.

  571. Deucе
    Sun Jan 19 2025 13:55:44 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Fix Prestel regression on double-height text. Visible in the double height graphics and engineering test pages.

  572. Deucе
    Sun Jan 19 2025 11:57:08 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    src/conio/ciolib.h diff
    Fix Prestel reveal toggle With the performance enhancements, ciolib didn't realize reveal chars needed to be redrawn when reveal was toggled. Use a FG colour bit to indicate if it needs to be, and hack it up in same_cell()

  573. Deucе
    Sun Jan 19 2025 11:45:22 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Remove obsolete comment

  574. Deucе
    Sun Jan 19 2025 10:10:35 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/ripper.c diff
    Work around what appears to be an integer promotion issue On an aarch64 Chromebook running gcc 12.2.0, these would wrap in weird ways causing vector fonts to be positioned incorrectly. It managed to say that (25 - -7) * 4 / 3 == -168 This casting dance appears to resolve the issue.

  575. Deucе
    Sun Jan 19 2025 08:44:07 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    Indicate not running before posting sem Memory is free()ed after sem is posted, so this write goes into lalaland.

  576. Deucе
    Sun Jan 19 2025 08:38:20 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/ripper.c diff
    Initialize the *new* memory, not the old stuff. Fixes various memory corruptions with RIP

  577. Rob Swindell (on Debian Linux)
    Sun Jan 19 2025 02:54:19 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/sbbsecho.c diff
    Log messages when (attempting) to notify mail recipients (via short messages) ERROR-level messages with error number, upon failure and debug-level message upon success. To hopefully help Deon get to the bottom of his SBBSecho echomail notification issue.

  578. Deucе
    Sat Jan 18 2025 22:06:32 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Avoid unlocking screenlock to draw vmem.

  579. Deucе
    Sat Jan 18 2025 20:42:46 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/GNUmakefile diff
    Link the SyncTERM resources to the .com, .exe, and .dll Everyone gets an icon!

  580. Deucе
    Sat Jan 18 2025 20:27:16 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Properly handle 91-column EGA mode. There's six pixels at the bottom that aren't part of text, and three pixels on the right. Don't touch the vmem when those pixels are updated... vmem can't update them. Should fix assertion in Abdul's Armor in RIP mode reported by DigitalMan on IRC.

  581. Rob Swindell (on Debian Linux)
    Sat Jan 18 2025 19:41:49 GMT-0800 (PST)
    Modified Files:
    

    xtrn/minesweeper/minesweeper.js diff
    Store all wins received via msgbase (e.g. SYNCDATA) to netwins.jsonl This should speed up loading the winnners list (e.g. when the syncdata msgbase has a lot of messages) and scores won't be lost if the msgbase is purged. Issue reported by Deuce (nix.synchro.net). Bump version to 3.10.

  582. Deucе
    Sat Jan 18 2025 18:45:42 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CMakeLists.txt diff
    src/syncterm/Info.plist diff
    src/syncterm/Manual.txt diff
    src/syncterm/PackageInfo.in diff
    src/syncterm/dpkg-control.in diff
    src/syncterm/haiku.rdef diff
    src/syncterm/syncterm.c diff
    src/syncterm/syncterm.rc diff
    Actually, I have no plans for new features soon... call this 1.5b

  583. Deucе
    Sat Jan 18 2025 18:33:31 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/sbbscon.c diff
    Fix JSDOCS WITH_SDL build. Apparently, whatever was making this not link before has been fixed, and so this workaround was breaking it.

  584. Deucе
    Sat Jan 18 2025 18:02:28 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CHANGES diff
    Document the fixes since 1.4

  585. Rob Swindell (on Debian Linux)
    Sat Jan 18 2025 17:28:50 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/global/rtypes.js diff
    Whoops, null is an object

  586. Deucе
    Sat Jan 18 2025 17:19:38 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/global/rtypes.js diff
    Fix type, and take a swing at not jsdoor compatibility.

  587. Rob Swindell (on Debian Linux)
    Sat Jan 18 2025 17:00:40 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/global/except.js diff
    exec/tests/global/rtypes.js diff
    src/sbbs3/js_global.c diff
    Throw fewer exceptions when passed null or undefined as parameters Some scripts (e.g. addfiles.js) depend on the previous (undocumented) behavior for some methods, e.g. lfexpand(undefined) would return undefined. So for global functions that are expected to return a modified version of the value passed (usually a string), return null or undefined when passed null or undefined. Backward compatibility is more important than consistency in this case. :-(

  588. Deucе
    Sat Jan 18 2025 16:29:18 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/ripper.c diff
    Now that vstat.vmem has more stuff, ripper needs to hack up more. Fixes assertion/crash in 91-column mode (used in LORD intro screens)

  589. Deucе
    Sat Jan 18 2025 16:13:22 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Fix scolling in modes that have extra rows EGA 80x43 has an extra six pixels at the bottom that are not part of the text area. When scrolling the botmap buffer, be sure to not update this area. Also, fix some screen invalidation bits when setting pixels. This should fix ticket 180.

  590. Rob Swindell (on Windows 11)
    Sat Jan 18 2025 15:33:38 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/jsexec.c diff
    Fix misalignment (by uncrustify?)

  591. Deucе
    Sat Jan 18 2025 15:13:40 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Fix major performance regression in RIP rendering A high number of RIP commands use setpixel(), and it was updated to scan the whole vmem for changes on each call. Now we just extract the part that is relevant and only update the one cell if needed. This also adds parameter validation to bitmap_setpixel() which can prevent some memory corruption and crashes.

  592. Deucе
    Sat Jan 18 2025 15:13:40 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    Fix race condition in starting/stopping playnote thread

  593. Rob Swindell (on Windows 11)
    Sat Jan 18 2025 14:59:28 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/jsexec.c diff
    Check/read the passed module path/name section in jsexec.ini first ... before the more ambiguous base filename check. e.g. if you run 'jsexec /path/to/test.js' and get separate set of settings from running 'jsexec test.js' depending on which sections you have added to your jsexec.ini file.

  594. Rob Swindell (on Debian Linux)
    Sat Jan 18 2025 14:17:14 GMT-0800 (PST)
    Added Files:
    

    exec/tests/user/except.js diff
    exec/tests/user/rtypes.js diff
    Modified Files:

    src/sbbs3/js_user.c diff
    More JS 'user' class method parameter validation And tests to insure the expected behavior

  595. Deucе
    Sat Jan 18 2025 13:08:06 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/ripper.c diff
    Do the lock assertion thing in ripper.c too.

  596. Deucе
    Sat Jan 18 2025 10:36:21 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CMakeLists.txt diff
    src/syncterm/GNUmakefile diff
    Don't link with libraries we run-time link :(

  597. Deucе
    Sat Jan 18 2025 10:29:13 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/GNUmakefile diff
    Add WITHOUT_JPEG_XL build option For those who want to force JPEG XL off, and don't use CMake

  598. Deucе
    Sat Jan 18 2025 10:01:45 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CMakeLists.txt diff
    src/syncterm/Info.plist diff
    src/syncterm/Manual.txt diff
    src/syncterm/PackageInfo.in diff
    src/syncterm/dpkg-control.in diff
    src/syncterm/haiku.rdef diff
    src/syncterm/syncterm.c diff
    src/syncterm/syncterm.rc diff
    And this is now 1.5a

  599. Deucе
    Sat Jan 18 2025 09:43:20 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CHANGES diff
    src/syncterm/CMakeLists.txt diff
    src/syncterm/Info.plist diff
    src/syncterm/Manual.txt diff
    src/syncterm/PackageInfo.in diff
    src/syncterm/dpkg-control.in diff
    src/syncterm/haiku.rdef diff
    src/syncterm/syncterm.c diff
    src/syncterm/syncterm.rc diff
    Update to 1.4

  600. Deucе
    Sat Jan 18 2025 09:11:17 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/global/sound.js diff
    Fix test for modified path

  601. Deucе
    Sat Jan 18 2025 08:40:54 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/jsexec.c diff
    MethodJIT crashes on OpenBSD Disable it in jsdoor

  602. Deucе
    Sat Jan 18 2025 08:03:10 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/global/nettype.js diff
    Fix error in detecting jsdoor.

  603. Deucе
    Sat Jan 18 2025 07:59:57 GMT-0800 (PST)
    Added Files:
    

    exec/tests/user/skipif diff
    Modified Files:

    .gitlab-ci-unix.yml diff
    Add skipif for user. Also, give test suites different names.

  604. Deucе
    Sat Jan 18 2025 07:57:59 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci-unix.yml diff
    Run tests in both jsdoor and jsexec

  605. Deucе
    Sat Jan 18 2025 07:55:41 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/global/nettype.js diff
    Don't run test in jsdoor

  606. Deucе
    Sat Jan 18 2025 07:54:59 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/global/format.js diff
    exec/tests/user/birthdate.js diff
    Don't use const The behaviour is unreliable in Spidermonkey 1.8.5, and the behaviour will change based on JS options.

  607. Deucе
    Sat Jan 18 2025 07:53:55 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/test.js diff
    Add support for a skipif file in each directory. If this file contains valid JS code that returns a true value, the directory is skipped.

  608. Deucе
    Sat Jan 18 2025 07:49:43 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_system.c diff
    src/sbbs3/jsexec.c diff
    Fix JSDoor warnings

  609. Deucе
    Sat Jan 18 2025 07:17:49 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/libjxl.c diff
    Don't fail JPEG XL due to missing JxlDecoderSetParallelRunner() That just means we can't do parallel, not that we can't do JPEG XL

  610. Deucе
    Sat Jan 18 2025 06:59:02 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/libjxl.h diff
    If JPEGXL_MAJOR_VERSION isn't define, define to zero. It wasn't in v0.6.x, which is packaged by Haiku.

  611. Rob Swindell (on Debian Linux)
    Fri Jan 17 2025 23:46:04 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/global/rtypes.js diff
    src/sbbs3/jsexec.c diff
    src/sbbs3/main.cpp diff
    Make global read(0) and readln(0) return undefined This is really an error condition, so like the jsdocs say: return undefined upon error This how read(0) worked in sbbs, but not jsexec before that last commit, so now just make readln and read work like that in both sbbs and jsexec.

  612. Rob Swindell (on Debian Linux)
    Fri Jan 17 2025 23:25:18 GMT-0800 (PST)
    Added Files:
    

    exec/tests/global/except.js diff
    exec/tests/global/rtypes.js diff
    Modified Files:

    src/sbbs3/js_archive.c diff
    src/sbbs3/js_bbs.cpp diff
    src/sbbs3/js_com.c diff
    src/sbbs3/js_cryptcon.c diff
    src/sbbs3/js_cryptkeyset.c diff
    src/sbbs3/js_filebase.c diff
    src/sbbs3/js_global.c diff
    src/sbbs3/js_mqtt.c diff
    src/sbbs3/js_msgbase.c diff
    src/sbbs3/js_system.c diff
    src/sbbs3/jsexec.c diff
    src/sbbs3/mailsrvr.c diff
    src/sbbs3/main.cpp diff
    src/sbbs3/sbbs.h diff
    Global JS function parameter validation and updated return types Many global functions now throw an exception when null or undefined is passed as a required parameter where null or undefined makes no sense. e.g. "Argument #1 is an unexpected 'null' or 'undefined' value" Example exception: is-a/has-a type functions will still return false when passed null or undefined. Changed global function return types: - write() now always returns undefined - printf() always returns a string, never undefined or garbage string - prompt() returns null (not undefined) upon no input (as documented) sbbs works more like jsexec: - read(0) now returns an empty string instead of undefined - readln(0) no longer waits for enter jsexec works more like sbbs: - add missing write_raw() global function, alias for write() Include expected number of argment in "Insufficient Arguments" exception message. Update JSDOCS for some global methods: - file_chmod returns boolean, not number - flags_str requires a minimum of one argument New tests to validate expected exceptions and return types based on usage.

  613. echicken
    Fri Jan 17 2025 22:59:18 GMT-0800 (PST)
    Modified Files:
    

    xtrn/bullshit/bullshit.js diff
    xtrn/bullshit/package-lock.json diff
    xtrn/bullshit/package.json diff
    New build with workaround for terminal cleanup on exit. Updated TS4S so we can build with -t while issue #777 is ongoing. Ran `npm audit fix` to address a security issue in some dependency of the build system. Perhaps this will silence the alert GitHub sent to DM; I'm not sure what that was.

  614. Rob Swindell (on Debian Linux)
    Fri Jan 17 2025 22:39:45 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/crypt/cert.js diff
    exec/tests/test.js diff
    Make these tests runnable from sbbs Don't use chdir(), just use js.exec_dir instead (e.g. for location of test.crt) Use console instead of stdout when stdout isn't defined. Log the file and line number of an an exception in a nested test when it happens.

  615. echicken
    Fri Jan 17 2025 12:16:40 GMT-0800 (PST)
    Modified Files:
    

    xtrn/ansiview/install-xtrn.ini diff
    xtrn/ansiview/readme.txt diff
    xtrn/ansiview/settings.ini diff
    Remove ecbbs online archive from defaults.

  616. echicken
    Fri Jan 17 2025 10:42:43 GMT-0800 (PST)
    Modified Files:
    

    exec/fido-nodelist-browser.js diff
    New build from https://gitlab.synchro.net/echicken/nodelist-browser Fixes #794, esc exits. Other hotkeys reassigned per discussion that happened I think on DOVE-Net. Fixes #818, show/hide cursor on netmail.

  617. Deucе
    Fri Jan 17 2025 09:52:53 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/GNUmakefile diff
    Fix previous commit. Was overriding value, not appending.

  618. Deucе
    Fri Jan 17 2025 08:57:31 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/GNUmakefile diff
    Include absolute rpath It appears that setcap may cause $ORIGIN to stop working for some unknown reason.

  619. Deucе
    Fri Jan 17 2025 07:24:57 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/telnets.c diff
    Set initial telnet modes in telnets Not sure how I missed this one.

  620. Deucе
    Fri Jan 17 2025 07:24:57 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/Manual.txt diff
    src/syncterm/bbslist.c diff
    src/syncterm/bbslist.h diff
    src/syncterm/conn_telnet.c diff
    Add new "Binmode Broken" option for telnet. In this mode, SyncTERM won't will/do TELNET_BINARY_TX at the start of a connection, leaving the mode up to the remote system. The main purpose for this option is to work around a bug in older Synchronet releases where early CTRL-C checking wouldn't work in binary mode. Implements feature request 91.

  621. Rob Swindell (on Windows 11)
    Fri Jan 17 2025 01:18:14 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_system.c diff
    Add system.birthdate_template string property Suitable for passing to console.gettemplate() when prompting for a birth date. I'm using like this in my logon.js to correct corrupted newuser birth dates: while(user.age < 10) { console.putmsg(bbs.text(bbs.text.EnterYourBirthday)); user.birthdate = console.gettemplate(system.birthdate_template); }

  622. Rob Swindell (on Debian Linux)
    Fri Jan 17 2025 00:57:15 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_system.c diff
    4 new system properties related to date formatting - date_format - date_separator - date_verbal - birthdate_format See JSDOCs for details

  623. Rob Swindell (on Debian Linux)
    Fri Jan 17 2025 00:57:15 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/jsexec.c diff
    Increase formatted log/console output buffers from 1K to 8K ... make them more useful (e.g. when the result of script is a big string).

  624. Deucе
    Thu Jan 16 2025 22:05:38 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/syncterm.man.in diff
    Update BUGS section

  625. Deucе
    Thu Jan 16 2025 21:37:00 GMT-0800 (PST)
    Modified Files:
    

    src/conio/ciolib.h diff
    src/syncterm/CHANGES diff
    src/syncterm/term.c diff
    Rewrite status bar code This will prevent the cursor from showing up when redrawing the status bar, and implements feature request 79.

  626. Deucе
    Thu Jan 16 2025 14:02:36 GMT-0800 (PST)
    Modified Files:
    

    src/conio/sdl_con.c diff
    Fix initial scaling and initial scaling mode in SDL mode This isn't great, but it works (on FreeBSD)

  627. Deucе
    Thu Jan 16 2025 11:32:58 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CHANGES diff
    src/xpdev/xpbeep.c diff
    Reduce audio level by -12dB. It was at absolute max (an extra one and it would clip) which is really a terrible thing to do to people wearing headphones. I don't really need to do it this way, but the math for the different wave forms depends heavily on integer wrapping (and WAVE_SHAPE_SINE_HARM is just stupid).

  628. Deucе
    Thu Jan 16 2025 11:30:38 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/syncterm.c diff
    Fix OSS appearence in Audio settings.

  629. Deucе
    Thu Jan 16 2025 10:58:28 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CHANGES diff
    src/syncterm/Manual.txt diff
    Audio output menu

  630. Deucе
    Thu Jan 16 2025 10:43:08 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/bbslist.c diff
    src/syncterm/syncterm.c diff
    src/syncterm/syncterm.h diff
    Allow configuring audio output type Compile-time isn't the best time for configuration.

  631. Deucе
    Thu Jan 16 2025 10:43:08 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/xpbeep.c diff
    src/xpdev/xpbeep.h diff
    Allow controlling sound output types with a global.

  632. Rob Swindell (on Debian Linux)
    Thu Jan 16 2025 09:50:09 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci-unix.yml diff
    Use non-buffered output for jsexec console (log) messages

  633. Deucе
    Thu Jan 16 2025 08:28:29 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/global/format.js diff
    Add an explicit undefined in there too.

  634. Deucе
    Thu Jan 16 2025 08:25:27 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/global/format.js diff
    src/sbbs3/js_sprintf.c diff
    Fix fencepost error in format arguments. The first argument after the list was still being replaced. Extended test to try the hard stuff.

  635. Rob Swindell (on Debian Linux)
    Thu Jan 16 2025 01:31:38 GMT-0800 (PST)
    Added Files:
    

    exec/tests/global/format.js diff
    A very basic initial set of tests for format()

  636. Rob Swindell (on Debian Linux)
    Thu Jan 16 2025 00:35:13 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci.yml diff
    Re-run CI pipeline when tests are added or modified

AuthorCommitsLatest
mcmlxxix1Fri Mar 21 2025 13:02:41 GMT-0700 (PDT)
Deucе325Fri Mar 21 2025 11:41:23 GMT-0700 (PDT)
Rob Swindell285Thu Mar 20 2025 17:34:17 GMT-0700 (PDT)
Eric Oulashin21Mon Mar 17 2025 18:15:56 GMT-0700 (PDT)
Craig Hendricks1Thu Mar 06 2025 09:51:20 GMT-0800 (PST)
echicken3Fri Jan 17 2025 22:59:18 GMT-0800 (PST)

For older commits (in CVS), click here

Dynamically generated in 897 milliseconds