Skip to content
Snippets Groups Projects
  1. Sep 12, 2024
  2. Sep 10, 2024
    • Rob Swindell's avatar
      Indicate vote/poll messages and files (with details) when listing msgs/files · d84b8e3d
      Rob Swindell authored
      Add '-v' (increase verbosity) option, used to display msg dates and timezones
      ... when using the the 'l' (list messages) command (to view post date/time).
      Use '-vv' or '-v -v' to see timezones of messages.
      
      The -v option is now also applicable to the 'v' (view) messages command (now
      redundant with the 'V' command).
      
      Features as requested by Nelgin as part of issue #786.
      
      Removed day-of-week from date/times displayed. We don't need that level of
      user-friendliness with this tool.
      However, we are also displaying 12h/am/pm times. Some sysops probably would
      prefer 24hour time, so that should be considered at some point.
      d84b8e3d
    • Rob Swindell's avatar
      Don't check header fields of deleted messages for control characters · 0fd380f8
      Rob Swindell authored
      ... related to issue #786.
      
      Also, don't check for a message-ID if the message-type does not match the
      expected message type ("type mismatch").
      0fd380f8
    • Rob Swindell's avatar
      Refactor the function: unpack_bundle() · 0f0a8a1a
      Rob Swindell authored
      1. When a 0-length bundle file was encountered or an unpacking error occurred,
         any remaining bundles for the current search day-of-week (e.g. *.SU*) would
         be skipped/ignored. This bug (issue #764, regarding the 0-length file part),
         is fixed by not incrementing the day-of-week index in the main loop, but
         rather only incremeting the index when all bundles for the current
         day-of-week have been processed.
      2. The age calculation for 0-byte/length bundle files was incorrect, so all
         0-length  bundle files would always be considered "less than 24-hours old"
         (and thus, never auto-deleted).
         This exacerbated the problem of issue #764 since it would persist until the
         0-length files were manually deleted. Fixed the file age calculation and
         now logging the date/timestamp of the 0-length file as well.
      3. Don't do the switch/case/sprintf dance when we're not re-running a glob()
         search.
      4. Replace the switch/case statement with an array of week day names/patterns.
      5. Ignore (with a warning log message) any sub-directories of the inbound
         directory that happen to match the bundle file search pattern.
      6. Use better variable naming.
      7. Refer to files with a length of 0 as "0-length" instead of "0-byte" in log
         messages.
      0f0a8a1a
  3. Sep 09, 2024
  4. Sep 07, 2024
  5. Sep 06, 2024
  6. Sep 05, 2024
  7. Sep 04, 2024
  8. Aug 28, 2024
  9. Aug 27, 2024
    • Rob Swindell's avatar
      Fix NULL pointer deref in random_menu() · 46c603ce
      Rob Swindell authored
      When no files with extensions are found, though they matched the glob()
      pattern, a NULL pointer deref would result (segfault).
      
      This could happen if the only files matching the pattern had no extenions or
      were directories (not files).
      
      Fix for issue #779
      46c603ce
  10. Aug 23, 2024
    • Rob Swindell's avatar
      Don't call utime() on the node.dab file for every read · e93b6dfa
      Rob Swindell authored
      ... this was the cause of some observed unnecessarily high disk/file server
      (Samba) utilization, as we call getnodedat() a lot. utime() opens and closes
      the file, which was already open - and we're not modifying the file, so
      updating the 'modification time' here is wrong anyway.
      
      Disabling this 21-year old bit of logic resulted in a pretty dramatic
      reduction in Samba (smbd) CPU utilization on Vertrauen.
      
      If a BBS actually needes this hack (e.g. for NFS compatibility, as Deuce
      eluded in the comment), they'd be better off just setting the "Keep Node File
      Open" node setting (in SCFG->Nodes) to "No".
      e93b6dfa
    • Rob Swindell's avatar
      Extend (and back-off) the user.tab record lock attempts · 69fc70ab
      Rob Swindell authored
      I'v been getting errors locking user.tab (for read) for a while (over samba),
      so hopefully this helps. The lockuserdat() total timeout duration extends from
      about 5 seconds to about 45 seconds (with an incremental back-off).
      
      Implement the same lock-retry logic/limit in putuserdat().
      69fc70ab
  11. Aug 20, 2024
  12. Aug 19, 2024
  13. Aug 18, 2024
  14. Aug 17, 2024
  15. Aug 16, 2024
  16. Aug 15, 2024
  17. Aug 13, 2024
Loading