Skip to content
Snippets Groups Projects
  1. Mar 24, 2025
    • Deucе's avatar
      When maint is ran, &time is the previous day. · eff7071b
      Deucе authored
      &time is incremented after maint runs, which allows a newly created
      first user to take turns on the first new day.
      eff7071b
    • Rob Swindell's avatar
      Add support for Renegade color (pipe) codes to wordwrap() · 9a746495
      Rob Swindell authored
      When viewing messages posted with pipe codes (e.g. coming from Renegade, WWIV,
      Mystic BBS), the wordwrap logic would prematurely wrap lines.
      9a746495
    • Rob Swindell's avatar
    • Deucе's avatar
      Add some random parenthesis · 52ce7ffe
      Deucе authored
      This is highly unlikely to solve whatever is happening on DMs system
      52ce7ffe
    • Rob Swindell's avatar
      Check the node "interrupt flag" every 10 seconds · c0c1565d
      Rob Swindell authored
      Since this script isn't normally calling bbs.nodesync() (e.g. to display
      any pending inter-node messages/telegrams), we have to check the NODE_INTR
      flag manually. Calling bbs.nodesync() directly here to get a more immediate
      notice and disconnection message sent to the user.
      
      This check is necessary so that a sysop or the event thread can gracefully
      terminate/disconnect a user that's running this script (e.g. when an
      exclusive timed event is scheduled to run and thus being prevented to run).
      This should help Keyop's reported issue with his weekly msgmaint timed event
      having to ungracefully disconnect his user session because he's running this
      script.
      c0c1565d
    • Rob Swindell's avatar
    • Rob Swindell's avatar
      Add node interrupt flag checking to *nix external() execution of stdio progs · fd2a8b60
      Rob Swindell authored
      and abort the execution of the program when the node is interrupted. This
      should allow more cases were the node interrupt flag can be used to gracefully
      disconnect a user running a DOS or native (stdio) program on *nix.
      
      We have this functionality already in the Windows version of external()
      fd2a8b60
    • Rob Swindell's avatar
      Set node "interrupt" flag to try to gracefully disconnect user blocking event · 0ac5ed57
      Rob Swindell authored
      When a timed event is configured to run "exclusively", all nodes need to not be
      in in-use. As it was, after waiting 60 minutes for the online user(s) to
      notice they'd run out of time and disconnect, we'd just (rather ungracefully)
      close the sockets used by such node(s) connections. This results in same logged
      errors about trying to send to bad socket descriptors and provides no feedback
      to the user about why they were disconnected.
      
      Since we have the node interrupt flag (which hopefully, all scripts are
      checking via node_sync) - use that to try to more gracefully terminate the
      user's session/connection after 30 minutes of waiting for the user to
      disconnect.
      
      If after 60 minutes of waiting, the node is still in-use, we still do the
      socket disconnection method.
      0ac5ed57
    • Rob Swindell's avatar
      filelength() can return -1 on error, deal · 6a0971f6
      Rob Swindell authored
      Just caught during code review
      6a0971f6
    • Rob Swindell's avatar
      Don't close logfile_fp before running JavaScript externals · 7550784f
      Rob Swindell authored
      This would've prevented some JS log functions from writing to the node.log file
      (which gets concatented onto the daily "system" log files).
      
      This just came up via code review while looking into Keyop's reported error:
      term Node 2 !ERROR 9 (Bad file descriptor) in main.cpp line 4606 (node_thread)
           truncating "logfile" access=0
      
      This is likely unrelated since the "logfile" is immediately re-opened after
      executing the external program/script.
      7550784f
  2. Mar 23, 2025
  3. Mar 22, 2025
  4. Mar 21, 2025
  5. Mar 19, 2025
  6. Mar 18, 2025
  7. Mar 15, 2025
    • Rob Swindell's avatar
      Increase buffer size from 4096 to 10000 in handle_call() · 546725fc
      Rob Swindell authored
      Log errors if/when comWriteBuf() fails.
      
      This is to hopefully help to root-cause or even possibly resolve the issue
      reported in #synchronet by PyRoDrAkE:
      "It all works well until the Dialup connection runs slower than 4800 baud
      using SexPots. I connect from my XT at either 1200 baud or 2400 baud and it
      would just stop drawing midway."
      
      There shouldn't be any write timeout in comWriteBuf(), so I don't know why
      this would help, but it's worth a try. Logging any comWriteBuf() errors is
      also a good idea in general.
      546725fc
    • Rob Swindell's avatar
      Add typecast to elminate GCC warning · f78d5395
      Rob Swindell authored
      f78d5395
    • Rob Swindell's avatar
      ca0d64e4
    • Rob Swindell's avatar
      Increment SBBSecho version to 3.24 · 7f1eb25d
      Rob Swindell authored
      7f1eb25d
    • Rob Swindell's avatar
      Take the configured origin line chars into account when determining charset · 8010070c
      Rob Swindell authored
      and if the message is UTF-8, encode the origin line as UTF-8 too.
      If the message is straight ASCII (e.g. the sub-board is configured as ASCII
      only), convert the configured origin line to ASCII, before appending.
      
      At this time, only ASCII and CP437 encodings of originlines are supported
      in Synchronet (imported and exported origin lines can contain UTF-8).
      
      This should address the issue raise by Sergey Dorofeev (2:5020/12000) in the
      FidoNet UTF-8 echo whereby messages exported from Synchronet systems
      (presumably using SBBSecho) could contain a mixture of CP437 and UTF-8
      encodings (!) when the sysop had CP437 chars in their configured origin line.
      8010070c
  8. Mar 13, 2025
  9. Mar 12, 2025
  10. Mar 10, 2025
Loading