• src/sbbs3/main.cpp

    From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Sat Feb 24 14:54:24 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/0a6c1f00de9e4457f598b4f4
    Modified Files:
    src/sbbs3/main.cpp
    Log Message:
    Log a warning if failed to write to spy ring buffer

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Sat Feb 24 20:31:04 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/4fa2aa66fda6be0ef693f512
    Modified Files:
    src/sbbs3/main.cpp
    Log Message:
    Don't log an error if spy socket write return EPIPE (expected)

    Also, resove a new gcc warning about signed/unsigned compares.

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Mon Feb 26 22:41:59 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/a474017fb7c51f91ef9c4095
    Modified Files:
    src/sbbs3/main.cpp
    Log Message:
    sbbs_t::incom() should return NOINP immediately if/when socket disconnected

    JS console.inkey() and friends use this as the underlying function to get
    input from the TCP socket.

    This might address issue #725

    Hoping Nelgin will let us know.

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Deucе@VERT to Git commit to main/sbbs/master on Tue Feb 27 20:20:48 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/4c893720f8e0c57753b08a91
    Modified Files:
    src/sbbs3/main.cpp
    Log Message:
    Attempt to fix error nelgin reported with ssh session timeouts

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deucе@VERT to Git commit to main/sbbs/master on Wed Feb 28 15:29:55 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/e4adbcb541c6f7139e63d2ca
    Modified Files:
    src/sbbs3/main.cpp
    Log Message:
    Prevent the input thread from closing channel that has a session,
    but does not yet have a session type.

    Also, fix what appears to be a fairly blatant memory leak.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deucе@VERT to Git commit to main/sbbs/master on Thu Feb 29 11:55:23 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/346849ac253a08374b9bfca0
    Modified Files:
    src/sbbs3/main.cpp
    Log Message:
    Unlock ssh_mutex before calling sftps_recv()

    This should fix the sftp hangs...
    While FreeBSD will return EDEADLOCK when a mutex would deadlock,
    Linux will do what I ask and deadlock.

    Since we're not checking the return value of pthread_mutex_lock(),
    this would go completely unnoticed on FreeBSD, resulting in the
    mutex being unlocked early and all sorts of unprotected accesses
    would happen, potentially doing crazy things. On Linux it just
    deadlocks, and taking a peek at the thread backtraces makes the
    problem obvious.

    So, point to Linux for making life more correct for people who
    do incorrect things (locking without checking the return value).

    I'd also like to thank nelgin, for sticking with me on this issue
    and being my gdb puppet.

    And really, this commit should be shared by all the contributors
    who... 𝆺𝅥𝅮𝆺𝅥𝅮𝆹𝅥𝅯𝆹𝅥𝅯

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deucе@VERT to Git commit to main/sbbs/master on Thu Mar 21 23:34:07 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/c846776318dc4ca28946083c
    Modified Files:
    src/sbbs3/main.cpp
    Log Message:
    Break stuff to test things.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deucе@VERT to Git commit to main/sbbs/master on Thu Mar 21 23:38:26 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/eddcfe2f9b10d250d16a6c7f
    Modified Files:
    src/sbbs3/main.cpp
    Log Message:
    Now unbreak!

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Fri Mar 22 21:28:05 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/be8603b11bd6cf12c6f74256
    Modified Files:
    src/sbbs3/main.cpp
    Log Message:
    Replace (and auto-upgrade) ctrl/time.dab with time.ini

    This will allow us to change scfg_t.event[].last to a time_t value (from time32_t) whenever we abandon Borland C/C++ in the future.

    Now it's trival for sysops to view/edit when their timed events 'last run' values. And there's no more endianness concerns. Bad .dab files, bad, go away.

    After I wrote this change, I found the original conversion code in v4upgrade.c which is almost exactly the same (except I was going to write to different filename). Finally actually implemented this. Next up: qnet.dab

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Fri Mar 22 21:28:05 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/03be991a6f30b98ae9c0320b
    Modified Files:
    src/sbbs3/main.cpp
    Log Message:
    Convert (and auto-upgrade) ctrl/qnet.dab to ctrl/time.ini as well

    I suppose this should've been part of the previous commit.

    Again, this is almost verbatim what v4upgrade.c did (though never actually used).

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Fri Mar 22 22:50:36 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/19ab720de38838ae2e4e1154
    Modified Files:
    src/sbbs3/main.cpp
    Log Message:
    Resolve recently introduced warnings about const char* to char* conversion

    C++ <sigh>

    We don't need a .ini section separator anyway.

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Mon Apr 8 16:32:54 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/00a80d45d884c9ab547fef31
    Modified Files:
    src/sbbs3/main.cpp
    Log Message:
    exec/*.bin cmd shell filenames were case sensitive (must've been lowercase)

    ... while the mods/*.bin command shell filenames could be any-case!

    Only impacted non-Windows systems (UNIX file systems are case-sensitive).

    Discovered while making this tutorial video: https://youtu.be/HlwQ0uX4S04

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Wed Apr 10 23:07:19 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/76b5c7f4399c7774c368c754
    Modified Files:
    src/sbbs3/main.cpp
    Log Message:
    Resolve CID 492287 - we don't care about the fexistcase() return value here

    We're just using it to "fix" the case, if the file indeed exists.

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net