1. 30 Dec, 2020 1 commit
    • Rob Swindell's avatar
      Implement max concurrent connections for FTP · 8b2b02e1
      Rob Swindell authored
      Support optional limit on concurrent connections from the same IP address to the FTP server by setting MaxConcurrentConnections in the [ftp] section of sbbs.ini. Unlike the mail server and the terminal server, this concurrent-connection count is not discounted by the number of authenticated logins. The default value is 0 (unlimited).
      This closes issue #156
  2. 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.
  3. 16 Aug, 2020 1 commit
  4. 22 Mar, 2019 1 commit
    • rswindell's avatar
      Use default calling convention (__cdecl) for DLL funcs in Borland builds. · bf82a889
      rswindell authored
      Fix age-old bug with Borland/C++Builder built executables (Windows):
      to achieve compatibility with  the default __cdecl symbol naming rules of
      Visual C++, we were using __stdcall convention for DLL functions when
      building code with Borland/C++Builder tools and using the default (__cdecl)
      convention when building with Microsoft (Visual C++) tools. Although this
      allowed symbols to be located when linking, the calling convention mismatch
      caused a stack cleanup issue that very rarely manifested itself in a bug
      (e.g. exception of some kind in sbbsctrl.exe, usually). Mismatching
      the calling conventions was unintentional (I thought the default for MSVC
      DLL functions was __stdcall) - but since the calls to MSVC-Built DLL functions
      worked 99% of the time, I didn't realize there was an underlying issue. So I
      now work-around the DLL symbol naming mismatch using a command-line option (-a)
      passed to implib in src/sbbs3/ctrl/makelibs.bat
      I had previously worked-around exceptions when calling MSVC DLL functions in
      sbbsctrl.exe by calling the problematic DLL functions from a timer tick handler
      rather than a user control (e.g. button) event handler. Those work-arounds can
      now be removed.
      The erroneous "DLLCALL" definition design pattern was replicated (copy/pasted)
      to many other projects' header files in cvs.synchro.net. In the future, we may
      want to just remove all instances of *CALL since they now serve no purpose and
      appear as useless "Kruft" (but do allow us to more-easily globally change DLL
      function calling conventions if/when necessary in the future).
  5. 28 Nov, 2016 1 commit
  6. 18 May, 2016 1 commit
    • rswindell's avatar
      Implement IP temporary ban: · 7da4af1b
      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).
  7. 22 Aug, 2015 3 commits
  8. 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 ",::"
      - 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.
  9. 18 Aug, 2015 1 commit
    • rswindell's avatar
      Implement minimum and maximum file sizes allowed for upload, configurable via · 2bbc8f50
      rswindell authored
      MinFileSize and MaxFileSize keys in the [ftp] section of the ctrl/sbbs.ini file
      these values default to 0 which effectively applies no min/max to uploaded
      files. Set MinFileSize to 11 to defeat the recent penetration testing seen
      uploading 10 byte files with random filenames (8 alpha cars ending in ".txt")
      with 8 alpha chars in the file, followed by a CRLF pair for a total size of 10
      Fixed bug whereby failed/aborted uploaded files would be left (not deleted).
      Log errors when any file deletion fails in the FTP server.
  10. 20 Nov, 2014 1 commit
  11. 01 Sep, 2011 1 commit
  12. 25 Oct, 2009 1 commit
    • rswindell's avatar
      Added errormsg callback function pointer to all startup structures to allow · e5da08ed
      rswindell authored
      error counting/logging/messages to be handled by front-end (e.g. control panel)
      regardless of log_level setting.
      Mail server now filters blocked-subjects before applying DNSBL tag.
      Received message header TO and FROM fields are no longer checked against the
      email.can file for SMTP-authenticated clients.
      SMTP MAIL FROM and RCTP TO addresses are no longer checked against the
      email.can file for SMTP-authenticated clients.
      Statistics are displayed in a more legible manner when the mail server is
      The msgs_received stats counter now includes blocked and ignored messages too.
  13. 04 Jun, 2008 1 commit
  14. 23 Feb, 2008 1 commit
  15. 15 Sep, 2006 1 commit
    • rswindell's avatar
      Replace the "log mask" concept with a much simpler "log level" concept: · 76a64bca
      rswindell authored
      instead of a bit-mask representing all the log levels to actually "see", use a
      single numeric (or nmemonic) level value (ERROR, WARNING, NOTICE, etc.)
      and less severe log levels (levels with a higher numeric value) will be filtered
      (e.g. not "seen" or logged). It's the basic syslog() concept.
  16. 10 May, 2006 1 commit
    • rswindell's avatar
      Added FTP server option: Lookup Passive IP · 2a6b87d9
      rswindell authored
      (enabled by adding LOOKUP_PASV_IP to the "Options" value in the [ftp] section
      of your ctrl/sbbs.ini.
      This option tells the FTP server to perform a hostname lookup (on the BBS's
      hostname) to determine the correct/current public IP address to use in
      PASV responses. This is one more kludge to work around stupid NAT devices
      (consumer firewalls/routers).
  17. 07 May, 2005 1 commit
  18. 21 Apr, 2005 1 commit
    • rswindell's avatar
      Using js_startup_t for the JS startup parameters for all servers/services. · b8ce6208
      rswindell authored
      Created sbbs_read_js_settings() and sbbs_set_js_settings() to read and write
      all settings to/from .ini files in a modular fashion.
      This is a precursor to implementing support for JavaScriptThreadStack (limit)
      support for all JS-enabled servers and services (working around the ircd bug).
  19. 06 Nov, 2004 1 commit
  20. 03 Nov, 2004 1 commit
  21. 28 Oct, 2004 1 commit
  22. 27 Oct, 2004 2 commits
  23. 20 Oct, 2004 1 commit
  24. 26 Sep, 2004 1 commit
  25. 15 Oct, 2003 1 commit
  26. 11 Oct, 2003 1 commit
  27. 09 Oct, 2003 1 commit
  28. 26 Sep, 2003 2 commits
  29. 16 Sep, 2003 1 commit
  30. 07 Jun, 2003 1 commit
  31. 23 Apr, 2003 1 commit
  32. 31 Jul, 2002 1 commit
  33. 20 Jul, 2002 1 commit
  34. 25 Mar, 2002 1 commit
  35. 20 Mar, 2002 1 commit
  36. 19 Mar, 2002 1 commit