Synchronet now requires the libarchive development package (e.g. libarchive-dev on Debian-based Linux distros, libarchive.org for more info) to build successfully.

  1. 04 Apr, 2021 1 commit
    • Rob Swindell's avatar
      A poll() failure with EINTR does not mean a socket is closed. · fcf58640
      Rob Swindell authored
      This won't impact Synchronet as it has a separate signal handling
      thread, but we still need to behave properly for processes that
      don't.  I'm also saying that ENOMEM does not indicate a disconnection,
      though it may be better to pretend it was disconnected...
      fcf58640
  2. 18 Jan, 2021 1 commit
    • Rob Swindell's avatar
      Safe string handling with config-load error messages · 99dbeb14
      Rob Swindell authored
      We were just trusting that the error strings would be shorter than 256 (usually), but since we're including paths and strerror() results, we really have no control over the length of the error strings. So enforce some healthy boundaries. This could explain the crashes that Divarin of Mutiny is seeing with SCFG on WinXP or maybe it was the truncsp(strerror()) stuff that was just removed as well. We'll see...
      99dbeb14
  3. 16 Aug, 2020 1 commit
  4. 14 May, 2020 1 commit
    • rswindell's avatar
      No longer dynamically allocate compiled access requirment (AR) strings for configuration items. · 110cc8ac
      rswindell authored
      SCFG for Win32 is linked against a load_cfg lib that builds withOUT SCFG defined, so these compiled AR elements were allocated and then many SCFG operations (e.g. copy/paste, create new) would copy the allocated ARs to another configuration and then be subjected to double-free upon exit/clean-up (resulting in exception or crash).
      Just get rid of this cruft and some other related RAM-byte-saving hold-overs from the MS-DOS days.
      110cc8ac
  5. 09 May, 2019 1 commit
    • rswindell's avatar
      Support bright background colors: · 48e7520e
      rswindell authored
      - for PETSCII, this is automatic and you don't lose blink, but you do lose
        colored foreground when enabling a bright background ("reverse video")
      - for ANSI, this mode is typically referred to as "iCE colors" and disables
        blinking-text support
      - Ctrl-AE (^AE) is the new attribute code to enable bright-background
        (will have no effect on ANSI terminals that are not iCE color enabled)
        "E" is now valid in the ctrl/attr.cfg file and string values for JS
        console.attributes assignments, as well
      - Ctrl-AI (^AI) - blink - now does nothing for ANSI/ICE color terminals
        (blinking is not supported in combination with bright-background)
      - Using a new/non-standard CGA attribute bit-flag to indicate the selection of
        bright-background colors (BG_BRIGHT, bit 10), separate from BLINK.
        This change required all/most char/uchar attribute representations to be
        converted to int/uint.
      
      New text.dat strings:
      - PetTerminalDetected (renamed from PetTermDetected)
      - PetTerminalQ
      - TerminalAutoDetect
      - TerminalColumns
      - TerminalRows
      - TerminalMonochrome
      - TerminalColor
      - TerminalIceColor
      - IceColorTerminalQ
      This also moved the MsgCarbonCopyList definition to the end of the file
      for now.
      
      PETSCII reverse-video attribute fix:
      When a CR is sent to the terminal, the reverse-video attibute is auto-disabled
      so update our "current attribute" (curatr) value to match the remote.
      
      Support new printfile/putmsg mode flag: P_WRAP to force an ungraceful
      line-wrap (splitting) to the specified column width. If no column width is
      specified (0), then this mode will force an ungraceful wrap before the last
      terminal column where some terminals *may* auto-wrap.
      
      JS console.printfile() and printtail() methods now support an optional
      "orig_columns" argument, similar to console.putmsg(). Must specify P_WORDWRAP
      or P_WRAP for this argument to have any effect.
      
      Much improved terminal-type selection/configuration in the user defaults
      menu and abort (^C) at any of the yes/no prompts is now detected/handled much
      better (to answers to the prompted questions are not saved to the user
      settings).
      48e7520e
  6. 17 Mar, 2018 1 commit
  7. 24 Nov, 2017 1 commit
    • rswindell's avatar
      Created sbbs_t::lprintf() which calls sbbs_t::lputs() which does the magical · 81e4b3be
      rswindell authored
      call to either lputs or eputs based on the node number (0 = event thread).
      Created a sbbs_t::backup() wrapper for the C version which logs some helpful
      debug output.
      Backup the mail.hash and mail.ini file too.
      Log the number of emails removed during daily maintenance.
      DLL-export smb_open_sub() and smb_storage_mode() so they can be used in more
      places.
      81e4b3be
  8. 15 Nov, 2016 1 commit
  9. 08 Nov, 2016 1 commit
  10. 08 Sep, 2004 1 commit
  11. 30 Aug, 2004 1 commit
  12. 08 Apr, 2004 1 commit
  13. 07 Apr, 2004 1 commit
  14. 09 May, 2002 1 commit
  15. 08 Mar, 2002 1 commit
  16. 27 Feb, 2002 1 commit
  17. 13 Sep, 2001 1 commit
  18. 08 Jul, 2001 1 commit
  19. 03 Jul, 2001 1 commit
  20. 29 Jun, 2001 1 commit
  21. 17 May, 2001 1 commit
  22. 30 Apr, 2001 1 commit
  23. 26 Apr, 2001 1 commit
    • rswindell's avatar
      Removed unused prototype (chardupe) · 735de060
      rswindell authored
      Added FREE_ALLOC macro (to free cfg buffers malloced with get_alloc).
      Removed definition of SAVE_MEMORY (duplicate pointers make freeing difficult).
      735de060
  24. 05 Dec, 2000 1 commit
  25. 16 Nov, 2000 1 commit
  26. 15 Nov, 2000 1 commit
  27. 07 Nov, 2000 1 commit
  28. 10 Oct, 2000 1 commit