Skip to content
Snippets Groups Projects
  1. Aug 13, 2022
    • Rob Swindell's avatar
      Add "Log Events to Disk" option/checkbox for terminal server "Events" · 5416e0fb
      Rob Swindell authored
      The "Events" log messages will now be logged to a disk file in
      data/events*.log by default (unless this option is disabled).
      
      If the "First node" is > 1, then the base filename will be
      "events<first-node>", otherwise, it's just "events". This is because you
      would not want multiple instances of sbbs writing to the same events.log
      file - that would be chaos. These log files are subject the log
      rotation/retention policy defined in SCFG.
      
      This should resolve the FAQ for Windows sysops about what log file to
      which their event log messages are being written.
      5416e0fb
  2. Mar 31, 2022
  3. Mar 28, 2022
  4. Apr 19, 2021
    • Rob Swindell's avatar
      Control sound-mute via semfile (ctrl/sound.muted) rather than sbbs.ini · df1fbd1e
      Rob Swindell authored
      There was a bug with reloading the configuration files in sbbsctrl where the sound button no longer reflected the truth and the sysop's previous click-state of the button was lost. Rather than going through writing the OPT_MUTE flag to the Options fields of all the sections of the sbbs.ini and then re-loading that file as a result, just do like we did with the sysop chat availability: use a semfile. So much simpler.
      
      If anyone ever needs instance-specific muting, we can create/check instance/host-specific mute semfiles then. Doubt that'll happen though.
      
      Also, removed the old sysavail control methods of ntsvcs too.
      df1fbd1e
  5. Apr 04, 2021
    • Rob Swindell's avatar
      A poll() failure with EINTR does not mean a socket is closed. · 925e3b0a
      Rob Swindell authored
      This won't impact Synchronet as it has a separate signal handling
      thread, but we still need to behave properly for processes that
      don't.  I'm also saying that ENOMEM does not indicate a disconnection,
      though it may be better to pretend it was disconnected...
      925e3b0a
  6. Feb 14, 2021
  7. Jan 18, 2021
  8. Dec 22, 2020
    • Rob Swindell's avatar
      Remove dynamic HTML index support from FTP server · 22e8d2e3
      Rob Swindell authored
      The days of browsers rendering HTML served-up via FTP are over, so remove this feature. This also removes all JavaScript support from the FTP server and that is a bit odd as it was one of the first Synchronet components for which I added JS support.
      
      Removing this feature was pretty painless; much easier than adding it was. The main motivation was less cruft to port to the file base in the works. There should be no more references to 00index.html anywhere at this point. Bye bye cool feature, we'll miss you.
      22e8d2e3
  9. Nov 24, 2020
    • Rob Swindell's avatar
      Stop pretending to configure the JavaScript Context stack · a9a1b9e5
      Rob Swindell authored
      The argument to JS_NewContext that we were allowing to be configured was not the contest stack size, but rather:
      "The size, in bytes, of each "stack chunk". This is a memory management tuning parameter which most users should not adjust. 8192 is a good default value." - per Mozilla.
      
      So we're just going to use the suggested default, hard-coded.
      a9a1b9e5
  10. Sep 13, 2020
  11. Sep 12, 2020
    • Rob Swindell's avatar
      Improve startup w/Config Wizard reliability · e1a79a56
      Rob Swindell authored
      I noticed on one particular system that Canceling or Completing
      the configuration wizard on a fresh install, sbbsctrl.exe would
      just shut down (no error dialog or anything, likely a crash of
      some kind). Instrumenting StartupTimerTick() didn't reveal anything
      useful (it ran to completion).
      
      By changing the method of launching the Configuration Wizard,
      I was able to eliminate this observed problem. Now, the StartupTimer
      runs twice on a fresh install (just once for a normal startup),
      and the second run of the StartupTimerTick starts the configuration
      wizard.
      
      I also reverted to the previous behavior of dynamically creating
      and destroying the wizard for each use. There's just too much state
      information to restore if the config wizard is run a second time.
      
      Also, removed a bunch of old Registry settings readings (v3.10/11
      upgrade support) and commented out code.
      e1a79a56
  12. Sep 11, 2020
  13. Sep 08, 2020
  14. Aug 16, 2020
  15. Apr 17, 2020
  16. Mar 17, 2020
  17. Mar 15, 2020
  18. Aug 31, 2019
  19. Jul 18, 2019
  20. Feb 15, 2019
  21. Jan 12, 2019
  22. Oct 05, 2018
  23. Mar 23, 2018
  24. Mar 20, 2018
  25. Mar 02, 2018
    • rswindell's avatar
      Update the log-level controls when re-reading .ini files. Since the change on · cda6c0c8
      rswindell authored
      Nov-28-2017 (don't save .ini files with every change of log-levels), it was
      quite easy for the visible log level controls and the actual log level (in the
      startup structures) to get out-of-sync.
      
      I'm pondering saving the selected log-level when recycling or something else,
      but for now at least the visible controls match the real log level.
      cda6c0c8
  26. Dec 06, 2017
  27. Nov 28, 2017
  28. Nov 15, 2017
  29. Nov 13, 2017
  30. Nov 28, 2016
  31. Nov 19, 2016
  32. May 27, 2016
    • rswindell's avatar
      Server listening interfaces can now be configured again using the various · 25ccb605
      rswindell authored
      - "Configure" menus (not working since the IPv6 commit) - both IPv4 and IPv6
         addresses may be specified (comma-separated), or multiple IPv4 addresses!
      - Added new "Temp Ban" settings to Properites->Security tab.
      - Added context (tab) sensitive "Help" button to Properties page
        (links to section on relevant wiki page).
      - Every log window has a new right-click pop-up menu with 2 options:
        1. Copy Selected
        2. Copy All
        Hopefully it's obvious what these menu options do. :-)
      25ccb605
  33. May 19, 2016
    • rswindell's avatar
      Implement IP temporary ban: · ee159c40
      rswindell authored
      By default, after 20 consecutive (unique) failed login attempts, *or*
      a failed login attempt wtih a name from the name.can filter file.
      The default temporary ban duration is 10 minutes.
      The temporary ban thershold is configurable via LoginAttemptTempBanThreshold
      in sbbs.ini and the ban duration is configurable via LoginAttemptTempBanDuration
      (in seconds).
      ee159c40
Loading