1. 17 Mar, 2018 1 commit
  2. 12 Mar, 2018 2 commits
  3. 10 Mar, 2018 4 commits
  4. 06 Mar, 2018 1 commit
  5. 05 Mar, 2018 1 commit
  6. 03 Mar, 2018 1 commit
    • deuce's avatar
      Store the certificate context in scfg_t. This allows static services to be · 81de76be
      deuce authored
      TLS servers without all of them needing to separately load the ssl certificate.
      
      It's destroyed in free_scfg(), and the config *must* be prepped both to
      destroy the certificate and to load it.  This is because the "no cert"
      value is -1, not 0, so the prepped flag is all we really have to indicate
      if it's zero because it's a valid certificate or zero because no certificate
      has been loaded.
      81de76be
  7. 23 Feb, 2018 2 commits
    • deuce's avatar
      Add certificate handling via the CryptCert class. · 01904b00
      deuce authored
      Also add add_public_key() and get_public_key() methods to CryptKeyset.
      Not tested yet, but this should be everything we need to finish up
      LetSyncrypt.
      01904b00
    • deuce's avatar
      Add CryptKeyset class. · bfcdc66a
      deuce authored
      This class allows saving and loading private keys.  It doesn't currently
      allow saving or loading *public* keys, since they require certificate support
      which we don't yet have in our JavaScript Object Model.
      
      I'll fix the JSDocs build in a minute.
      bfcdc66a
  8. 20 Feb, 2018 2 commits
  9. 18 Feb, 2018 1 commit
    • rswindell's avatar
      JS login() method: · 62868f03
      rswindell authored
      Convert up to 128 characters of the passed user name to a string we can use
      and log in case of failure (helps to debug the full actual user name passed to
      the sevice, e.g. by an IMAP client).
      62868f03
  10. 15 Jan, 2018 1 commit
  11. 24 Nov, 2017 1 commit
  12. 04 Jun, 2017 1 commit
  13. 28 Nov, 2016 1 commit
  14. 27 Nov, 2016 1 commit
    • rswindell's avatar
      Added new sub-scan mode: SCAN_POLLS (used to scan sub-boards for posted polls) · b14e9904
      rswindell authored
      Introduced a better progress indicator (similar to poll results), using the
      backfill() method. 2 new attr.cfg fields allow the progress indicator colors to
      be configured separately from poll results (though they default to the same
      white on magenta). This new progress indicator is used when loading msg ptrs
      and scanning for votes. I will be using it while performing other searches
      (e.g. file libraries/dirs) as well.
      b14e9904
  15. 21 Nov, 2016 1 commit
  16. 19 Nov, 2016 3 commits
    • 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
  17. 17 Oct, 2016 1 commit
  18. 27 May, 2016 1 commit
    • 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
  19. 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).
      7da4af1b
  20. 21 Jan, 2016 2 commits
  21. 04 Dec, 2015 1 commit
  22. 30 Nov, 2015 1 commit
    • rswindell's avatar
      Introduce new node status (NODE_LOGOUT), which is used for the status of a node · 1d847ed3
      rswindell authored
      after a user (has been) disconnected and before the node transitions to waiting
      for connection (WFC) status. Usually the duration of this status is very short,
      but it can be longer (e.g. for running log-out module and event) and for (new)
      msg-scan pointer fix-ups.
      Updated logout() to remove some cruft and add some more log/debug output.
      Automatic new-scan pointer fix-ups when performing new-message scans (if the
      current pointer is greater than the last message number, set it to the last
      message number) and when saving message pointers.
      Passing user_t* to get/putmsgptrs() instead of message number now (to better
      detect Guest account).
      1d847ed3
  23. 25 Aug, 2015 1 commit
  24. 23 Aug, 2015 1 commit
  25. 22 Aug, 2015 4 commits
  26. 21 Aug, 2015 2 commits
  27. 20 Aug, 2015 1 commit