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 4 commits
  2. 21 Feb, 2021 1 commit
  3. 15 Feb, 2021 1 commit
  4. 16 Aug, 2020 1 commit
  5. 10 Aug, 2020 1 commit
  6. 09 May, 2020 1 commit
  7. 08 May, 2020 1 commit
  8. 15 Apr, 2020 2 commits
  9. 11 Apr, 2020 1 commit
  10. 31 Aug, 2019 1 commit
  11. 29 Aug, 2019 1 commit
  12. 17 Aug, 2019 1 commit
  13. 02 Aug, 2019 1 commit
    • rswindell's avatar
      There appears to be an issue with QWKnet messages being crossed-up where · b81a0c95
      rswindell authored
      a message is posted to a different conference than the original sub-board with
      completely different header information. I suspect this has something to do
      HEADERS.DAT creation or import - not sure. So I added a "Conference"
      headers.dat field for *messages* (it already existed for votes) and use that
      value to confirm that the message header at the associated offset value in the
      QWK packet has the same conference number as the section in the headers.dat
      file. This is really just a sanity check and will only catch messages that were
      mistakening cross-posted (to a different conference) - *but* it log errors and
      save the bad QWK or REP file for me to examine more closely and see what's
      going on - and the message won't be imported (just "lost", which is also bad).
      
      So added more QWK import success/error checking and logging (especially for QWK
      packets since REP importing already had a lot of stats covered).
      
      Another check would be to store the original message number in the headers.dat
      file as well and use that to confirm that the headers.dat section is the
      correct match for the QWK message at that offset. I did not implement this
      check, yet. The conference number check seems like it'll catch most of the bad
      msgs and lead me to the root-cause.
      b81a0c95
  14. 01 Jan, 2019 1 commit
    • rswindell's avatar
      When failing to import vote-msgs or poll-closure-msgs from a QWKnet hub, · 822b2977
      rswindell authored
      change the errormsg() call to just a debug-level log message. These failures
      are expected if the local system (QWKnet node) didn't get the original poll
      message, for example.
      Continue to log these errors when encountered on a QWKhub (where they are
      less expected since a hub should normally have a deeper history of
      messages/polls than nodes will).
      822b2977
  15. 06 Sep, 2018 1 commit
  16. 03 Aug, 2018 1 commit
  17. 25 Jul, 2018 1 commit
  18. 23 Jul, 2018 1 commit
  19. 27 Mar, 2018 1 commit
  20. 23 Oct, 2017 1 commit
    • rswindell's avatar
      * Implemented support for new LIB_DIRS option: · 11e529d4
      rswindell authored
        Automatically detect child sub-directories and make them available as virtual
        directories for users to download from - only useful via FTP currently.
      * Implemented Sorting options for Message Groups and File Libraries:
        Sub-boards within groups and directories within library can now be
        automatically sorted based on the sysop's chosen sort field (long name, short
        name, or internal code)
        - Required that sub-boards are now stored/saved in msgs.cnf based on groups
        - Required QWKnet hub sub-board reference dynamic renumbering
      * Implemented "Template" toggle option for sub-boards and file directories:
        A sub-board or directory marked as "template" will be used for newly created
        (or imported) subs/dirs for that group/lib. Clone Options via SCFG will now
        use the "template" item as the source of the cloned settings, if available.
      11e529d4
  21. 14 Aug, 2017 1 commit
  22. 21 Feb, 2017 1 commit
    • rswindell's avatar
      Fix potential crash (stack corruption) in qwk_route() reported by Hemo: · 2ff51deb
      rswindell authored
      If what appears to be a QWKnet addressed was passed, but the QWK-ID portion was
      exactly 9 characters, a 1-byte stack corruption would occur as the 10-char
      local variable (node) could be written with 11 chars (9-char QWK-ID, colon,
      null). The reported issue happend when attempting to send netmail to
      "hemo@ujointbbs" which is neither a valid Internet email address or a valid
      QWKnet address.
      2ff51deb
  23. 23 Nov, 2016 1 commit
    • rswindell's avatar
      2 VOTING.DAT related fixes: · 37bdf376
      rswindell authored
      - the in-order QWK voting data importing wasn't working because the
        ini sections returned from iniGetSectionList do not contain the square
        brackets. So search for just the hex-offset (into MESSAGES.DAT) rather
        than the offset in square brackets.
      - Stop zeroing the vote message upon import (oops), causing SMBLIB -105
        errors upon adding the votes.
      37bdf376
  24. 20 Nov, 2016 3 commits
    • rswindell's avatar
      VOTING.DAT Backwards-compatibility enhancement: · 8dd3b13e
      rswindell authored
      If a VOTING.DAT file is received which did not contain offset/location
      sections, the vote/polls/etc. wouldn't be imported. Now, when each QWK 'V'
      msg hdr block is imported, the corresponding section is removed from the
      VOTING.DAT and after all QWK importing, the VOTING.DAT is then parsed
      for remaining items/sections and if there are any, imported at that time (in
      order in the file, not in the old poll/vote/closure order).
      8dd3b13e
    • rswindell's avatar
      Solved the networked-voting "ordering problem". QWK/REP packets that contained · 3258eca3
      rswindell authored
      normal messages along with voting data (polls, ballots, etc.) would always be
      imported in this order: msgs, polls, ballots/votes, and then poll-closures.
      This could result in a confusing order of messages in the local msg base where
      there were messages in reply to a poll before the poll appears and other
      oddities. Anyway, this is now resolved by placing a msg "header block" for each
      vote-data item in the MESSAGES.DAT file. Since there is no body/text blocks,
      it should be ignored under normal circumstances, but these header blocks are
      only created if VOTING.DAT is enabled anyway.
      And now, the VOTING.DAT contains an extra line (empty .ini section) with the
      HEADERS.DAT offset associated with the chronology of the item. The format
      is still backwards compatible with the earlier builds that included VOTING.DAT
      support.
      
      Also, fixed the vote/poll/closure Message-IDs containing a msg number of 0
      (while not technically a problem, it wasn't the intention) with the use of the
      new function: get_new_msg_number().
      3258eca3
    • rswindell's avatar
      Fix bug importing polls from QWK/REP packets: · 7fb73c67
      rswindell authored
      "Subject" wasn't being parsed from VOTING.DAT and is a required header field
      for polls, causing error: qwk.cpp line 1149 writing "/sbbs/data/subs/dove-sys"
      access=-105, as reported by echickenster.
      7fb73c67
  25. 19 Nov, 2016 1 commit
  26. 18 Nov, 2016 2 commits
    • rswindell's avatar
      Resolved unused variable warning. · 9f32122b
      rswindell authored
      9f32122b
    • rswindell's avatar
      Introduced 2 new poll concepts: · 0ac4f937
      rswindell authored
      - Closures (polls can be closed for new voting by the pollster)
      - Results can have configurable visibility:
        a. Only to voters (and the pollster) - the default
        b. Everyone
        c. Everyone once the poll has closed
        d. Only the pollster
      
      Changes to smb_getmsgtxt():
      Main change: poll questions can now be quoted when replying to a posted poll
      (the results cannot be quoted).
      Also: there's now automatically a blank line inserted between comment header
      fields and poll answers or the msg body text.
      Also: upon any malloc failure, the function now returns NULL.
      New functions: smb_msg_is_from() and smb_addpollclosure().
      0ac4f937
  27. 16 Nov, 2016 2 commits
  28. 15 Nov, 2016 2 commits
  29. 13 Nov, 2016 2 commits
    • rswindell's avatar
      Replaced text.dat line MsgVoteNotice with 2 new strings: MsgUpVoteNotice and · 7c17c5f2
      rswindell authored
      MsgDownVoteNotice.
      Also moved the R_Voting string, so the last few voting related strings in the
      text.dat have been re-arranged (sorry about the thrash) - if you don't have
      these new 8 lines, the default strings are used and you're fine.
      When listing messages from the "Reading" prompt, the vote status and Replied
      attribute flag are now indicated: 'V' = voted up (more than down), 'v' = voted
      down (more than up), and 'R' = replied-to. Unread/new messages still show a '*'
      in the A (for attributes) column.
      Voting via JS still does not automatically send a notice to the poster, that
      still needs to be worked out.
      7c17c5f2
    • rswindell's avatar
      Created a wrapper around smb_addvote() called votemsg() which (optionally) · b18764d1
      rswindell authored
      sends a short message (telegram) to the poster of the vote. It also confirms
      this is not a duplicate vote.
      b18764d1
  30. 12 Nov, 2016 1 commit