1. 28 Mar, 2022 1 commit
  2. 19 Apr, 2021 1 commit
    • Rob Swindell's avatar
      Control sound-mute via semfile (ctrl/sound.muted) rather than sbbs.ini · a88cce19
      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.
      a88cce19
  3. 04 Apr, 2021 1 commit
    • Rob Swindell's avatar
      A poll() failure with EINTR does not mean a socket is closed. · fcf58640
      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...
      fcf58640
  4. 14 Feb, 2021 1 commit
  5. 18 Jan, 2021 1 commit
  6. 22 Dec, 2020 1 commit
    • Rob Swindell's avatar
      Remove dynamic HTML index support from FTP server · 0d01544d
      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.
      0d01544d
  7. 24 Nov, 2020 1 commit
    • Rob Swindell's avatar
      Stop pretending to configure the JavaScript Context stack · c0cd8686
      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.
      c0cd8686
  8. 13 Sep, 2020 2 commits
  9. 12 Sep, 2020 1 commit
    • Rob Swindell's avatar
      Improve startup w/Config Wizard reliability · 351cf95a
      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.
      351cf95a
  10. 11 Sep, 2020 1 commit
  11. 08 Sep, 2020 1 commit
  12. 16 Aug, 2020 1 commit
  13. 17 Apr, 2020 1 commit
  14. 17 Mar, 2020 2 commits
  15. 15 Mar, 2020 4 commits
  16. 31 Aug, 2019 1 commit
    • rswindell's avatar
      Update the C getnodedat/putnodedat API to not require that the node file · c2e891d2
      rswindell authored
      (ctrl/node.dab) is constantly closed and re-opened for every non-locking read.
      This is really slow across network file systems and unnecessary, so use a
      similar optimization as the C++ sbbs_t class where the file can (and normally
      is) left open across multiple consecutive reads.
      c2e891d2
  17. 18 Jul, 2019 1 commit
  18. 15 Feb, 2019 2 commits
  19. 12 Jan, 2019 1 commit
  20. 05 Oct, 2018 1 commit
  21. 23 Mar, 2018 1 commit
  22. 20 Mar, 2018 2 commits
  23. 02 Mar, 2018 1 commit
    • 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
  24. 06 Dec, 2017 1 commit
  25. 28 Nov, 2017 1 commit
  26. 15 Nov, 2017 1 commit
  27. 13 Nov, 2017 1 commit
  28. 28 Nov, 2016 1 commit
  29. 19 Nov, 2016 1 commit
  30. 27 May, 2016 1 commit
    • 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
  31. 19 May, 2016 1 commit
    • 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
  32. 20 Aug, 2015 1 commit
    • deuce's avatar
      Update to 3.17a · dbbfabf1
      deuce authored
      New Features:
      - Multiple bindings for each service
        Use comma-separated interfaces on Interface= lines in the ini file.
        Default is now "0.0.0.0,::"
      - IPv6 support
      - TLS support for the webserver and (non-static) services
        New TLS option in services.ini (ie: Options=TLS)
      - Decrease LEN_SCAN_CMD to 35 chars, increase the CID field to 45 chars,
        and rename the MAIL_CMD string to IPADDR.  I think this frees up the
        note field for SysOp use.
      dbbfabf1
  33. 14 Aug, 2015 1 commit