Skip to content
Snippets Groups Projects
  1. Apr 27, 2024
  2. Apr 26, 2024
    • Rob Swindell's avatar
    • Rob Swindell's avatar
      Add MNE:<low>[:high][:cmd] @-code for mnemonic string attribute control · 8eef2dc8
      Rob Swindell authored
      The "default" mnemonic string attributes are still set in ctrl/attr.cfg,
      but now, each mnemonic string (e.g. from text.dat or passed to JS
      console.mnemonics()) can include a "MNE:" @-code to over-ride the default
      mnemonic string attributes (low, high, and command). If the "high"
      attribute isn't specified, it defaults to the same color as the "low"
      attribute with the "high intensity" flag flipped. The "cmd" attribute
      defaults to whatever was included in the attr.cfg, if not specified.
      Technically, the separator between the attributes can be any non-valid
      attribute character (e.g. symbol).
      
      Renamed (really old function) attrstr() to strtoattr() since its usage now
      more closely resembles other std C strto* functions (has an 'endptr' arg).
      8eef2dc8
  3. Apr 25, 2024
  4. Apr 24, 2024
  5. Apr 23, 2024
  6. Apr 22, 2024
    • Rob Swindell's avatar
      Fix bug with error files (e.g. 404.html) introduced in commit 90de10cf · 920902f3
      Rob Swindell authored
      Deuce expanded the local 'error_code' buf to not trip the SAFECOPY macro
      destionation buffer length check. Only this buffer needed to be 4 chars
      exactly to truncate the 'message' string at 3 chars (e.g. just "404" for an
      error message string that starts with "404 "). Switch from SAFECOPY to strlcpy
      to eliminate this bug.
      
      As reported by Ragnarok as part of issue #748
      
      The web error files should work again.
      920902f3
  7. Apr 16, 2024
    • Rob Swindell's avatar
      Increase FidoNet echo/area tag max length from 40/50 to 60 chars · f3a09044
      Rob Swindell authored
      Update to commit 85a2de04 (2 years ago).
      
      FSC-74 specifies:
      "The conference name shall be no more than 60 characters in length."
      
      SCFG was limiting sub and dir area-tags to 40 chars and SBBSecho was limiting
      area tags to 50 chars in length.
      
      FSC-74 isn't a standard, but lacking this detail in FTS-4 and considering it
      comes from the same authoritative source (the Conference Mail System User
      Manual), I think it's the best source of truth we have.
      
      Also, since we're no longer using .cnf files, we don't need different max
      area-tag lengths between SBBSecho and SCFG structs - they all now use the same
      macro: FIDO_AREATAG_LEN
      f3a09044
  8. Apr 15, 2024
  9. Apr 14, 2024
  10. Apr 11, 2024
    • Rob Swindell's avatar
      When server_binary option is set, request remote BINARY_TX option · af28c04c
      Rob Swindell authored
      As reported by Fzf (FQBBS):
      
      It addresses the local configuration but unfortunately it still doesn't set
      remote options.  The remote is usually going to be in binary mode but SVDM has
      the remote option set to ASCII by default.  A CR from the remote then gets held
      up until a second byte is sent.
      
      Also suggested by Fzf, when server_binary mode is not configured, then advertise
      and request binary mode is/be disabled, explicitly.
      af28c04c
  11. Apr 10, 2024
    • Rob Swindell's avatar
      The kludge of reverting the Pause prompt string is no longer needed · 252b1dc3
      Rob Swindell authored
      ... when using user_settings.js (i.e. to switch command shells), the user's
      text.<lang>.ini is re-loaded, thus reverting any changes (e.g. made when
      loading another shell, like simple.bin).
      
      Also, this was causing the translated Pause strings (from text.<lang>.ini)
      to be lost.
      252b1dc3
    • Rob Swindell's avatar
      Resolve CID 492287 - we don't care about the fexistcase() return value here · 76b5c7f4
      Rob Swindell authored
      We're just using it to "fix" the case, if the file indeed exists.
      76b5c7f4
    • Rob Swindell's avatar
      Create/use sbbs_t::flush_output(timeout) · 424dfe10
      Rob Swindell authored
      If client socket is connected, wait up to the specified timeout period (in ms)
      for the output buffer to be emptied.
      
      This is much preferred over blindly calling mswait() after sending some data
      (e.g. a file) and possibly waiting much longer than necessary.
      424dfe10
    • Rob Swindell's avatar
      Reduce the Terminal Server thread outcom timeout from 80 seconds to 800 ms · 221507a8
      Rob Swindell authored
      Since the Terminal Server is a single thread, let's not block for long
      periods of time trying to send bytes to a client (e.g. send the badip.msg
      file contents to a client with a blocked IP address), effectively DoSing the
      terminal server.
      
      This should address the problem reported via IRC:
      <theviper4> │Apr  9 15:38:11 viper-bbs synchronet: term Terminal Server timeout(outcom) 0000 0000
      <theviper4> │Apr  9 15:38:35 viper-bbs synchronet: term Terminal Server !ERROR 110 sending on socket 39
      <theviper4> │Apr  9 15:38:35 viper-bbs synchronet: term Terminal Server !ERROR 32 sending on socket 39
      <theviper4> │Apr  9 15:38:35 viper-bbs synchronet: term Terminal Server !ERROR 32 sending on socket 39
      <theviper4> │Apr  9 15:38:36 viper-bbs synchronet: term 0039 Telnet !CLIENT BLOCKED in ip.can: 117.95.153.33
      
      Also, make the outcom timeout error message more helpful (e.g. include the
      sock descriptor of the client) and don't use the old rioctl() function
      here any more.
      221507a8
  12. Apr 09, 2024
  13. Apr 08, 2024
Loading