Subj : src/sbbs3/msgtoqwk.cpp To : Git commit to main/sbbs/master From : Rob Swindell (on Debian Linux) Date : Sat Sep 19 2026 15:48:48 https://gitlab.synchro.net/main/sbbs/-/commit/9d568c97638f9aa2e3fe1b41 Modified Files: src/sbbs3/msgtoqwk.cpp Log Message: Fix the MIME header stripping for QWK, which never actually ran The strip added in 3f2b039ecd (manage-38-week, 2026-02-03) is gated on "getmsgtxt_mode == GETMSGTXT_PLAIN", but getmsgtxt_mode is seeded with GETMSGTXT_ALL (= GETMSGTXT_TAILS = 1) a few lines earlier, so the value tested is always GETMSGTXT_ALL | GETMSGTXT_PLAIN (9) and never GETMSGTXT_PLAIN (8) alone. The equality never held, so the MIME header fields were never stripped. Test the bit instead. Reported by ant on DOVE-Net Tech Talk, who diagnosed it correctly: every QWK/REP packet we hand out still carries "Content-Type: multipart/alternative; boundary=XXXX" in HEADERS.DAT while the body has been flattened to the decoded text/plain part with no boundaries in it at all. The receiving system stores that header as an RFC822HEADER field (qwktomsg.cpp) and republishes it over NNTP, so a MIME-aware newsreader correctly sees a multipart message with zero parts and shows nothing. His dates match the code: MIME decoding became the QWK default in 0bc7b3297e (cleaning-19-wish, 2026-01-31), and the TLDR newsletter posts in Tech Talk went bad on 2026-02-02. This is the same bug Accession reported in February, which 3f2b039ecd was meant to fix. Verified against sub dove-tech msg #1013: before, HEADERS.DAT emitted both "MIME-Version: 1.0" and the multipart Content-Type while the exported body (11055 bytes) contained no "--Q8ymwWEC" boundary; after, both header fields are stripped. Co-Authored-By: Claude Opus 5 (1M context) --- SBBSecho 3.37-Linux * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705) .