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. 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])

  2. 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).

  3. 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.

  4. 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.

  5. 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.

  6. 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

  7. 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.

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

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

  9. 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

  10. 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

  11. 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.

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

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

  13. 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.

  14. 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.

  15. 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

  16. 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)

  17. 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.

  18. 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.

  19. 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

  20. 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.

  21. 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.

  22. 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!

  23. 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.

  24. 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

  25. 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!

  26. 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)

  27. 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

  28. 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.

  29. 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.

  30. 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.

  31. 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() (!)

  32. 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

  33. 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.

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

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

  35. 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.

  36. 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.

  37. 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

  38. 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.

  39. 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.

  40. 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.

  41. 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.

  42. 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").

  43. 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.

  44. 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

  45. 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.

  46. 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

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

    exec/jsdocs.js diff
    More consistent capitalization

  48. 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

  49. 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.

  50. 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.

  51. 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.

  52. 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

  53. 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.

  54. 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

  55. 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"

  56. 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.

  57. 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

  58. 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

  59. 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

  60. 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.

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

    src/conio/ciolib.adoc diff
    Add missing cell

  62. 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

  63. 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

  64. 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()

  65. 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

  66. 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

  67. 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

  68. 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

  69. 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

  70. 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)

  71. 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

  72. 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.

  73. 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()

  74. 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()

  75. 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()

  76. 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

  77. 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

  78. 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

  79. 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

  80. 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).

  81. 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.

  82. 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)

  83. 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).

  84. 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

  85. 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.

  86. 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!

  87. 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

  88. 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!

  89. 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.

  90. 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

  91. 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

  92. 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

  93. 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>

  94. 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

  95. 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

  96. 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.

  97. 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

  98. 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

  99. 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

  100. 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.

  101. 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

  102. 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.

  103. 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.

  104. 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

  105. 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.

  106. 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.

  107. 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

  108. 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

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

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

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

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

  111. 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.

  112. 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.

  113. 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

  114. 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

  115. 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".

  116. 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.

  117. 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

  118. 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)

  119. 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.

  120. 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

  121. 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.

  122. 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.

  123. 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.

  124. 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.

  125. 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?

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

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

  127. 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.

  128. 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

  129. 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.

  130. 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.

  131. 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.

  132. 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

  133. 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

  134. 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

  135. 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.

  136. 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.

  137. 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

  138. 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

  139. 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.

  140. 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

  141. 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

  142. 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

  143. 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.

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

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

  145. 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.

  146. 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

  147. 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

  148. 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.

  149. 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).

  150. 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.

  151. 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

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

    src/syncterm/webget.c diff
    More suppressions

  153. 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

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

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

  155. 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

  156. 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.

  157. 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.

  158. 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.

  159. 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

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

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

  161. 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.

  162. 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.

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

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

  164. 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

  165. 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.

  166. 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()

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

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

  168. 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

  169. 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

  170. 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.

  171. 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.

  172. 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

  173. 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.

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

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

  175. 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.

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

    src/syncterm/webget.c diff
    Fix WITHOUT_CRYPTLIB

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

    src/syncterm/GNUmakefile diff
    Fix WITH_RETRO for Win32

  178. 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.

  179. 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

  180. 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.

  181. 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)

  182. 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.

  183. 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

  184. 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. :)

  185. 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

  186. 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.

  187. 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.

  188. 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

  189. 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.

  190. 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.

  191. 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.

  192. 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.

  193. 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.

  194. 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.

  195. 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

  196. 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

  197. 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

  198. 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()!

  199. 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

  200. 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.

  201. 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

  202. 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)

  203. 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.

  204. 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)

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

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

  206. 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.

  207. 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.

  208. 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.

  209. 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

  210. 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.

  211. 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.

  212. 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

  213. 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)

  214. 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

  215. 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.

  216. 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.

  217. 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.

  218. 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.

  219. 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

  220. 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

  221. 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

  222. 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

  223. 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).

  224. Deucе
    Sat Jan 25 2025 17:08:02 GMT-0800 (PST)
    Modified Files:
    

    src/conio/allfonts.c diff
    Fix build without fonts

  225. 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

  226. 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

  227. 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)

  228. 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.

  229. 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...

  230. Deucе
    Sat Jan 25 2025 13:47:32 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/named_str_list.c diff
    Missed a speck...

  231. 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.

  232. 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. :)

  233. Deucе
    Sat Jan 25 2025 13:40:04 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/CMakeLists.txt diff
    Fix CMake builds

  234. 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)

  235. 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.

  236. 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.

  237. 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.

  238. 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.

  239. 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

  240. 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.

  241. 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.

  242. 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.

  243. Deucе
    Fri Jan 24 2025 20:59:04 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/bbslist.c diff
    Add a TODO comment

  244. 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

  245. 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.

  246. 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

  247. 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

  248. 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.

  249. 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.)

  250. 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?

  251. 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.

  252. Deucе
    Fri Jan 24 2025 10:33:22 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CMakeLists.txt diff
    Fix path

  253. 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.

  254. 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

  255. 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().

  256. 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.

  257. 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).

  258. 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

  259. 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

  260. 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

  261. Deucе
    Thu Jan 23 2025 19:01:46 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/Manual.txt diff
    Fix oxymoron

  262. 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

  263. 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...

  264. Deucе
    Thu Jan 23 2025 16:47:00 GMT-0800 (PST)
    Added Files:
    

    src/syncterm/prestest/extra2.png diff
    Add screenshot of extra2.pst

  265. 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

  266. 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

  267. 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.

  268. 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

  269. 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.

  270. Deucе
    Thu Jan 23 2025 12:05:15 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    Some todone comments.

  271. 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.

  272. 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"

  273. 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.

  274. 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. :(

  275. 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.

  276. 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)

  277. 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

  278. 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

  279. 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.

  280. 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.

  281. 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!

  282. 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.

  283. 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

  284. Deucе
    Wed Jan 22 2025 19:06:09 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/prestest/extra.pst diff
    Fix # sign

  285. Deucе
    Wed Jan 22 2025 18:23:48 GMT-0800 (PST)
    Added Files:
    

    src/syncterm/prestest/extra.pst diff
    Add extra tests found online.

  286. 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.

  287. Deucе
    Wed Jan 22 2025 15:35:11 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CHANGES diff
    Mention the new font for Prestel

  288. 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.

  289. 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.

  290. 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.

  291. 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

  292. 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.

  293. 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).

  294. 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)

  295. 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

  296. 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!

  297. 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.

  298. 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"

  299. 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".

  300. 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.

  301. 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

  302. 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

  303. 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.

  304. 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.

  305. 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

  306. 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.

  307. Deucе
    Tue Jan 21 2025 21:29:23 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Atari doesn't blink?

  308. Deucе
    Tue Jan 21 2025 21:16:53 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Fix previous commit.

  309. 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

  310. 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).

  311. 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.

  312. 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.

  313. 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

  314. 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.

  315. 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.

  316. 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

  317. 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

  318. 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

  319. 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.

  320. 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

  321. 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.

  322. 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"

  323. 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

  324. 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

  325. 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

  326. 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

  327. 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

  328. 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)

  329. 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

  330. 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

  331. 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

  332. 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.

  333. 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.

  334. 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.

  335. 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

  336. 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

  337. 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).

  338. 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.

  339. 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.

  340. 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.

  341. 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

  342. 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!

  343. 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.

  344. 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()

  345. 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.

  346. 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.

  347. 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

  348. 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...

  349. 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

  350. 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.

  351. 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

  352. 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.

  353. 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

  354. 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.

  355. 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'

  356. 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

  357. 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

  358. 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.

  359. 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

  360. 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.

  361. 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.

  362. 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

  363. 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()

  364. 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.

  365. 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

  366. 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

  367. 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)

  368. 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

  369. 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.

  370. Deucе
    Sun Jan 19 2025 20:30:38 GMT-0800 (PST)
    Modified Files:
    

    src/conio/x_events.c diff
    Formatting

  371. 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

  372. 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. :(

  373. Deucе
    Sun Jan 19 2025 18:10:24 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CHANGES diff
    Document Prestel fixes

  374. 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...

  375. 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.

  376. 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.

  377. 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.

  378. 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

  379. 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.

  380. 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.

  381. 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.

  382. 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()

  383. Deucе
    Sun Jan 19 2025 11:45:22 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Remove obsolete comment

  384. 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.

  385. 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.

  386. 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

  387. 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.

  388. 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.

  389. 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!

  390. 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.

  391. 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.

  392. 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

  393. 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.

  394. Deucе
    Sat Jan 18 2025 18:02:28 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CHANGES diff
    Document the fixes since 1.4

  395. 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

  396. 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.

  397. 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. :-(

  398. 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)

  399. 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.

  400. 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?)

  401. 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.

  402. 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

  403. 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.

  404. 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

  405. 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.

  406. 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 :(

  407. 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

  408. 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

  409. 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

  410. Deucе
    Sat Jan 18 2025 09:11:17 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/global/sound.js diff
    Fix test for modified path

  411. 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

  412. Deucе
    Sat Jan 18 2025 08:03:10 GMT-0800 (PST)
    Modified Files:
    

    exec/tests/global/nettype.js diff
    Fix error in detecting jsdoor.

  413. 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.

  414. 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

  415. 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

  416. 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.

  417. 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.

  418. 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

  419. 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

  420. 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.

  421. 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.

  422. 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.

  423. 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.

  424. 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.

  425. 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.

  426. 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.

  427. 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.

  428. 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.

  429. 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.

  430. 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.

  431. 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); }

  432. 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

  433. 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).

  434. Deucе
    Thu Jan 16 2025 22:05:38 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/syncterm.man.in diff
    Update BUGS section

  435. 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.

  436. 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)

  437. 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).

  438. Deucе
    Thu Jan 16 2025 11:30:38 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/syncterm.c diff
    Fix OSS appearence in Audio settings.

  439. 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

  440. 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.

  441. 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.

  442. 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

  443. 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.

  444. 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.

  445. 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()

  446. 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

  447. Rob Swindell (on Debian Linux)
    Thu Jan 16 2025 00:29:43 GMT-0800 (PST)
    Added Files:
    

    exec/tests/global/nettype.js diff
    Ported nettype.js from exec/bench to exec/tests

  448. Rob Swindell (on Debian Linux)
    Thu Jan 16 2025 00:29:43 GMT-0800 (PST)
    Modified Files:
    

    exec/avatars.js diff
    Work-around avatars.js line 271: TypeError: hdr is null with a null hdr check before use (corrupt msg base?)

  449. Rob Swindell (on Debian Linux)
    Thu Jan 16 2025 00:29:43 GMT-0800 (PST)
    Modified Files:
    

    exec/default.js diff
    Remove "Or" from ;help hint since the '?' hint isn't displayed in novice mode

  450. Rob Swindell (on macOS)
    Wed Jan 15 2025 23:04:40 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/jsexec.c diff
    Revert "Temporary debug to find out where/why jsexec is hanging during mac mini m4 CI test" This reverts commit ebe52737cd48d45a843d12eaa7909551f491cc36.

  451. Rob Swindell (on macOS)
    Wed Jan 15 2025 23:04:18 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/jsexec.c diff
    Revert "Add an fflsuh() for temp debug spew" This reverts commit 4ce915370298c9c4912a4d4095852854a0726225.

  452. Rob Swindell (on macOS)
    Wed Jan 15 2025 23:04:03 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/dirwrap.c diff
    Revert "Add some temporary debug output to find the mac mini m4 hang" This reverts commit 33be8662a0d67a0ced7f06587fdec01a27b818a8.

  453. Rob Swindell (on macOS)
    Wed Jan 15 2025 22:55:48 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci-unix.yml diff
    Actually set SBBSCTRL (not SBBSEXEC) env var

  454. Rob Swindell (on Debian Linux)
    Wed Jan 15 2025 22:46:43 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci-unix.yml diff
    Try setting SBBSCTRL env var instead gitlab-runner on my Mac mini doesn't have access to /sbbs

  455. Rob Swindell (on macOS)
    Wed Jan 15 2025 22:32:29 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/dirwrap.c diff
    Add some temporary debug output to find the mac mini m4 hang

  456. Deucе
    Wed Jan 15 2025 22:28:03 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/GNUmakefile diff
    Use ORIGIN everywhere. We don't build on SunOS anymore, and using LD_RUN_PATH sucks. Also, it was badly out of date.

  457. Rob Swindell (on macOS)
    Wed Jan 15 2025 22:16:45 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/jsexec.c diff
    Add an fflsuh() for temp debug spew

  458. Rob Swindell (on macOS)
    Wed Jan 15 2025 21:48:55 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/jsexec.c diff
    Temporary debug to find out where/why jsexec is hanging during mac mini m4 CI test

  459. Rob Swindell (on Debian Linux)
    Wed Jan 15 2025 21:22:42 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci-unix.yml diff
    Wrong path to ctrl dir (not that it really matters I think)

  460. Deucе
    Wed Jan 15 2025 21:18:51 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/GNUmakefile diff
    For NetBSD, add $ORIGIN and $ORIGIN/../$(LIBODIR) to the RPATH

  461. Rob Swindell (on Debian Linux)
    Wed Jan 15 2025 20:53:45 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci-unix.yml diff
    Specify path to ctrl directory on jsexec command-line

  462. Rob Swindell (on Debian Linux)
    Wed Jan 15 2025 20:43:47 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci-unix.yml diff
    Attempt to run exec/tests/ using JSexec instead of JSdoor attempt #2

  463. Rob Swindell (on Debian Linux)
    Wed Jan 15 2025 20:30:40 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci-unix.yml diff
    Revert "Use jsexec for these JS tests instad of jsdoor, jsdoor doesn't have a User class" This reverts commit 5c6a22ed3dd74637c37ee84696313ff249a24929. This doesn't work cause: Unable to create pipeline openbsd-amd64 js-testsuite job: undefined need: openbsd-amd64 [jsexec] and I'm not about to copy/paste those 50 lines to create the needed jsexec artifact. <sigh>

  464. Rob Swindell (on Debian Linux)
    Wed Jan 15 2025 20:23:48 GMT-0800 (PST)
    Modified Files:
    

    .gitlab-ci-unix.yml diff
    Use jsexec for these JS tests instad of jsdoor, jsdoor doesn't have a User class If we want to (re)run a specific set/subset of tests with jsdoor, perhaps we can come up with some naming scheme that allows that, but for now, it's more important that jsexec is correctly functioning than jsdoor.

  465. Deucе
    Wed Jan 15 2025 20:23:16 GMT-0800 (PST)
    Modified Files:
    

    src/conio/mouse.c diff
    Don't enter the drag start on a move event unless drag is enabled. Likely fixes difficulties pasting in SyncTERM. Probably want to define some minimum amount you need to move to trigger dragging.

  466. Rob Swindell (on Debian Linux)
    Wed Jan 15 2025 20:01:58 GMT-0800 (PST)
    Added Files:
    

    exec/tests/user/birthdate.js diff
    Modified Files:

    src/sbbs3/userdat.c diff
    Refactor the birthdate parsing logic, add unit test The birthdate parsing is now a lot more robust and will recognize all kinds of variants/formats and use range checks to disambiguate provided dates and even support partial dates (e.g. year only, year/month and month/year). The tests should all pass regardless of what the sysop has set for their system date format in SCFG. I had considered using sscanf() for the parsing logic but ended up going with strtoul() only and that seems to be working well (as reflected by the passing test cases).

  467. Rob Swindell (on Debian Linux)
    Wed Jan 15 2025 20:00:48 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/ftpsrvr.c diff
    Change terminate_server to correct type expected by xpms_add* functions

  468. Rob Swindell (on Debian Linux)
    Wed Jan 15 2025 20:00:48 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/userdat.c diff
    Fix parsing of field-separated birthdate strings with 4-digit year ... which is the format expected/required when entering or editing birthdates in the terminal server. So this is a pretty embarassingly bad bug introduced just before the v3.20b release to fix a less-severe bug with ecWeb new user registration (still) writing 2-digit years to the user.birthdate field. :-( Fix for issue #863 I considerd making these get_birthdate field functions more tolerant of less strictly formatted strings (e.g. single-digit month or day), but decided to keep this change to just a fix for the issue at hand. These functions could be more robust to handle more variance in user/script input.

  469. Rob Swindell (on Debian Linux)
    Wed Jan 15 2025 20:00:48 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/load_cfg.c diff
    Remove dead code, fixing CID 530828

  470. Deucе
    Wed Jan 15 2025 16:50:15 GMT-0800 (PST)
    Added Files:
    

    3rdp/build/cl-remove-silly-pragmas.patch diff
    Modified Files:

    3rdp/build/CMakeLists-cl.txt diff
    3rdp/build/CMakeLists.txt diff
    3rdp/build/GNUmakefile diff
    Remove all the pragmas telling me what I did. This is mostly as a test for using git to generate these patches.

  471. Deucе
    Wed Jan 15 2025 09:30:05 GMT-0800 (PST)
    Modified Files:
    

    src/conio/sdl_con.c diff
    src/xpdev/xpbeep.c diff
    Decorate intentional sleeps while holding lock So they're auto-triaged in Synchronet.

  472. Deucе
    Wed Jan 15 2025 09:23:14 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/sdlfuncs.c diff
    Don't leak sdl_dll (make it global) Also, don't do stupid things if called more than once.

  473. Rob Swindell (on ChromeOS)
    Tue Jan 14 2025 22:38:59 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/ftpsrvr.c diff
    src/sbbs3/js_socket.c diff
    src/sbbs3/mailsrvr.c diff
    src/sbbs3/main.cpp diff
    src/sbbs3/services.c diff
    src/sbbs3/websrvr.c diff
    src/xpdev/multisock.c diff
    src/xpdev/multisock.h diff
    src/xpdev/sockwrap.c diff
    src/xpdev/sockwrap.h diff
    Pass an optional 'terminated' (bool pointer) to the multi-sock bind functions This allows a server that's being terminated to stop the port-bind delay/retry loops and terminate more quickly in cases of port binding failures.

  474. Deucе
    Tue Jan 14 2025 19:59:30 GMT-0800 (PST)
    Added Files:
    

    src/syncterm/.indent.pro diff
    Add config file for GNU indent Also not happy with this one.

  475. Rob Swindell (on Windows 11)
    Tue Jan 14 2025 17:40:31 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/ftpsrvr.c diff
    src/sbbs3/jsexec.c diff
    src/sbbs3/load_cfg.c diff
    src/sbbs3/mailsrvr.c diff
    src/sbbs3/main.cpp diff
    src/sbbs3/sbbscon.c diff
    src/sbbs3/sbbsecho.c diff
    src/sbbs3/services.c diff
    src/sbbs3/websrvr.c diff
    load_cfg() can now report config file warnings Log the error string if it's non-blank, as a warning (e.g. unrecognized text.ini text.dat string ID). Reduce the number of logged messages when config load failure happens. Commonize the load_cfg() error log messages.

  476. Rob Swindell (on Windows 11)
    Tue Jan 14 2025 13:59:37 GMT-0800 (PST)
    Modified Files:
    

    ctrl/text.dat diff
    exec/load/text.js diff
    src/sbbs3/text.h diff
    src/sbbs3/text_defaults.c diff
    src/sbbs3/text_id.c diff
    src/sbbs3/xtrn.cpp diff
    Add/use "NoDOS" text.dat string Displayed instead of hard-coded string in xtrn.cpp when attempting to run 16-bit DOS program on system with no DOS/DOSemu support.

  477. Rob Swindell (on Windows 11)
    Tue Jan 14 2025 13:56:29 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/scfg/scfgsub.c diff
    Don't display FidoNet address and origin line when not-FidoNet-enabled sub Displaying these settings when they're not used can confuse sysops.

  478. Rob Swindell (on Windows 11)
    Tue Jan 14 2025 13:51:41 GMT-0800 (PST)
    Modified Files:
    

    src/uifc/uifc32.c diff
    Resolve MSVC warning

  479. Deucе
    Tue Jan 14 2025 07:59:32 GMT-0800 (PST)
    Added Files:
    

    src/syncterm/.astylerc diff
    Modified Files:

    src/syncterm/bbslist.c diff
    Add an AStyle config that doesn't bother me. Biggest issue with this one is it doesn't allow BSD-style continuation indentation, and forces aligning with parens.

  480. Deucе
    Tue Jan 14 2025 07:03:42 GMT-0800 (PST)
    Added Files:
    

    src/syncterm/.clang-format diff
    Config for ClangFormat This is almost, but not quite great. The biggest issue where it falls over is in struct array indentation and breaking. It tries to force everything onto one line, making it illegible. :(

  481. Deucе
    Mon Jan 13 2025 23:40:34 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/uncrustify.cfg diff
    Update for latest uncrustify Still not completely happy with it.

  482. Rob Swindell (on ChromeOS)
    Mon Jan 13 2025 21:31:38 GMT-0800 (PST)
    Modified Files:
    

    src/encode/lzh.c diff
    src/encode/uucode.c diff
    src/sbbs3/ans2asc.c diff
    src/sbbs3/answer.cpp diff
    src/sbbs3/ars.c diff
    src/sbbs3/atcodes.cpp diff
    src/sbbs3/baja.c diff
    src/sbbs3/chat.cpp diff
    src/sbbs3/chk_ar.cpp diff
    src/sbbs3/chksmb.c diff
    src/sbbs3/con_out.cpp diff
    src/sbbs3/data.cpp diff
    src/sbbs3/download.cpp diff
    src/sbbs3/exec.cpp diff
    src/sbbs3/execfile.cpp diff
    src/sbbs3/execfunc.cpp diff
    src/sbbs3/execmisc.cpp diff
    src/sbbs3/execmsg.cpp diff
    src/sbbs3/execnet.cpp diff
    src/sbbs3/filelist.c diff
    src/sbbs3/fixsmb.c diff
    src/sbbs3/ftpsrvr.c diff
    src/sbbs3/getkey.cpp diff
    src/sbbs3/getmail.c diff
    src/sbbs3/getmsg.cpp diff
    src/sbbs3/getnode.cpp diff
    src/sbbs3/getstr.cpp diff
    src/sbbs3/inkey.cpp diff
    src/sbbs3/js_console.cpp diff
    src/sbbs3/js_file.c diff
    src/sbbs3/js_msg_area.c diff
    src/sbbs3/js_msgbase.c diff
    src/sbbs3/js_server.c diff
    src/sbbs3/js_system.c diff
    src/sbbs3/js_uifc.c diff
    src/sbbs3/listfile.cpp diff
    src/sbbs3/logfile.cpp diff
    src/sbbs3/logout.cpp diff
    src/sbbs3/mailsrvr.c diff
    src/sbbs3/main.cpp diff
    src/sbbs3/msg_id.c diff
    src/sbbs3/msgdate.c diff
    src/sbbs3/msgtoqwk.cpp diff
    src/sbbs3/netmail.cpp diff
    src/sbbs3/newuser.cpp diff
    src/sbbs3/node.c diff
    src/sbbs3/pack_qwk.cpp diff
    src/sbbs3/pack_rep.cpp diff
    src/sbbs3/prntfile.cpp diff
    src/sbbs3/qwk.cpp diff
    src/sbbs3/qwknodes.c diff
    src/sbbs3/qwktomsg.cpp diff
    src/sbbs3/readmail.cpp diff
    src/sbbs3/readmsgs.cpp diff
    src/sbbs3/sbbs_ini.c diff
    src/sbbs3/sbbsecho.c diff
    src/sbbs3/scandirs.cpp diff
    src/sbbs3/scansubs.cpp diff
    src/sbbs3/scfg/scfgmsg.c diff
    src/sbbs3/scfg/scfgnet.c diff
    src/sbbs3/scfg/scfgxfr2.c diff
    src/sbbs3/scfg/scfgxtrn.c diff
    src/sbbs3/scfglib2.c diff
    src/sbbs3/services.c diff
    src/sbbs3/sexyz.c diff
    src/sbbs3/smbutil.c diff
    src/sbbs3/str.cpp diff
    src/sbbs3/str_util.c diff
    src/sbbs3/unbaja.c diff
    src/sbbs3/upgrade_to_v319.c diff
    src/sbbs3/upload.cpp diff
    src/sbbs3/userdat.c diff
    src/sbbs3/useredit.cpp diff
    src/sbbs3/websrvr.c diff
    src/sbbs3/writemsg.cpp diff
    src/sbbs3/xtrn.cpp diff
    src/sbbs3/xtrn_sec.cpp diff
    src/sbbs3/zmodem.c diff
    src/smblib/smballoc.c diff
    src/smblib/smblib.c diff
    src/uifc/filepick.c diff
    src/uifc/uifc32.c diff
    src/uifc/uifctest.c diff
    src/uifc/uifcx.c diff
    src/uncrustify.cfg diff
    src/xpdev/dat_file.c diff
    src/xpdev/genwrap.c diff
    src/xpdev/xpdatetime.c diff
    Split one-liner if () statements into 2 lines uncrustify nl_split_if_one_liner setting

  483. Deucе
    Mon Jan 13 2025 21:22:13 GMT-0800 (PST)
    Modified Files:
    

    3rdp/win64.release/libjxl/lib/libbrotlicommon.a diff
    3rdp/win64.release/libjxl/lib/libbrotlidec.a diff
    3rdp/win64.release/libjxl/lib/libhwy.a diff
    3rdp/win64.release/libjxl/lib/libjxl.a diff
    3rdp/win64.release/libjxl/lib/libjxl_threads.a diff
    Rebuild without AVX support. Win64 builds were crashing decoding JPEG XLs on my AMD lappy.

  484. Rob Swindell (on ChromeOS)
    Mon Jan 13 2025 21:10:15 GMT-0800 (PST)
    Modified Files:
    

    src/encode/base64.c diff
    src/encode/lzh.c diff
    src/encode/uucode.c diff
    src/encode/yenc.c diff
    src/hash/md5.c diff
    src/sbbs3/ans2asc.c diff
    src/sbbs3/ansiterm.cpp diff
    src/sbbs3/answer.cpp diff
    src/sbbs3/ars.c diff
    src/sbbs3/asc2ans.c diff
    src/sbbs3/atcodes.cpp diff
    src/sbbs3/baja.c diff
    src/sbbs3/bat_xfer.cpp diff
    src/sbbs3/bulkmail.cpp diff
    src/sbbs3/chat.cpp diff
    src/sbbs3/chk_ar.cpp diff
    src/sbbs3/chksmb.c diff
    src/sbbs3/con_hi.cpp diff
    src/sbbs3/con_out.cpp diff
    src/sbbs3/data.cpp diff
    src/sbbs3/data_ovl.cpp diff
    src/sbbs3/date_str.c diff
    src/sbbs3/download.cpp diff
    src/sbbs3/dupefind.c diff
    src/sbbs3/email.cpp diff
    src/sbbs3/exec.cpp diff
    src/sbbs3/execfile.cpp diff
    src/sbbs3/execfunc.cpp diff
    src/sbbs3/execmisc.cpp diff
    src/sbbs3/execmsg.cpp diff
    src/sbbs3/execnet.cpp diff
    src/sbbs3/fido.cpp diff
    src/sbbs3/file.cpp diff
    src/sbbs3/filedat.c diff
    src/sbbs3/filelist.c diff
    src/sbbs3/finddupes.c diff
    src/sbbs3/fixsmb.c diff
    src/sbbs3/fmsgdump.c diff
    src/sbbs3/ftpsrvr.c diff
    src/sbbs3/getkey.cpp diff
    src/sbbs3/getmail.c diff
    src/sbbs3/getmsg.cpp diff
    src/sbbs3/getnode.cpp diff
    src/sbbs3/getstats.c diff
    src/sbbs3/getstr.cpp diff
    src/sbbs3/inkey.cpp diff
    src/sbbs3/js_bbs.cpp diff
    src/sbbs3/js_client.c diff
    src/sbbs3/js_com.c diff
    src/sbbs3/js_conio.c diff
    src/sbbs3/js_console.cpp diff
    src/sbbs3/js_cryptcert.c diff
    src/sbbs3/js_cryptcon.c diff
    src/sbbs3/js_cryptkeyset.c diff
    src/sbbs3/js_file.c diff
    src/sbbs3/js_file_area.c diff
    src/sbbs3/js_filebase.c diff
    src/sbbs3/js_global.c diff
    src/sbbs3/js_internal.c diff
    src/sbbs3/js_msg_area.c diff
    src/sbbs3/js_msgbase.c diff
    src/sbbs3/js_queue.c diff
    src/sbbs3/js_request.c diff
    src/sbbs3/js_server.c diff
    src/sbbs3/js_socket.c diff
    src/sbbs3/js_sprintf.c diff
    src/sbbs3/js_system.c diff
    src/sbbs3/js_uifc.c diff
    src/sbbs3/js_user.c diff
    src/sbbs3/js_xtrn_area.c diff
    src/sbbs3/jsdebug.c diff
    src/sbbs3/jsdoor.c diff
    src/sbbs3/jsexec.c diff
    src/sbbs3/listfile.cpp diff
    src/sbbs3/load_cfg.c diff
    src/sbbs3/login.cpp diff
    src/sbbs3/logon.cpp diff
    src/sbbs3/mailsrvr.c diff
    src/sbbs3/main.cpp diff
    src/sbbs3/makeuser.c diff
    src/sbbs3/mime.c diff
    src/sbbs3/msdirent.c diff
    src/sbbs3/msg_id.c diff
    src/sbbs3/msgdate.c diff
    src/sbbs3/msgtoqwk.cpp diff
    src/sbbs3/mxlookup.c diff
    src/sbbs3/netmail.cpp diff
    src/sbbs3/newuser.cpp diff
    src/sbbs3/node.c diff
    src/sbbs3/nopen.c diff
    src/sbbs3/ntsvcs.c diff
    src/sbbs3/pack_qwk.cpp diff
    src/sbbs3/pack_rep.cpp diff
    src/sbbs3/pktdump.c diff
    src/sbbs3/postmsg.cpp diff
    src/sbbs3/putmsg.cpp diff
    src/sbbs3/qwk.cpp diff
    src/sbbs3/qwknodes.c diff
    src/sbbs3/qwktomsg.cpp diff
    src/sbbs3/readmail.cpp diff
    src/sbbs3/readmsgs.cpp diff
    src/sbbs3/readtext.c diff
    src/sbbs3/rechocfg.c diff
    src/sbbs3/ringbuf.c diff
    src/sbbs3/sbbs_ini.c diff
    src/sbbs3/sbbscon.c diff
    src/sbbs3/sbbsecho.c diff
    src/sbbs3/sbbsexec.c diff
    src/sbbs3/scfg/scfg.c diff
    src/sbbs3/scfg/scfgmsg.c diff
    src/sbbs3/scfg/scfgnet.c diff
    src/sbbs3/scfg/scfgxfr2.c diff
    src/sbbs3/scfg/scfgxtrn.c diff
    src/sbbs3/scfglib1.c diff
    src/sbbs3/scfglib2.c diff
    src/sbbs3/scfgsave.c diff
    src/sbbs3/services.c diff
    src/sbbs3/sexyz.c diff
    src/sbbs3/sftp.cpp diff
    src/sbbs3/smbutil.c diff
    src/sbbs3/sockopts.c diff
    src/sbbs3/str.cpp diff
    src/sbbs3/str_util.c diff
    src/sbbs3/telnet.c diff
    src/sbbs3/text_defaults.c diff
    src/sbbs3/text_id.c diff
    src/sbbs3/text_sec.cpp diff
    src/sbbs3/textgen.c diff
    src/sbbs3/tmp_xfer.cpp diff
    src/sbbs3/trash.c diff
    src/sbbs3/un_qwk.cpp diff
    src/sbbs3/un_rep.cpp diff
    src/sbbs3/unbaja.c diff
    src/sbbs3/upgrade_to_v319.c diff
    src/sbbs3/upgrade_to_v320.c diff
    src/sbbs3/upload.cpp diff
    src/sbbs3/userdat.c diff
    src/sbbs3/useredit.cpp diff
    src/sbbs3/ver.cpp diff
    src/sbbs3/viewfile.cpp diff
    src/sbbs3/websrvr.c diff
    src/sbbs3/writemsg.cpp diff
    src/sbbs3/xmodem.c diff
    src/sbbs3/xtrn.cpp diff
    src/sbbs3/xtrn_sec.cpp diff
    src/sbbs3/zmodem.c diff
    src/smblib/smbadd.c diff
    src/smblib/smballoc.c diff
    src/smblib/smbdump.c diff
    src/smblib/smbfile.c diff
    src/smblib/smbhash.c diff
    src/smblib/smblib.c diff
    src/smblib/smbstr.c diff
    src/smblib/smbtxt.c diff
    src/uncrustify.cfg diff
    src/xpdev/dat_file.c diff
    src/xpdev/datewrap.c diff
    src/xpdev/filewrap.c diff
    src/xpdev/genwrap.c diff
    src/xpdev/ini_file.c diff
    src/xpdev/link_list.c diff
    src/xpdev/msg_queue.c diff
    src/xpdev/netwrap.c diff
    src/xpdev/sdlfuncs.c diff
    src/xpdev/semfile.c diff
    src/xpdev/semwrap.c diff
    src/xpdev/sockwrap.c diff
    src/xpdev/str_list.c diff
    src/xpdev/strwrap.c diff
    src/xpdev/threadwrap.c diff
    src/xpdev/wraptest.c diff
    src/xpdev/xp_dl.c diff
    src/xpdev/xp_syslog.c diff
    src/xpdev/xpbeep.c diff
    src/xpdev/xpdatetime.c diff
    src/xpdev/xpevent.c diff
    src/xpdev/xpprintf.c diff
    src/xpdev/xptime.c diff
    Remove unnecessary parenthesis in return statements ... using uncrustify mod_paren_on_return config

  485. Rob Swindell (on ChromeOS)
    Mon Jan 13 2025 21:10:15 GMT-0800 (PST)
    Modified Files:
    

    src/encode/base64.c diff
    src/encode/base64.h diff
    src/encode/hex.c diff
    src/encode/hex.h diff
    src/encode/lzh.c diff
    src/encode/lzh.h diff
    src/encode/utf8.c diff
    src/encode/utf8.h diff
    src/encode/uucode.c diff
    src/encode/yenc.c diff
    src/hash/crc16.c diff
    src/hash/crc16.h diff
    src/hash/crc32.c diff
    src/hash/crc32.h diff
    src/hash/md5.c diff
    src/hash/md5.h diff
    src/hash/sha1.c diff
    src/hash/sha1.h diff
    src/sbbs3/ans2asc.c diff
    src/sbbs3/ansiterm.cpp diff
    src/sbbs3/answer.cpp diff
    src/sbbs3/ars.c diff
    src/sbbs3/ars_defs.h diff
    src/sbbs3/asc2ans.c diff
    src/sbbs3/atcodes.cpp diff
    src/sbbs3/bat_xfer.cpp diff
    src/sbbs3/bulkmail.cpp diff
    src/sbbs3/chat.cpp diff
    src/sbbs3/chk_ar.cpp diff
    src/sbbs3/chksmb.c diff
    src/sbbs3/client.h diff
    src/sbbs3/cmdshell.h diff
    src/sbbs3/con_hi.cpp diff
    src/sbbs3/con_out.cpp diff
    src/sbbs3/dat_rec.c diff
    src/sbbs3/dat_rec.h diff
    src/sbbs3/data.cpp diff
    src/sbbs3/data_ovl.cpp diff
    src/sbbs3/date_str.c diff
    src/sbbs3/dllexport.h diff
    src/sbbs3/download.cpp diff
    src/sbbs3/dupefind.c diff
    src/sbbs3/echocfg.c diff
    src/sbbs3/email.cpp diff
    src/sbbs3/exec.cpp diff
    src/sbbs3/execfile.cpp diff
    src/sbbs3/execfunc.cpp diff
    src/sbbs3/execmisc.cpp diff
    src/sbbs3/execmsg.cpp diff
    src/sbbs3/execnet.cpp diff
    src/sbbs3/fastcgi.h diff
    src/sbbs3/fido.cpp diff
    src/sbbs3/fidodefs.h diff
    src/sbbs3/file.cpp diff
    src/sbbs3/filedat.c diff
    src/sbbs3/filelist.c diff
    src/sbbs3/finddupes.c diff
    src/sbbs3/findstr.c diff
    src/sbbs3/findstr.h diff
    src/sbbs3/fixsmb.c diff
    src/sbbs3/fmsgdump.c diff
    src/sbbs3/fossdefs.h diff
    src/sbbs3/fossinfo.c diff
    src/sbbs3/ftpsrvr.c diff
    src/sbbs3/ftpsrvr.h diff
    src/sbbs3/getctrl.c diff
    src/sbbs3/getkey.cpp diff
    src/sbbs3/getmail.c diff
    src/sbbs3/getmail.h diff
    src/sbbs3/getmsg.cpp diff
    src/sbbs3/getnode.cpp diff
    src/sbbs3/getstats.c diff
    src/sbbs3/getstats.h diff
    src/sbbs3/getstr.cpp diff
    src/sbbs3/htmlansi.h diff
    src/sbbs3/ident.c diff
    src/sbbs3/ident.h diff
    src/sbbs3/inkey.cpp diff
    src/sbbs3/js_archive.c diff
    src/sbbs3/js_bbs.cpp diff
    src/sbbs3/js_cache.h diff
    src/sbbs3/js_client.c diff
    src/sbbs3/js_com.c diff
    src/sbbs3/js_conio.c diff
    src/sbbs3/js_console.cpp diff
    src/sbbs3/js_cryptcert.c diff
    src/sbbs3/js_cryptcert.h diff
    src/sbbs3/js_cryptcon.c diff
    src/sbbs3/js_cryptcon.h diff
    src/sbbs3/js_cryptkeyset.c diff
    src/sbbs3/js_file.c diff
    src/sbbs3/js_file_area.c diff
    src/sbbs3/js_filebase.c diff
    src/sbbs3/js_global.c diff
    src/sbbs3/js_internal.c diff
    src/sbbs3/js_mqtt.c diff
    src/sbbs3/js_msg_area.c diff
    src/sbbs3/js_msgbase.c diff
    src/sbbs3/js_queue.c diff
    src/sbbs3/js_request.c diff
    src/sbbs3/js_request.h diff
    src/sbbs3/js_rtpool.c diff
    src/sbbs3/js_rtpool.h diff
    src/sbbs3/js_server.c diff
    src/sbbs3/js_socket.c diff
    src/sbbs3/js_socket.h diff
    src/sbbs3/js_sprintf.c diff
    src/sbbs3/js_system.c diff
    src/sbbs3/js_uifc.c diff
    src/sbbs3/js_user.c diff
    src/sbbs3/js_xtrn_area.c diff
    src/sbbs3/jsdebug.c diff
    src/sbbs3/jsdebug.h diff
    src/sbbs3/jsdoor.c diff
    src/sbbs3/jsexec.c diff
    src/sbbs3/listfile.cpp diff
    src/sbbs3/load_cfg.c diff
    src/sbbs3/load_cfg.h diff
    src/sbbs3/logfile.cpp diff
    src/sbbs3/login.cpp diff
    src/sbbs3/logon.cpp diff
    src/sbbs3/logout.cpp diff
    src/sbbs3/mail.cpp diff
    src/sbbs3/mailsrvr.c diff
    src/sbbs3/mailsrvr.h diff
    src/sbbs3/main.cpp diff
    src/sbbs3/makeuser.c diff
    src/sbbs3/mime.c diff
    src/sbbs3/mime.h diff
    src/sbbs3/mqtt.c diff
    src/sbbs3/mqtt.h diff
    src/sbbs3/msdirent.c diff
    src/sbbs3/msdirent.h diff
    src/sbbs3/msg_id.c diff
    src/sbbs3/msg_id.h diff
    src/sbbs3/msgdate.c diff
    src/sbbs3/msgdate.h diff
    src/sbbs3/msgtoqwk.cpp diff
    src/sbbs3/mxlookup.c diff
    src/sbbs3/netmail.cpp diff
    src/sbbs3/newuser.cpp diff
    src/sbbs3/node.c diff
    src/sbbs3/nodedefs.h diff
    src/sbbs3/nopen.c diff
    src/sbbs3/nopen.h diff
    src/sbbs3/ntsvcs.c diff
    src/sbbs3/ntsvcs.h diff
    src/sbbs3/pack_qwk.cpp diff
    src/sbbs3/pack_rep.cpp diff
    src/sbbs3/pktdump.c diff
    src/sbbs3/postmsg.cpp diff
    src/sbbs3/prntfile.cpp diff
    src/sbbs3/putmsg.cpp diff
    src/sbbs3/putnode.cpp diff
    src/sbbs3/qwk.cpp diff
    src/sbbs3/qwk.h diff
    src/sbbs3/qwknodes.c diff
    src/sbbs3/qwktomsg.cpp diff
    src/sbbs3/readmail.cpp diff
    src/sbbs3/readmsgs.cpp diff
    src/sbbs3/readsauce.c diff
    src/sbbs3/readtext.c diff
    src/sbbs3/rechocfg.c diff
    src/sbbs3/ringbuf.c diff
    src/sbbs3/ringbuf.h diff
    src/sbbs3/riodefs.h diff
    src/sbbs3/sauce.c diff
    src/sbbs3/saucedefs.h diff
    src/sbbs3/sbbs_ini.c diff
    src/sbbs3/sbbs_ini.h diff
    src/sbbs3/sbbscon.c diff
    src/sbbs3/sbbsdefs.h diff
    src/sbbs3/sbbsecho.c diff
    src/sbbs3/sbbsecho.h diff
    src/sbbs3/sbbsexec.c diff
    src/sbbs3/scandirs.cpp diff
    src/sbbs3/scansubs.cpp diff
    src/sbbs3/scfg/scfg.c diff
    src/sbbs3/scfg/scfg.h diff
    src/sbbs3/scfg/scfgchat.c diff
    src/sbbs3/scfg/scfgmsg.c diff
    src/sbbs3/scfg/scfgnet.c diff
    src/sbbs3/scfg/scfgnode.c diff
    src/sbbs3/scfg/scfgsrvr.c diff
    src/sbbs3/scfg/scfgsub.c diff
    src/sbbs3/scfg/scfgsys.c diff
    src/sbbs3/scfg/scfgxfr1.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/scfglib2.c diff
    src/sbbs3/scfgsave.c diff
    src/sbbs3/scfgsave.h diff
    src/sbbs3/services.c diff
    src/sbbs3/services.h diff
    src/sbbs3/sexyz.c diff
    src/sbbs3/sexyz.h diff
    src/sbbs3/sftp.cpp diff
    src/sbbs3/slog.c diff
    src/sbbs3/smbutil.c diff
    src/sbbs3/sockopts.c diff
    src/sbbs3/ssl.c diff
    src/sbbs3/ssl.h diff
    src/sbbs3/startup.h diff
    src/sbbs3/str.cpp diff
    src/sbbs3/str_util.c diff
    src/sbbs3/str_util.h diff
    src/sbbs3/telgate.cpp diff
    src/sbbs3/telnet.c diff
    src/sbbs3/telnet.h diff
    src/sbbs3/text_sec.cpp diff
    src/sbbs3/textgen.c diff
    src/sbbs3/tmp_xfer.cpp diff
    src/sbbs3/trash.c diff
    src/sbbs3/trash.h diff
    src/sbbs3/trashman.c diff
    src/sbbs3/uartdefs.h diff
    src/sbbs3/un_qwk.cpp diff
    src/sbbs3/un_rep.cpp diff
    src/sbbs3/unbaja.c diff
    src/sbbs3/upgrade_to_v319.c diff
    src/sbbs3/upgrade_to_v320.c diff
    src/sbbs3/upload.cpp diff
    src/sbbs3/userdat.c diff
    src/sbbs3/userdat.h diff
    src/sbbs3/useredit.cpp diff
    src/sbbs3/vdd_func.h diff
    src/sbbs3/ver.cpp diff
    src/sbbs3/ver.h diff
    src/sbbs3/viewfile.cpp diff
    src/sbbs3/websrvr.c diff
    src/sbbs3/websrvr.h diff
    src/sbbs3/wordwrap.c diff
    src/sbbs3/writemsg.cpp diff
    src/sbbs3/xmodem.c diff
    src/sbbs3/xmodem.h diff
    src/sbbs3/xtrn.cpp diff
    src/sbbs3/xtrn_sec.cpp diff
    src/sbbs3/zmodem.c diff
    src/sbbs3/zmodem.h diff
    src/smblib/smbadd.c diff
    src/smblib/smballoc.c diff
    src/smblib/smbdefs.h diff
    src/smblib/smbdump.c diff
    src/smblib/smbfile.c diff
    src/smblib/smbhash.c diff
    src/smblib/smblib.c diff
    src/smblib/smblib.h diff
    src/smblib/smbstr.c diff
    src/smblib/smbtxt.c diff
    src/uifc/filepick.c diff
    src/uifc/filepick.h diff
    src/uifc/uifc.h diff
    src/uifc/uifc32.c diff
    src/uifc/uifc_ini.c diff
    src/uifc/uifctest.c diff
    src/uifc/uifcx.c diff
    src/uncrustify.cfg diff
    src/xpdev/conwrap.c diff
    src/xpdev/dat_file.c diff
    src/xpdev/datewrap.c diff
    src/xpdev/dirwrap.c diff
    src/xpdev/filewrap.c diff
    src/xpdev/genwrap.c diff
    src/xpdev/haproxy.h diff
    src/xpdev/ini_file.c diff
    src/xpdev/link_list.c diff
    src/xpdev/link_list.h diff
    src/xpdev/lockfile.c diff
    src/xpdev/msg_queue.c diff
    src/xpdev/msg_queue.h diff
    src/xpdev/multisock.c diff
    src/xpdev/netwrap.c diff
    src/xpdev/petdefs.h diff
    src/xpdev/rwlockwrap.c diff
    src/xpdev/rwlockwrap.h diff
    src/xpdev/sdlfuncs.c diff
    src/xpdev/sdlfuncs.h diff
    src/xpdev/semfile.c diff
    src/xpdev/semfile.h diff
    src/xpdev/semwrap.c diff
    src/xpdev/semwrap.h diff
    src/xpdev/showlocks.c diff
    src/xpdev/sockwrap.c diff
    src/xpdev/sopenfile.c diff
    src/xpdev/str_list.c diff
    src/xpdev/strwrap.c diff
    src/xpdev/strwrap.h diff
    src/xpdev/threadwrap.c diff
    src/xpdev/unicode.c diff
    src/xpdev/unicode_defs.h diff
    src/xpdev/wrapdll.h diff
    src/xpdev/wraptest.c diff
    src/xpdev/xp_dl.c diff
    src/xpdev/xp_dl.h diff
    src/xpdev/xp_syslog.c diff
    src/xpdev/xp_syslog.h diff
    src/xpdev/xpbeep.c diff
    src/xpdev/xpdatetime.c diff
    src/xpdev/xpdatetime.h diff
    src/xpdev/xpendian.h diff
    src/xpdev/xpevent.c diff
    src/xpdev/xpevent.h diff
    src/xpdev/xpmap.c diff
    src/xpdev/xpprintf.c diff
    src/xpdev/xpprintf.h diff
    src/xpdev/xpsem.c diff
    src/xpdev/xptime.c diff
    First pass run of uncrustify (code beautification) White-space changes only, exception being the rare insertion of NL before closing brace (couldn't find the option to disable that behavior). I excluded some header files (e.g. sbbs.h) since uncrustify seemed to be doing more harm than good there. I might just end up applying different set of rules to .h files.

  486. Rob Swindell (on ChromeOS)
    Mon Jan 13 2025 21:10:15 GMT-0800 (PST)
    Modified Files:
    

    src/hash/sha1.c diff
    Fix typo in example code in comment causing uncrustify 0.80 to assert do_source_file: Parsing: sha1.c as language C parse_cleanup(479): pc orig line is 257, orig col is 33, Text() is '}', type is BRACE_CLOSE parse_cleanup(485): (frm.top().type + 1) is VBRACE_CLOSE parse_cleanup(492): File: sha1.c, orig line is 257, orig col is 33, Error: Unexpected '}' for 'VBRACE_OPEN', which was on line 256

  487. Rob Swindell (on ChromeOS)
    Mon Jan 13 2025 21:10:15 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/scfg/scfgsys.c diff
    Closing brace on its own line (style change only)

  488. Rob Swindell (on ChromeOS)
    Mon Jan 13 2025 21:10:15 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/execmisc.cpp diff
    Add missing closing bracket in #ifdef'd out code block Causing uncrustify (0.80) to assert: do_source_file: Parsing: execmisc.cpp as language CPP parse_cleanup(479): pc orig line is 1257, orig col is 55, Text() is ')', type is PAREN_CLOSE parse_cleanup(485): (frm.top().type + 1) is SQUARE_CLOSE parse_cleanup(492): File: execmisc.cpp, orig line is 1257, orig col is 55, Error: Unexpected ')' for 'SQUARE_OPEN', which was on line 1257

  489. Rob Swindell (on ChromeOS)
    Mon Jan 13 2025 21:10:15 GMT-0800 (PST)
    Added Files:
    

    src/uncrustify.cfg diff
    A stock uncrustify 0.80 config generated with 'uncrustify --show-config' Uncrustify-0.80.1-47-ba7fc1679

  490. Deucе
    Mon Jan 13 2025 20:44:22 GMT-0800 (PST)
    Added Files:
    

    3rdp/build/cl-fix-constptrptr.patch diff
    3rdp/build/cl-fix-void-ptrs.patch diff
    3rdp/build/cl-intptr-t.patch diff
    3rdp/build/cl-wrong-string-length.patch diff
    Modified Files:

    3rdp/build/CMakeLists-cl.txt diff
    3rdp/build/CMakeLists.txt diff
    3rdp/build/GNUmakefile diff
    3rdp/build/cl-mingw64-thread-handles.patch diff
    A few more Win64 on MinGW fixes Some of these likely break WinCE support.

  491. Deucе
    Mon Jan 13 2025 16:33:31 GMT-0800 (PST)
    Modified Files:
    

    src/conio/sdl_con.c diff
    Make Coverity happy by moving fullscreen inside of win_lock

  492. Deucе
    Mon Jan 13 2025 15:38:45 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Assert/debug wrappers for trylock() are silly.

  493. Deucе
    Mon Jan 13 2025 14:00:08 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/rwlockwrap.c diff
    Don't leve the wlk critical section on wrlock success. That *is* the write lock!

  494. Deucе
    Mon Jan 13 2025 10:01:40 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/Common.gmake diff
    Use pkg-config for alsa. Don't go digging around in the filesystem when you don't have to.

  495. Deucе
    Mon Jan 13 2025 09:45:07 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/Common.gmake diff
    Don't use ALSA on Windows.

  496. Deucе
    Mon Jan 13 2025 09:42:39 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/genwrap.c diff
    More fixups for clock selection.

  497. Deucе
    Mon Jan 13 2025 09:37:30 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    src/conio/sdl_con.c diff
    src/xpdev/Common.gmake diff
    src/xpdev/genwrap.c diff
    More fixups... Some Coverity issues, some deadlocks, some crashes... Just misc stuff.

  498. Rob Swindell (on Windows 11)
    Sun Jan 12 2025 23:27:47 GMT-0800 (PST)
    Modified Files:
    

    src/conio/vidmodes.c diff
    Resolve MSVC warnings

  499. Deucе
    Sun Jan 12 2025 22:25:38 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    No need to pass the vstat_vmem around either. Also, we can now use a read lock.

  500. Deucе
    Sun Jan 12 2025 22:08:44 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    We only need to use get_vmem() if we're copying vstat.

  501. Deucе
    Sun Jan 12 2025 20:33:16 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Remove some debugging code.

  502. Rob Swindell (on Debian Linux)
    Sun Jan 12 2025 19:51:23 GMT-0800 (PST)
    Modified Files:
    

    ctrl/text.dat diff
    src/sbbs3/text_defaults.c diff
    Fix alignment of the Author and Group file info strings

  503. Rob Swindell (on Debian Linux)
    Sun Jan 12 2025 19:37:37 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/scansubs.cpp diff
    Don't scan for new files (after new messages scan) when new file time is 0 (e.g. new user)

  504. Rob Swindell (on Debian Linux)
    Sun Jan 12 2025 19:34:30 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/execmisc.cpp diff
    Use return value of datestr() for PCMS/Baja DATESTR function Similar bug fix as that just made to system.datestr()

  505. Rob Swindell (on Debian Linux)
    Sun Jan 12 2025 19:30:10 GMT-0800 (PST)
    Modified Files:
    

    exec/load/shell_lib.js diff
    Don't bother prompting for new file scan when scan pointer is 0

  506. Rob Swindell (on Debian Linux)
    Sun Jan 12 2025 19:19:15 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_system.c diff
    Add missing paren

  507. Rob Swindell (on Debian Linux)
    Sun Jan 12 2025 19:01:31 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_system.c diff
    Fix system.datestr(0) returning garbage Actually use the return value of datestr() Fixes issue reported by Deuce, regression introduced in commit 490e86fa38c

  508. Deucе
    Sun Jan 12 2025 17:57:17 GMT-0800 (PST)
    Modified Files:
    

    exec/lbshell.js diff
    Remove stutter.

  509. Deucе
    Sun Jan 12 2025 17:55:48 GMT-0800 (PST)
    Modified Files:
    

    exec/lbshell.js diff
    Since datestr() now can return "Never" avoid calling datestr with 0. "Scan for New Files since Never" is gibberish.

  510. Deucе
    Sun Jan 12 2025 17:48:01 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/readtext.c diff
    Range check value when using default text.

  511. Rob Swindell (on Debian Linux)
    Sun Jan 12 2025 17:07:34 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_internal.c diff
    src/sbbs3/main.cpp diff
    src/sbbs3/sbbs.h diff
    Move js_CreateArrayOfStrings from main.cpp to js_internal.c To fix jsdoor build

  512. Rob Swindell (on Debian Linux)
    Sun Jan 12 2025 16:31:58 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_archive.c diff
    Add Archive.supported_formats (array of strings) Helpful for scripts that want to know what file types (extensions) are supported by the Archive class object. Still need to work out the JSDOC support for this. Similar to the Socket class object properties, this will have no documentation/description.

  513. Deucе
    Sun Jan 12 2025 15:16:22 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Fix error displaying Minesweeper field We need to set the "has pixels set" flag in both vmem and in the bitmap_drawn array to prevent the update from erasing the pixels. This is likely what the duplicated line was originally, then it got broken when I switched to the vmem_cell_*() functions.

  514. Rob Swindell
    Sun Jan 12 2025 14:42:06 GMT-0800 (PST)
    Modified Files:
    

    xtrn/DDMsgReader/DDMsgReader.js diff
    Merge branch 'dd_msg_reader_printf_percent_fix' into 'master' DDMsgReader: %% should be used with printf() to show a percent sign. "% " seemed to be showing <error> in some cases (but not always) See merge request main/sbbs!491

  515. Eric Oulashin
    Sun Jan 12 2025 13:35:40 GMT-0800 (PST)
    Modified Files:
    

    xtrn/DDMsgReader/DDMsgReader.js diff
    DDMsgReader: %% should be used with printf() to show a percent sign. "% " seemed to be showing <error> in some cases (but not always)

  516. Deucе
    Sun Jan 12 2025 14:30:05 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    No need to do the same thing twice.

  517. Rob Swindell (on Windows 11)
    Sun Jan 12 2025 12:47:20 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
    Create/use ar_type() to eliminate some copy/pasta in AR/ARS parsing logic

  518. Rob Swindell (on Windows 11)
    Sun Jan 12 2025 12:36:44 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/websrvr.c diff
    Another use of errprintf() to help de-dupe error logs/alerts

  519. Deucе
    Sun Jan 12 2025 12:11:35 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/term.c diff
    Don't egregiously use strlen() for ZRQ and OOII buffers. We're building these one byte at a time, we know the length. 1.98s

  520. Deucе
    Sun Jan 12 2025 12:02:21 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    src/conio/cterm.h diff
    src/syncterm/term.c diff
    Have cterm_write() return the length of the retbuf. For now we're still using strlen, but we can avoid the call for the common case of zero-length returns.

  521. Deucе
    Sun Jan 12 2025 11:51:40 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/term.c diff
    Don't sleep() after receiving input. 2.1 seconds.

  522. Deucе
    Sun Jan 12 2025 11:33:58 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/rwlockwrap.h diff
    Put the now-shared rwlock_destroy_ign() back for *nix.

  523. Deucе
    Sun Jan 12 2025 10:51:46 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/rwlockwrap.c diff
    src/xpdev/rwlockwrap.h diff
    Make rwlock wrappers static inline functions instead of macros. This should avoid angering Coverity.

  524. Deucе
    Sun Jan 12 2025 10:51:35 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/modem.c diff
    Remove unused variable.

  525. Deucе
    Sun Jan 12 2025 10:36:13 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/link_list.c diff
    NULL check needs to be outside the lock. :D Also, no, Coverity still doesn't know from recursive mutexes.

  526. Deucе
    Sun Jan 12 2025 10:33:22 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/modem.c diff
    Whoops, forgot to remove the loop. Thanks coverity!

  527. Deucе
    Sun Jan 12 2025 10:23:46 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/link_list.c diff
    Coverity actually found legitimate issues in link_list.c They're all from accessing list values outside of a lock. Lock the list earlier to include these. Also, does this mean it knows they're recursive now? Let's find out!

  528. Deucе
    Sun Jan 12 2025 10:18:07 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/xpsem.c diff
    Don't bother checking the impossible.

  529. Deucе
    Sun Jan 12 2025 10:13:58 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/ripper.c diff
    src/syncterm/term.c diff
    Ok, it's weird for the _upload() function to close the stream. Make the one who opens it responsible for closing it.

  530. Deucе
    Sun Jan 12 2025 10:08:43 GMT-0800 (PST)
    Modified Files:
    

    src/conio/ciolib.c diff
    Remove weird 1-length array.

  531. Deucе
    Sun Jan 12 2025 09:51:18 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Put assert()s around all the locking in bitmap_con.c

  532. Deucе
    Sun Jan 12 2025 09:37:47 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Move video flags out from under vstatlock. This is a heavily accessed value that is rarely changed and was causing a lot of contention on vstatlock. Down to 2.9 seconds.

  533. Deucе
    Sun Jan 12 2025 08:48:05 GMT-0800 (PST)
    Modified Files:
    

    src/conio/win32gdi.c diff
    Fix typo

  534. Deucе
    Sun Jan 12 2025 08:46:02 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Use rwlock_t, not pthread_rwlock_t Derp.

  535. Deucе
    Sun Jan 12 2025 08:28:45 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    src/conio/bitmap_con.h 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/ripper.c diff
    Use a rwlock for vstatlock. Down to 3.4s now.

  536. Deucе
    Sun Jan 12 2025 07:14:53 GMT-0800 (PST)
    Modified Files:
    

    exec/ircdcfg.js diff
    Only create the main context once. Fixes issue where returning to the main menu always takes you to the top option.

  537. Deucе
    Sun Jan 12 2025 07:01:05 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/modem.c diff
    src/syncterm/rlogin.c diff
    src/syncterm/telnets.c diff
    Give the same input improvement to everything but SSH. The SSH input thread is too complex to easily make this change.

  538. Deucе
    Sun Jan 12 2025 06:46:26 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Remove unused set of coff.

  539. Deucе
    Sat Jan 11 2025 22:46:27 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/ripper.c diff
    Add unreachable code Coverity thinks it can do the default case.

  540. Deucе
    Sat Jan 11 2025 21:59:50 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/ripper.c diff
    Fix a memory leak and an allowed out-of-bounds access. Thanks Coverity!

  541. Deucе
    Sat Jan 11 2025 21:54:32 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/conn_pty.c diff
    Don't loop waiting to write entire received data to conn buf Shaves time down to 3.85 seconds.

  542. Deucе
    Sat Jan 11 2025 21:53:53 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Fix updating of bitmap_drawn() when drawing Fixes high CPU when nothing is happening.

  543. Deucе
    Sat Jan 11 2025 18:15:23 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    We don't need to multiply the row by cols anymore.

  544. Deucе
    Sat Jan 11 2025 18:15:23 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Fix incorrect offset advancement function

  545. Rob Swindell (on Debian Linux)
    Sat Jan 11 2025 16:14:19 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/websrvr.c diff
    Resolve GCC warning enumeration value ‘PARSED_VPATH_x’ not handled in switch

  546. Rob Swindell (on Windows 11)
    Sat Jan 11 2025 16:08:29 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/ars.c diff
    Fix the auto-keyword detection based on parameter type for USER, DIR, and SUB SUB and DIR have long had this bug, but I just noticed while playing with the new USER keyword capabilities (specifying user numbers and/or names). If you switched between numeric and alpha/string parameters, without restating the ARS keyword, the keyword would could end up wrong in the parsed byte array.

  547. Rob Swindell (on Windows 11)
    Sat Jan 11 2025 15:53:55 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/ars.c diff
    src/sbbs3/ars_defs.h diff
    src/sbbs3/chk_ar.cpp diff
    src/sbbs3/unbaja.c diff
    src/sbbs3/userdat.c diff
    User aliases can be used as parameters to the "USER" ARS keyword Caveat: the name parameter cannot contain a space, so excludes spaces or replace them with '.' or '_': the user's alias will match.

  548. Rob Swindell (on Windows 11)
    Sat Jan 11 2025 15:03:49 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/ftpsrvr.c diff
    src/sbbs3/userdat.c diff
    src/sbbs3/userdat.h diff
    src/sbbs3/websrvr.c diff
    parse_vpath() no longer takes access requirements into account This fixes issue #748

  549. Rob Swindell (on Debian Linux)
    Sat Jan 11 2025 14:36:18 GMT-0800 (PST)
    Modified Files:
    

    exec/testbuild.js diff
    Update the source archive, support more non-Linux-x64 *nix builds (e.g. macOS)

  550. Rob Swindell (on Debian Linux)
    Sat Jan 11 2025 14:34:13 GMT-0800 (PST)
    Modified Files:
    

    exec/default.js diff
    Give hint for ;help command upon unrecognized command input

  551. Rob Swindell (on Debian Linux)
    Sat Jan 11 2025 14:32:49 GMT-0800 (PST)
    Modified Files:
    

    exec/delfiles.js diff
    Use the "max_age" and "max_files" values from configuration if not set in base Work-around for issue #861 This is the utility script for maintaining file bases, if you didn't know. :-)

  552. Deucе
    Sat Jan 11 2025 12:43:02 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    src/conio/vidmodes.c diff
    src/conio/vidmodes.h diff
    Make vstat vmem a ringbuffer as well. This shaves off another .75 seconds, and gets rid of the last glaring plateau in the stack flamegraph. What's interersting is that I'm seeing my CPU utilization drop now too, which implies I've reached the speed of the pty connection type, or the speed of the term worker loop. Maybe I'll look there next, but since the pty isn't a major use-case for SyncTERM, I may not... at this point it's just benchmark golf.

  553. Deucе
    Sat Jan 11 2025 01:36:08 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Add missing unlock, and silence Coverity warning.

  554. Deucе
    Sat Jan 11 2025 01:35:46 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/link_list.c diff
    Spell Coverity wright.

  555. Deucе
    Sat Jan 11 2025 00:23:26 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    Get strspn() out of the ANSI hot path. This was the only standout issue when profiling the ANSI parsing code, and is a trivial fix since we're pretty much only checking contiguous ranges of characters. Unfortunately, I didn't create a test for comparison here.

  556. Deucе
    Sat Jan 11 2025 00:01:16 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CHANGES diff
    Just call the imporvement "massive" and leave it at that. Still massaging more speed out of it.

  557. Deucе
    Fri Jan 10 2025 23:59:43 GMT-0800 (PST)
    Modified Files:
    

    src/conio/cterm.c diff
    Get strncat() and strnlen() out of the hot path... Down to 4.7s now... 38× faster. Starting to get somewhere useful now.

  558. Deucе
    Fri Jan 10 2025 23:34:53 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/CHANGES diff
    Note performance is better.

  559. Deucе
    Fri Jan 10 2025 23:33:16 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Discard the drawn cache when we load a new video mode. Fixes issue where the screen would be weird during the connecting phase.

  560. Deucе
    Fri Jan 10 2025 23:20:28 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    src/conio/ciolib.h diff
    Mark cells when they have pixels set in them. This way, when a character overwrites, we can detect it. Also, document the various magic colour bits.

  561. Deucе
    Fri Jan 10 2025 22:21:19 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Another big speedup... Since we update the bitmap before drawing a frame now, we can just mark the cells incorrectly moved by advancing the bitmap ringbuffer as dirty and known they'll be redrawn. This gets rid of the memmove on full-width scrolling, and gets us into the 6s range.

  562. Deucе
    Fri Jan 10 2025 22:10:28 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Another large speedup... only update bitmap when drawing a frame Previously, every change would be flushed through to the bitmap, now it only flushes before a frame is sent to the driver, or when specific things (like setting pixels) occur. This about doubles the throughput again, running the test at 11 seconds (started at 179). At a 16× speedup now from when I started. This can now display at about 10Mbps, which is still kinda slow, but at least it's not completely terrible anymore. This could likely be improved by better timing of the frame generation... it tries to hot 100Hz right now, which is a bit excessive.

  563. Rob Swindell (on Debian Linux)
    Fri Jan 10 2025 18:29:21 GMT-0800 (PST)
    Modified Files:
    

    exec/user_settings.js diff
    Fix a couple of bugs with the [L] Terminal Dimensions option 1. It never saved the rows value set by the user 2. It would not set the current online user values immediately 3. It would only call console.getdimenions() when *both* values were set

  564. Rob Swindell (on Windows 11)
    Fri Jan 10 2025 18:20:35 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/con_out.cpp diff
    Propagate the non-auto user terminal dimensions to the runtime values, always Previously, if either of the user terminal dimensions was set to a auto (0) then we wouldn't propagate the other specific (non-zero) value to the runtime console dimension. Usually a user will set either both values (cols and rows) to 0/auto or neither. So this isn't a oft-used configuration combo.

  565. Rob Swindell (on Windows 11)
    Fri Jan 10 2025 18:20:35 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/atcodes.cpp diff
    src/sbbs3/bat_xfer.cpp diff
    src/sbbs3/chk_ar.cpp diff
    src/sbbs3/email.cpp diff
    src/sbbs3/execfile.cpp diff
    src/sbbs3/filedat.c diff
    src/sbbs3/ftpsrvr.c diff
    src/sbbs3/getmsg.cpp diff
    src/sbbs3/getstats.c diff
    src/sbbs3/js_bbs.cpp diff
    src/sbbs3/js_file_area.c diff
    src/sbbs3/js_filebase.c diff
    src/sbbs3/js_msg_area.c diff
    src/sbbs3/js_msgbase.c diff
    src/sbbs3/js_sprintf.c diff
    src/sbbs3/js_user.c diff
    src/sbbs3/listfile.cpp diff
    src/sbbs3/load_cfg.c diff
    src/sbbs3/logon.cpp diff
    src/sbbs3/mailsrvr.c diff
    src/sbbs3/mqtt.c diff
    src/sbbs3/msg_id.c diff
    src/sbbs3/pack_qwk.cpp diff
    src/sbbs3/postmsg.cpp diff
    src/sbbs3/qwk.cpp diff
    src/sbbs3/readmsgs.cpp diff
    src/sbbs3/sbbs.h diff
    src/sbbs3/sbbsecho.c diff
    src/sbbs3/scfglib.h diff
    src/sbbs3/scfglib1.c diff
    src/sbbs3/scfglib2.c diff
    src/sbbs3/sftp.cpp diff
    src/sbbs3/un_rep.cpp diff
    src/sbbs3/upload.cpp diff
    src/sbbs3/userdat.c diff
    src/sbbs3/userdat.h diff
    src/sbbs3/websrvr.c diff
    src/sbbs3/writemsg.cpp diff
    Rename functions that started with a helping/linking verb e.g. [can|is]_subject_something() is now named subject_[can|is]_something() No functional change.

  566. Rob Swindell (on Windows 11)
    Fri Jan 10 2025 18:20:35 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/xpprintf.c diff
    Resolve MSVC warnings about possible data loss and signed/unsigned compares

  567. Rob Swindell (on Windows 11)
    Fri Jan 10 2025 18:20:34 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/pack_qwk.cpp diff
    Fix CID 530001 temp_cmd() should've been called first on any sane platform. <shrug>

  568. Deucе
    Fri Jan 10 2025 15:32:53 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Fix missing unlock

  569. Deucе
    Fri Jan 10 2025 14:50:50 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Don't calculate the same value twice.

  570. Deucе
    Fri Jan 10 2025 13:57:18 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Save moving the "new" row Previously, we actually moved one more line back than we had to. This only moves lines back that need to remain where they were. This shaves another couple seconds off the benchmark.

  571. Deucе
    Fri Jan 10 2025 13:51:04 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Fix scrolling when there's no scrollbar. The code was moving unscrolled lines back after scrolling the majority of them... if all lines were scrolled, moving some back actually broke scrolling.

  572. Deucе
    Fri Jan 10 2025 09:29:46 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Fix missing NULL check/resource lead in bitmap_clrsrc() Thanks Coverity!

  573. Deucе
    Fri Jan 10 2025 00:16:51 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/js_sprintf.c diff
    src/xpdev/xpprintf.c diff
    src/xpdev/xpprintf.h diff
    Remove xp_printf() Borland support, and update JS format Borland doesn't need this, and making the new feature work with it would be immensely painful, so just disable the files in Borland. Also, now the JS format()/printf()/etc. can use field specifiers.

  574. Deucе
    Thu Jan 09 2025 23:48:02 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/GNUmakefile diff
    src/xpdev/xpprintf.c diff
    src/xpdev/xpprintf.h diff
    Add support for the '$' field specifier delimiter thing. Just in case xp_asprintf() is used for text.dat strings. The field specifier allows you to change the order of parameters, which is useful for translating (and useless for anything else). There must not be any "skipped" parameters though, you must use all of them between the first one and the last one you use.

  575. Rob Swindell (on Debian Linux)
    Thu Jan 09 2025 21:30:18 GMT-0800 (PST)
    Modified Files:
    

    exec/fileman.js diff
    Start on help text for File Manager

  576. Rob Swindell (on Debian Linux)
    Thu Jan 09 2025 20:51:13 GMT-0800 (PST)
    Modified Files:
    

    exec/user_settings.js diff
    The terminal mouse setting will now default to the current setting ... so just hitting ENTER will stick with the current mouse enablement.

  577. Rob Swindell (on Debian Linux)
    Thu Jan 09 2025 20:50:43 GMT-0800 (PST)
    Modified Files:
    

    exec/load/termdesc.js diff
    White-space change only

  578. Deucе
    Thu Jan 09 2025 20:37:02 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    Use malloc() instead of VLAs. They weren't standardized until 1999, why would Microsoft support them?

  579. Rob Swindell (on Debian Linux)
    Thu Jan 09 2025 20:23:20 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/date_str.c diff
    src/sbbs3/file.cpp diff
    Have timestr() return "never" text.dat string when passed 0 like datestr() does.

  580. Rob Swindell (on Debian Linux)
    Thu Jan 09 2025 20:21:53 GMT-0800 (PST)
    Modified Files:
    

    src/uifc/uifc32.c diff
    A more complete fix for the upop() issue with long strings Completely remove the 80 column screen width assumption/limit.

  581. Deucе
    Thu Jan 09 2025 19:07:42 GMT-0800 (PST)
    Modified Files:
    

    src/conio/bitmap_con.c diff
    src/conio/cterm.c diff
    Massive SyncTERM performance overhaul. This makes the performance about seven times better. Previously, outputting the entire works of Shakespeare took about two minutes, nineteen seconds on my system. With this change, it takes about 19 seconds. This is still far behind non-BBS terminals like XTerm and Alacritty which tend to do that job in under one second. The main improvements: - For the bitmaps in memory, make them a ring buffer, and for full-width scrolling of more than half the screen, just move the top instead of a memmove() - Eliminate unnecessary comparisons and calculations in the glyph rendering loop - Combine drawing glyphs beside each other for better cache usage This still needs some cleanup, and much testing.

  582. Rob Swindell (on Debian Linux)
    Thu Jan 09 2025 18:53:37 GMT-0800 (PST)
    Modified Files:
    

    src/uifc/uifc32.c diff
    Fix buffer overflow when upop() is called with a string > 73 chars result in segfault (e.g. adding long filenames using fileman.js)

  583. Rob Swindell (on Windows 11)
    Thu Jan 09 2025 16:46:55 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/scfg/scfgxfr1.c diff
    Set "native" flag for newly created file types/protocols Eliminate use of strcpy() and sprintf() in this file

  584. Rob Swindell (on Windows 11)
    Thu Jan 09 2025 16:25:49 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/bat_xfer.cpp diff
    src/sbbs3/listfile.cpp diff
    src/sbbs3/pack_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/tmp_xfer.cpp diff
    src/sbbs3/un_rep.cpp diff
    src/sbbs3/upload.cpp diff
    src/sbbs3/viewfile.cpp diff
    Add "native" toggle option to Viewable/Extractable/Testable/Compressible files ... and download events. The "Native Program List" was a hack left over from the transition from MS-DOS to OS/2 and now with extensible configuration files, like we have now, there's no reason not to add more fields and make it easier to specify which of these programs (most/all of them nowadays) are actually native to the host OS. The defaults (e.g. when creating a new file type) are unchanged for now.

  585. Rob Swindell (on Windows 11)
    Thu Jan 09 2025 16:21:18 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/scfg/scfgxtrn.c diff
    Make the native_help/opt strings accessible from other units Shorten the native_opt from "Native Executable/Script" to just "Native Executable" to make it usable in opt lists with narrower option name columns.

  586. Rob Swindell (on Windows 11)
    Thu Jan 09 2025 15:10:41 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/logon.cpp diff
    src/sbbs3/logout.cpp diff
    src/sbbs3/main.cpp diff
    Add missing 'mode' argument to cmdstr() ... sometimes the generated command-line is different depenending on the external() mode flags (e.g. EX_NATIVE).

  587. Rob Swindell (on Windows 11)
    Thu Jan 09 2025 15:08:00 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/scfg/scfgmsg.c diff
    Fix inverted default selection for Message Options->Purge Deleted E-mail

  588. Rob Swindell (on Windows 11)
    Thu Jan 09 2025 14:51:54 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/readmail.cpp diff
    Allow @-codes in Read*Mail text.dat strings/prompts and optimize [K]ill cmd No need to load/modify messages that already have DELETE attribute flag set

  589. Rob Swindell (on Windows 11)
    Thu Jan 09 2025 14:51:52 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/mailsrvr.c diff
    Abort POP3 LIST/UIDL loops upon socket-send failure Log a debug-level message after loading messages upon POP3 login.

  590. Rob Swindell (on Windows 11)
    Thu Jan 09 2025 14:51:52 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/mail.cpp diff
    delallmail() optimization and fix Optimization: No need to read and re-write headers that already have the DELETE attribute. Fix: Forced permanent removal of deleted messages (e.g. when creating a new user that's reusing an existing user number), didn't work unless SCFG->Message Options->Purge Delete E-mail was set to "Immediately" (not the default).

  591. Rob Swindell
    Thu Jan 09 2025 13:33:12 GMT-0800 (PST)
    Modified Files:
    

    exec/slyedcfg.js diff
    Merge branch 'slyedcfg_nonexistent_save_fix' into 'master' slyedcfg.js bug fix: Now successfully saves settings if SlyEdit.cfg is nonexistent (not in sbbs/ctrl or sbbs/mods) See merge request main/sbbs!490

  592. Eric Oulashin
    Thu Jan 09 2025 13:22:53 GMT-0800 (PST)
    Modified Files:
    

    exec/slyedcfg.js diff
    slyedcfg.js bug fix: Now successfully saves settings if SlyEdit.cfg is nonexistent (not in sbbs/ctrl or sbbs/mods)

  593. Deucе
    Thu Jan 09 2025 11:32:55 GMT-0800 (PST)
    Modified Files:
    

    src/build/Common.gmake diff
    Define NDEBUG for RELEASE builds We don't want our assertions asserting.

  594. Deucе
    Thu Jan 09 2025 08:33:23 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/link_list.c diff
    Chase those suppressions

  595. Deucе
    Thu Jan 09 2025 08:31:31 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/term.c diff
    Let time get big enough to be too big Previous commit capped it too early.

  596. Rob Swindell (on Debian Linux)
    Wed Jan 08 2025 23:55:53 GMT-0800 (PST)
    Modified Files:
    

    ctrl/xtrn.ini diff
    Redirect jsexec status output to nul when running fileman

  597. Rob Swindell (on ChromeOS)
    Wed Jan 08 2025 23:41:06 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/text_defaults.c diff
    Corrected string numbers

  598. Rob Swindell (on ChromeOS)
    Wed Jan 08 2025 23:40:13 GMT-0800 (PST)
    Modified Files:
    

    ctrl/text.dat diff
    Corrected string numbers for recently added strings

  599. Rob Swindell (on ChromeOS)
    Wed Jan 08 2025 23:39:31 GMT-0800 (PST)
    Modified Files:
    

    exec/load/text.js diff
    Latest text.dat IDs

  600. Rob Swindell (on ChromeOS)
    Wed Jan 08 2025 23:39:08 GMT-0800 (PST)
    Modified Files:
    

    exec/load/sbbsdefs.js diff
    Add P_ATCODES definition

  601. Deucе
    Wed Jan 08 2025 22:08:01 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/link_list.c diff
    Suppress Coverity rantings about this "non-recursive" lock. The lock is recursive.

  602. Deucе
    Wed Jan 08 2025 22:05:00 GMT-0800 (PST)
    Modified Files:
    

    src/encode/utf8.c diff
    Suppress some more Coverity halucinations.

  603. Deucе
    Wed Jan 08 2025 22:01:36 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/ssh.c diff
    Re-add coverity suppression. Not obsolete.

  604. Rob Swindell (on Windows 11)
    Wed Jan 08 2025 21:50:17 GMT-0800 (PST)
    Modified Files:
    

    ctrl/text.dat diff
    src/sbbs3/con_out.cpp diff
    src/sbbs3/mail.cpp diff
    src/sbbs3/readmail.cpp diff
    src/sbbs3/sbbs.h diff
    src/sbbs3/sbbsdefs.h diff
    src/sbbs3/text.h diff
    src/sbbs3/text_defaults.c diff
    src/sbbs3/text_id.c diff
    src/sbbs3/useredit.cpp diff
    Display progress while deleting email messages Add/use new print mode flag: P_ATCODES for use with trusted format params Renamed text.dat strings (to better support translation/localization): - Deleted -> DeletedUser - Inactive -> InactiveUser New text.dat strings: - Deleting - DoneDeleting - Deleted - DeletedNumberItems - E_Mail - E_Mails

  605. Deucе
    Wed Jan 08 2025 21:14:58 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/genwrap.c diff
    Hard-code the _WIN32_WINNT_VISTA value. Maybe Borland is also using pre-vista headers?

  606. Deucе
    Wed Jan 08 2025 21:08:08 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/genwrap.c diff
    Check _WIN32_WINNT, not WINVER Borland hates WINVER

  607. Deucе
    Wed Jan 08 2025 21:01:22 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/genwrap.c diff
    If we're older than Vista, use GetTickCount()

  608. Deucе
    Wed Jan 08 2025 20:57:42 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/genwrap.c diff
    Actually, CLOCK_SECOND is better than CLOCK_MONOTONIC_FAST It's basically CLOCK_REALTIME with tv_nsec set to zero.

  609. Deucе
    Wed Jan 08 2025 20:51:58 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/syncterm.c diff
    Initialize bbs->fast_connected

  610. Deucе
    Wed Jan 08 2025 20:47:53 GMT-0800 (PST)
    Modified Files:
    

    src/xpdev/genwrap.c diff
    Seconds not milliseconds.

  611. Deucе
    Wed Jan 08 2025 20:43:18 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/bbslist.h diff
    src/syncterm/conn_pty.c diff
    src/syncterm/modem.c diff
    src/syncterm/term.c diff
    src/xpdev/genwrap.c diff
    src/xpdev/genwrap.h diff
    Implement xp_fast_timer64() Like xp_timer64(), except it gets the worst clock, not the best one. Mostly useful for places where you're using deltas between time(NULL) to approximate a time, not for if you need to convert to a date or if you need any kind of precision.

  612. Rob Swindell (on Windows 11)
    Wed Jan 08 2025 19:36:44 GMT-0800 (PST)
    Modified Files:
    

    ctrl/xtrn.ini diff
    Add File Manager to Operator menu in default config Change internal code of "xtrn-setup" from XSETUP to XTRN-SETUP (we have plenty of chars available for internal codes now).

  613. Rob Swindell (on Debian Linux)
    Wed Jan 08 2025 19:18:59 GMT-0800 (PST)
    Modified Files:
    

    text/menu/batflag.msg diff
    Highlight the [D]ownload part of this with color codes

  614. Rob Swindell (on Debian Linux)
    Wed Jan 08 2025 19:16:00 GMT-0800 (PST)
    Added Files:
    

    text/menu/fileinfo.40col.msg diff
    A 40-column friendly file information display file

  615. Rob Swindell (on Windows 11)
    Wed Jan 08 2025 19:14:04 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/websrvr.c diff
    Fix NULL dereference when there are no directory vshortcuts defined As reported by Accession in #synchronet at irc.synchro.net

  616. Rob Swindell (on Windows 11)
    Wed Jan 08 2025 18:55:56 GMT-0800 (PST)
    Modified Files:
    

    exec/load/text.js diff
    Add "Never" definition

  617. Rob Swindell (on Windows 11)
    Wed Jan 08 2025 18:55:56 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/file.cpp diff
    Support new/optional display file: text/menu/fileinfo.* If this menu file exists, it'll be used to display file information (e.g. when using 'E'xtended info or 'D'ownload commands) instead of the Fi* text.dat strings. Allowing more customization options for file information displays.

  618. Rob Swindell (on Windows 11)
    Wed Jan 08 2025 18:55:56 GMT-0800 (PST)
    Modified Files:
    

    ctrl/text.dat diff
    src/sbbs3/date_str.c diff
    src/sbbs3/text.h diff
    src/sbbs3/text_defaults.c diff
    src/sbbs3/text_id.c diff
    Add/use new text.dat string: Never datestr() will return this string when passed a time_t value of 0.

  619. Rob Swindell (on Windows 11)
    Wed Jan 08 2025 18:55:56 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/atcodes.cpp diff
    FILE_* @-code fixes FILE_DESC didn't handle blank/no file description correctly The @-codes that need file size or date needed to call the proper filedat functions to get those values or else risk them being 0.

  620. Rob Swindell (on Windows 11)
    Wed Jan 08 2025 18:55:56 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/date_str.c diff
    Fix extra char output from datestr() when given a time_t value of 0.

  621. Rob Swindell (on Windows 11)
    Wed Jan 08 2025 18:55:56 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/websrvr.c diff
    Use errprintf for FastCGI related error log messages I received 6853 duplicate FastCGI error emails today (sent in a 2 minute time span). I wish I already had this in place. :-(

  622. Rob Swindell (on Windows 11)
    Wed Jan 08 2025 18:55:56 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/atcodes.cpp diff
    Fix wrong buf size argument in FILE_SIZE code Caught by Coverity: CID 529977: Incorrect expression (SIZEOF_MISMATCH)

  623. Rob Swindell (on Windows 11)
    Wed Jan 08 2025 18:55:56 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/ctrl/MainFormUnit.cpp diff
    Fix the removal of "main.ini" filename from CtrlDir path, if supplied Converting the path to UPPER case and then comparing against a lowercase string would never work. Bug introduced in commit 6edc027042d7, reported by xbit (XBITBBS)

  624. Deucе
    Wed Jan 08 2025 16:33:27 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/term.c diff
    Don't fiddle with the status bar fonts if we're not going to update it.

  625. Deucе
    Wed Jan 08 2025 11:47:22 GMT-0800 (PST)
    Modified Files:
    

    src/conio/vidmodes.c diff
    Fix 132×52 mode resulution. Transposed some digits, setting 1056×823 as the resolution instead of 1056×832. This resulted on crashes with some output modes, and "just" the status bar being truncated on other output modes. Fixes at least part of ticket 178.

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

    src/conio/cterm.c diff
    src/conio/cterm.h diff
    src/syncterm/bbslist.c diff
    src/syncterm/menu.c diff
    src/syncterm/syncterm.c diff
    src/syncterm/syncterm.h diff
    src/syncterm/term.c diff
    Make the scrollback a ring buffer instead of a linear one. This was one of the two major perforance issues with previous versions of SyncTERM. Using a larger scrollback will not longer slow down SyncTERM. The other major issue is updating the pixel data for every change, but we can't fix that as long as graphics and text are drawn on the same plane.

  627. Rob Swindell (on ChromeOS)
    Tue Jan 07 2025 23:32:25 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/atcodes.cpp diff
    FILE_ @-code changes/additions New: - FILE_COST, file's credit value or "FREE" when applicable (see also FILE_CREDITS - the file's credit value or 0 when free download) - FILE_AUTHOR - file's author (e.g. from SAUCE record) or blank if N/A - FILE_GROUP - file's author group (e.g. from SAUCE record) or blank if N/A - FILE_BYTES - file's size in bytes (previously, would use FILE_SIZE for this) - FILE_CRC32 - 8 hex digits or blank if N/A - FILE_MD5 - 32 hex digits or blank if N/A - FILE_SHA1 - 40 hex digits or blank if N/A - FILE_TIME_TO_DL - estimated time ("HH:MM:SS") to download file at current CPS Changed: FILE_SIZE is now the file size estimated in KB, MB, GB, etc., not the exact file size in bytes.

  628. Rob Swindell (on Windows 11)
    Tue Jan 07 2025 21:34:29 GMT-0800 (PST)
    Modified Files:
    

    ctrl/text.dat diff
    src/sbbs3/file.cpp diff
    Include CPS rate used to calcaulte file transfer time in FiTransferTime string from text.dat. Also change the alignment of the Fi* (File Information) text.dat strings to allow more space for the data fields, allowing better support for adding URLs (for sysops that want to do so, e.g. by setting FiFilename in text.ini).

  629. Deucе
    Tue Jan 07 2025 20:53:29 GMT-0800 (PST)
    Modified Files:
    

    src/build/Common.gmake diff
    Don't explicitly omit the frame pointer. At -O3, the only reason the frame pointer will be retained is when removing it makes it impossible to get any reasonable information out of a core dump. I personally prefer to take the small performance hit on affected platforms and always include the frame pointer because it makes profiling release builds possible... but I can manually make that adjustment when I want to.

  630. Rob Swindell (on ChromeOS)
    Tue Jan 07 2025 20:39:42 GMT-0800 (PST)
    Modified Files:
    

    ctrl/text.dat diff
    src/sbbs3/file.cpp diff
    src/sbbs3/text.h diff
    src/sbbs3/text_defaults.c diff
    src/sbbs3/text_id.c diff
    Revert "Add FileURL text.dat string, used when displaying file info" This reverts commit 269875be1b0ad07f72479a560b9ea8441aa5d176. There are plenty of existing text.dat strings where URL @-codes can be added. I had good/better results by changing the FiFilename string. So let's not add a new/blank text.dat string for now good reason.

  631. Deucе
    Tue Jan 07 2025 19:22:59 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/ssh.c diff
    assert() ssh globals are initialized correctly. Some weren't (mostly sftp ones though)

  632. Deucе
    Tue Jan 07 2025 19:22:58 GMT-0800 (PST)
    Modified Files:
    

    src/syncterm/rlogin.c diff
    src/syncterm/ssh.c diff
    src/syncterm/telnets.c diff
    src/syncterm/term.c diff
    Call shutdown() when errors are detected... Should force other threads to pay attention even if they're stuck in select or something.

  633. Rob Swindell (on Windows 11)
    Tue Jan 07 2025 16:57:14 GMT-0800 (PST)
    Modified Files:
    

    ctrl/text.dat diff
    src/sbbs3/file.cpp diff
    src/sbbs3/text.h diff
    src/sbbs3/text_defaults.c diff
    src/sbbs3/text_id.c diff
    Add FileURL text.dat string, used when displaying file info This is an optional (default: blank) string that can be used to display a file's URL(s) (e.g. FTP and/or Web URLs, using @-codes) when viewing extended file information. I currently have this string output before the file description. The idea is that a sysop could set this string (e.g in their ctrl/text.ini) instead of or in-addition-to their text/menu/download.msg file and then the file URL(s) would be more readily displayed (not just went prompting for a download protocol to send said file).

  634. Rob Swindell (on Windows 11)
    Tue Jan 07 2025 16:57:14 GMT-0800 (PST)
    Modified Files:
    

    exec/webfileindex.ssjs diff
    src/sbbs3/atcodes.cpp diff
    src/sbbs3/ftpsrvr.c diff
    src/sbbs3/js_file_area.c diff
    src/sbbs3/load_cfg.c diff
    src/sbbs3/scfg/scfgxfr2.c diff
    src/sbbs3/scfgdefs.h diff
    src/sbbs3/scfglib1.c diff
    src/sbbs3/scfglib2.c diff
    src/sbbs3/scfgsave.c diff
    src/sbbs3/websrvr.c diff
    Support "virtual shortcuts" to directory configured in SCFG->File Areas As an alternative to directory aliases configured in ftpalias.cfg and/or web_alias.ini, a sysop can specify a shortcut (virtual directory name) per directory in SCFG->File Areas. These shortcuts will appears as top/root level directories in the FTP and Web servers for quick user access to important directories. The advantages (over ftpalias.cfg / web_alias.ini) are: - one place to configure - FILE_FTP_PATH and FILE_WEB_PATH @-codes will use the shortcut (usually a shorter, preferred virtual path to the directory) * New JS file_area.dir[].vshortcut property

  635. Rob Swindell (on Windows 11)
    Tue Jan 07 2025 16:57:14 GMT-0800 (PST)
    Modified Files:
    

    src/sbbs3/useredit.cpp diff
    Populate the security level string being edited with current level (number) This appears to have been the original intention (otherwise, why call ultoa?), but was never done. Just a usability/convenience thing, but an apparent bug.

  636. Deucе
    Tue Jan 07 2025 15:36:41 GMT-0800 (PST)
    Modified Files:
    

    src/conio/x_events.c diff
    Actually, it's a long, not an Atom... same thing though.

AuthorCommitsLatest
Rob Swindell274Tue Feb 11 2025 23:35:14 GMT-0800 (PST)
Deucе351Tue Feb 11 2025 11:27:11 GMT-0800 (PST)
Eric Oulashin8Mon Feb 10 2025 11:27:31 GMT-0800 (PST)
echicken3Fri Jan 17 2025 22:59:18 GMT-0800 (PST)

For older commits (in CVS), click here

Dynamically generated in 402 milliseconds