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. 17 Feb, 2019 4 commits
  2. 16 Feb, 2019 4 commits
  3. 15 Feb, 2019 13 commits
  4. 14 Feb, 2019 3 commits
    • rswindell's avatar
      Include the Synchronet revision (e.g. 'c') in the "SYSTEM" value of the QWK · be1c57c6
      rswindell authored
      DOOR.ID file created by Synchronet.
      be1c57c6
    • rswindell's avatar
      For normal (non-QWKnet) users, when packing QWK packets, include the · 989955bb
      rswindell authored
      plain-text portion (only) for MIME-encoded messages (emails). If/when there
      are ever QWK readers that support MIME-decoding, I'll make this behavior
      configurable. :-)
      When passing mail between QWKnet nodes, leave the original MIME-encoding in
      tact (if there is any).
      989955bb
    • rswindell's avatar
      Fix potential for heap corruption in (new function) strListModifyEach(): · 7c7a2c14
      rswindell authored
      If the modify callback function returned a pointer *within* the list item's
      allocated buffer, the strcpy() would copy from potentialy free'd memory as
      realloc may change the location of the heap buffer when resizing.
      Fixed by allocating a copy of the returned pointer before freeing the original
      list item buffer and then just assign the allocated pointer (no copying
      needed). This likely will result in more heap fragmentation for modified list
      items are now newly-allocated buffers rather than reallocated existing buffers
      but the other option would have been to allocate a temporary copy of the string
      before reallocating and then copying and that would've been a lot more overhead
      than with this approach.
      
      This likely fixes any crashes seen in recent revs of v3.17c (e.g. when
      imported QWK or REP packets and text/*.can and the twitlist.cfg are parsed).
      The sighting on Vertrauen was only in the Windows build and appeared when
      importing QWK/REP packets.
      7c7a2c14
  5. 12 Feb, 2019 1 commit
    • rswindell's avatar
      Restore the BRE inter-bbs netmail attachment work-around from SBBSecho v2: · a3b2f9e2
      rswindell authored
      If the attached file begins with a '^', ignore/skip that character in the file
      path. This should resolve the error reported by Ken  of Section One BBS:
      ERROR line 850, attachment file not found: ^C:/SBBS/XTRN/BRE777/...
      
      SBBSecho v2.x included this work-around and it was not included in the v3
      re-factoring/re-write. Of course, BRE is doing something wrong and is totally
      at fault here, but no one expects BRE to be fixed... ever. :-)
      a3b2f9e2
  6. 11 Feb, 2019 1 commit
    • rswindell's avatar
      Patch from Mark Lewis (wk42): · a59060dd
      rswindell authored
      i've made a few adjustments to xtrn.cpp for external.bat...
      
      - remove unneeded redirection of dosemu output.
         still uses same log file name and stops zero
         byte file dosemu.log from being created in node
         directories.
      - fix faulty "keystroke" dosemu -I command. it
         didn't actually do the "\r" but sent it as
         characters to the command line.
      - added code for SBBS specific lredirs to be
         done more cleanly like dosemu's default
         autoexec.bat. only deletes redir if it exists.
      
      His editor also appears to have removed trailling white-space from this file,
      which is fine.
      a59060dd
  7. 08 Feb, 2019 4 commits
    • rswindell's avatar
    • rswindell's avatar
      Remove unused variable: fp · 37a24e3a
      rswindell authored
      37a24e3a
    • rswindell's avatar
      Add/use new function findstr_list() which opens and returns a string list · 32051b32
      rswindell authored
      suitable for passing to findstr_in_list().
      SBBSecho peformance improvement: don't open/read the twitlist.cfg file for
      *each* imported message: just read it once during initialization (using the new
      findstr_list() function of course).
      Reversed course on the findstr()/trashcan() matching logic: significant leading
      white-space was not backwards compatible (and was the cause of recent lost
      messages in DOVE-Net) - so I decided to go a different route and support
      C-style character escape sequences (e.g. \r, \n, \t, \x##, etc.) in findstr
      comparison strings, so the new way to represent a leading space character
      in a filter file (e.g. twitlist.cfg, name.can) would be: "\ ". So to match (e.g.
      filter/disallow) all strings with a leading space: "\ *". "\x20 *" would also
      work (0x20 is ASCII for "space").
      Now, again, leading white-space in filter files (e.g. text/*.can, twitlist.cfg)
      is ignored. <sigh>
      32051b32
    • rswindell's avatar
      New function: strListModifyEach(), iterates through a string list, calling · 7fa88586
      rswindell authored
      a caller-supplied function (callback) which can modify each string or leave
      the string in tact by returning NULL. Shrinking strings is trivial while
      expanding strings (making them bigger) is a little more involved, probably
      using the cbdata to pass a temporary buffer around to store each expanded
      string or returning a new globally-valid pointer.
      Removed the malloc.h #include as we haven't used alloca() here for a while.
      7fa88586
  8. 05 Feb, 2019 2 commits
  9. 04 Feb, 2019 3 commits
  10. 03 Feb, 2019 1 commit
  11. 02 Feb, 2019 4 commits