Skip to content
Snippets Groups Projects
  1. Mar 05, 2018
  2. Feb 20, 2018
  3. Oct 12, 2017
  4. Oct 11, 2017
  5. Oct 10, 2017
  6. Aug 03, 2017
  7. Jun 04, 2017
  8. Nov 28, 2016
  9. Nov 21, 2016
  10. Nov 19, 2016
    • sbbs's avatar
      pthread thread names are limited to 15 chars (not including nul terminator) · f3da24f7
      sbbs authored
      so use shorter thread names.
      f3da24f7
    • rswindell's avatar
      Fix the root-cause of the high-CPU utlization on server recycle problem: · cdef2d33
      rswindell authored
      How did startup->sem_chk_freq get set (back) to 0 in the first place?
      The reason: the startup struct sanitization only occured when the various
      server threads were first started. When recycled, the server would call back to
      the original caller (e.g. sbbscon) which may (and did) re-read the sbbs.ini
      file, which could have SemCheckFrequency set to 0 (or missing) and the
      sanitization did not happen again (so a 0 value was used in select() calls,
      resuilting in high CPU utilization for several threads).
      
      So now, all startup struct sanitization occurs inside the init/recycle loop
      and sem_chk_freq should never revert to 0 again. This was the main bug.
      cdef2d33
    • sbbs's avatar
      Fixed high-CPU utilization after server recycling issue: if the sem_chk_freq · 324c41ba
      sbbs authored
      value is missing or set to 0 in the sbbs.ini file, the sanity checking this
      value (setting it to 2 seconds) will not occur after a server recycle and the
      sbbs.ini is re-parsed. So if for any reason, the sem_chk_freq value becomes
      0, these server threads won't hog the CPU because they all YIELD at the
      top of thier main loops.
      
      Also, changed all the thread names (e.g. adding "sbbs/" prefix), so they're
      more sensible in the Linux 'top' output.
      
      Also, started adding 'vi' modelines to auto-set tabstops when using vi/vim.
      324c41ba
  11. Oct 17, 2016
  12. May 27, 2016
    • rswindell's avatar
      Update the temp ban (loginBanned): · e0e5279f
      rswindell authored
      - Never ban the server's own address
      - Log the login attempt and last name attempted
      - Use a compressed version of the HH:MM:SS "time remaining" portion of the log
        message
      e0e5279f
  13. May 18, 2016
    • 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).
      7da4af1b
  14. Jan 21, 2016
  15. Dec 04, 2015
  16. Aug 22, 2015
  17. Aug 21, 2015
  18. Aug 20, 2015
    • deuce's avatar
      Use correct addr_len values. · 4ace0e8b
      deuce authored
      4ace0e8b
    • deuce's avatar
      Terminate IPv4 address before calling inet_addr(). On at least FreeBSD, · 48b07e59
      deuce authored
      leaving the |<port>| in the string causes inet_addr() to fail, breaking
      active FTP transfers.
      48b07e59
    • 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
  19. Aug 18, 2015
  20. Apr 25, 2015
    • deuce's avatar
      Fix exit() behaviour by introducing the new js.scope value which is the · f3256d81
      deuce authored
      scripts global scope (as opposed to js.global which is the instance global
      scope), and having exit() define exit_code in js.scope instead of js.global.
      
      This also sets exit_code in js.scope to null when preparing to execute a new
      script.  If a new script starts in the same scope as an old one, the old
      exit_code value will be destroyed.
      
      This should only impact scripts where js.global != js.scope (bbs.exec()ed,
      and mailsrvr)
      f3256d81
  21. Dec 11, 2014
    • rswindell's avatar
      Bug-fix: daily statistics and free-credits-per-day were not reset when the user · 43b6084e
      rswindell authored
      logged in via FTP. This affected: posts_today, emails_today, free_credits,
      timeon_today, and extra time values (e.g. posts_today would contnue to
      accumulate potentially affecting the users ability to post via FTP-uploaded REP
      packet). getuserdat() does the necessary value resets, we just needed to write
      the entire user record back to disk upon successfull login, rather than just
      updating specific fields in the user record on disk. The HTTP server looks like
      it might have the same/similar bug.
      43b6084e
  22. Nov 20, 2014
  23. Oct 30, 2014
  24. Oct 29, 2014
  25. Apr 20, 2014
  26. Jan 08, 2014
  27. Jan 07, 2014
Loading