• src/sbbs3/xtrn.cpp

    From Rob Swindell@VERT to Git commit to main/sbbs/master on Tue Jun 14 23:09:25 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/e54263fde0be580dcbaf77c8
    Modified Files:
    src/sbbs3/xtrn.cpp
    Log Message:
    Log command-line that led to logged error opening DOSXTRN.RET

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Sat Jul 2 12:22:07 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/280f16f4f373956c17d2a5eb
    Modified Files:
    src/sbbs3/xtrn.cpp
    Log Message:
    Add EXECDIR, DATADIR, and XTRNDIR to DOSemu command replacement tokens

    As requested. This closes issue #416

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Wed Jul 6 18:23:10 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/ce475f794e112fa9c9f435c6
    Modified Files:
    src/sbbs3/xtrn.cpp
    Log Message:
    Don't log error opening DOSXTRN.RET when terminating an external

    If we detect a client disconnection and terminate DOSXTRN.EXE, don't try to open DOSXTRN.RET and log an error when the file doesn't exist (as would be expected).

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Fri Oct 7 18:42:19 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/e7109c87bc43f21636c5f981
    Modified Files:
    src/sbbs3/xtrn.cpp
    Log Message:
    When user hangs-up on external programs on *nix, try to terminate w/SIGTERM

    Previously, when a user disconnected or ran out of time while running a stdio-based external program on *nix, if the program was still running, we'd send it a SIGHUP, wait up to 10 seconds for the process to terminate and if
    it did not, terminate it (ungracefully) with SIGKILL. Since some programs
    catch SIGTERM (and not SIGHUP) to indicate a termination request, we now will first attempt a SIGHUP, wait up to 5 seconds for the process to terminate and if it does not, then send a SIGTERM and wait up to another 5 seconds for it
    to terminate and if it doesn't, then finally send it a SIGKILL (which cannot
    be caught and always results in an ungraceful termination of the child process).

    This doesn't resolve any specific problem with any specific stdio-based external program, but I was playing around with ESR's port of Adventure (https://gitlab.com/esr/open-adventure) and a new auto-save/restore of game state and noticed that we weren't using SIGTERM for this situation, though we should have. Most modern programs, if they catch SIGHUP at all, use it to indicate a refresh of configuration or data files, not a termination request (or indication that a user has "hung up"). So SIGTERM is more reasonable to be expected to be caught and initiate the graceful termination of the child program that we're hoping for.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deucе@VERT to Git commit to main/sbbs/master on Thu Dec 29 09:35:16 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/f78a70986d1e3b21b09ca32e
    Modified Files:
    src/sbbs3/xtrn.cpp
    Log Message:
    Fix name of data event

    ---
    ï¿­ Synchronet ï¿­ Vertrauen ï¿­ Home of Synchronet ï¿­ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Wed Jan 25 10:29:48 2023
    https://gitlab.synchro.net/main/sbbs/-/commit/23513871ebc07d81e7cb83d8
    Modified Files:
    src/sbbs3/xtrn.cpp
    Log Message:
    0-init the 'gamedir' variable

    Resolves CID 434888, not sure why this one didn't show up before.

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