• src/sbbs3/sbbsecho.c

    From Rob Swindell@VERT to Git commit to main/sbbs/master on Sunday, April 04, 2021 13:38:22
    https://gitlab.synchro.net/main/sbbs/-/commit/f3e4a6e498c8c206e087da88
    Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    Use SAFECAT() instead of strcat() for more safety.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Thursday, May 20, 2021 02:48:11
    https://gitlab.synchro.net/main/sbbs/-/commit/1031d0f6e01686c5a8dda583
    Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    Replace tempnam() usage with the suggested mkstemp()

    Since we're cleaning up warnings... this will break the Windows build for now.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Saturday, May 29, 2021 19:32:50
    https://gitlab.synchro.net/main/sbbs/-/commit/0f262d8ab2a6bd870adbb428
    Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    Don't allow downlinks (AreaFix add) of our "Unknown echoes" sub-board

    It was recently pointed out to me that a downlink could link to the '*' echo via Area Manager (AreaFix) request. This was not intentional.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Saturday, May 29, 2021 20:12:09
    https://gitlab.synchro.net/main/sbbs/-/commit/7f0390149d84d79a3b7bfb10
    Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    Keep the same area file (areas.bbs) mode flags (permissions)

    When executing area manager requests that alter the area file, the temp area file created (with mkstemp) had mode 0600 (owner read/write only). The sysop very possibly had different permission flags they want to keep for their area file, so copy the mode flags from the original area file to the temp/new area file.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Saturday, May 29, 2021 20:16:25
    https://gitlab.synchro.net/main/sbbs/-/commit/9a8c8e6d414c2bfe503aa841
    Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    Microsoft doesn't have fchmod(), so use chmod() on the closed file

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Wednesday, October 06, 2021 18:38:09
    https://gitlab.synchro.net/main/sbbs/-/commit/ccc0e4019838ce4021c16b0e
    Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    When packing netmail (stored messages), don't discard non-zero zones

    As reported by Ragnarok (DOCKSUD) via DOVE-Net, when packing (packetizing) netmail messages, the source and destination zones from the netmail header were discarded (since they are defined as "optional" in FTS-1) and the zone values were replaced with the system's primary/default zone number. If the netmail message included an INTL kludge, the source and destination zone values would be parsed from that kludge line and this issue would not be noticed.

    So the fix is: Only if the netmail message header contains a source or destination zone number of 0, replace that zone with the system's primary/default zone number. As before, the INTL kludge zone information can override the header fields.

    Also, there's no reason to force the point numbers from the header to zero, since if they were not valid (e.g. "fill" in the original FTS-1 specification), they would be already zero. So use the source and destination point numbers, as is, from the netmail header too (with the FMPT and TOPT kludge override support left in-tact).

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Thursday, November 11, 2021 18:43:46
    https://gitlab.synchro.net/main/sbbs/-/commit/5012efb1eb3d2d20289a01c1
    Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    Log an error and exit immediately when a local linked-node is configured

    When a linked-node (in echocfg->Linked Nodes) contains one of the local system's FTN addresses, display/log an error and exit immediately, e.g.:
    Configuration ERROR: Linked node #20 is your own address: 1:103/705

    I'd perform this check in EchoCfg, but:
    1. echocfg doesn't read the BBS's configuration files (where the local FTN addresses are configured), and
    2. some sysops just directly edit their sbbsecho.ini file

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Friday, November 12, 2021 14:09:35
    https://gitlab.synchro.net/main/sbbs/-/commit/e10b39d1aee183a16a3d9458
    Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    Generate a MSGID kludge for netmail messages created by SBBSecho

    The "serialno" field is a bad/naive one (a time_t value), but this is really just an experiment for Ragnarok to see if this fixes issue #306 (with hotdoged receiving AreaFix responses/notices).

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Thursday, November 18, 2021 17:38:10
    https://gitlab.synchro.net/main/sbbs/-/commit/27dfa4f6b9ebc59e1c4f097e
    Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    Resolve gcc warning

    warning: format `%lx' expects argument of type `long unsigned int'

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Thursday, January 13, 2022 17:04:35
    https://gitlab.synchro.net/main/sbbs/-/commit/55962a410034e3633fe3ff09
    Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    Disable libarchive support for creating/appending bundles

    libarchive apparently cannot be used for in-place modification of (e.g. adding files to) existing archives, so if a bundle already exists, this code would over-write it with a new archive containing just the latest packet. Issue reported by acn (IMZADI) via DOVE-Net.

    I could and might create an update_archive() function which extracts and re-creates an archive with additional files, but since I don't have that yet, just disable this for now and always use an external archive utility to create or update bundles (so again, an "Archive" configuration is required in your sbbsecho.ini file, which you most likely already have).

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Friday, March 11, 2022 00:08:19
    https://gitlab.synchro.net/main/sbbs/-/commit/c4b6a79d6f3a6b217cb87a1b
    Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    Add subject.can (Subject filter file) support

    For Trikester (DOVEMOD/BSMNTQQ)

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Sunday, March 13, 2022 00:38:44
    https://gitlab.synchro.net/main/sbbs/-/commit/e530a12cf6268ef9ab47f36c
    Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    Fix CID 174355: Big parameter passed by value

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Sunday, April 03, 2022 16:51:09
    https://gitlab.synchro.net/main/sbbs/-/commit/726223ee8d8a7dde927fc833
    Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    For sub-boards configured to export "ASCII Only", convert UTF-8 correctly

    This converts the body text as well as the to, from, and subject header
    fields (first to CP437, then to ASCII).

    This should address the issue raised in issue #386 with exporting UTF-8 sequences to some message networks.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Monday, April 04, 2022 05:36:28
    https://gitlab.synchro.net/main/sbbs/-/commit/bf3da76e32fbc8cd7785fa1f
    Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    Resolve GCC warnings

    Fixes isue #388 - no change in behavior

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Tracker1@VERT/TRN to Rob Swindell on Monday, April 04, 2022 18:56:06
    On 4/3/22 16:51, Rob Swindell wrote:
    https://gitlab.synchro.net/main/sbbs/-/commit/726223ee8d8a7dde927fc833 Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    For sub-boards configured to export "ASCII Only", convert UTF-8 correctly

    This converts the body text as well as the to, from, and subject header fields (first to CP437, then to ASCII).

    This should address the issue raised in issue #386 with exporting UTF-8 sequences to some message networks.

    Maybe adding a "CP437/DOS Only" option? Not sure what the underlying
    value is though.
    --
    Michael J. Ryan - tracker1@roughneckbbs.com

    ---
    þ Synchronet þ Roughneck BBS - roughneckbbs.com
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Wednesday, April 13, 2022 18:35:02
    https://gitlab.synchro.net/main/sbbs/-/commit/414d34ec8bc2c13601ce476a
    Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    Fix packet filename in "Gruned message" log entry on Win32

    e.g. "Grunged message (type 2) from 4:80/1 at offset 58 in packet: (null)"

    off_t is 64-bit, but long in 32-bit (on Win32), so needs a typecast here in lprintf() call (otherwise, the upper 4 bytes of the offset are interpreted
    as the string address for the corresponding '%s' argument, the filename).

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Thursday, April 21, 2022 22:09:52
    https://gitlab.synchro.net/main/sbbs/-/commit/2962e4a5bf733e4b0c3869c4
    Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    Fix segfault when printing Bad-echo name after failing to load cfg

    This is a weird one: sbbsecho ran right as I was saving msgs.cnf via
    SCFG and it seems like it loaded 0-byte msgs.cnf into memory and this
    segfault was a result of trying to print sub[INVALID_SUB]->code.

    The use of [f]nopen() with proper share perms should have prevented this (truncated msgs.cnf read) from happening, so there's something else afoot here.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Sunday, September 17, 2023 23:27:45
    https://gitlab.synchro.net/main/sbbs/-/commit/f9b0dda5a1cac371a50f9f3f
    Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    Add more detail (e.g. line number) to various "error opening" log msgs

    Some of the errors could be pretty vague since they looked the same and
    we were depending on the path/file attempted to be opened in the log msg
    to clue us into what exactly was being attempted. But some of these file
    paths are sysop-configurable, and they can put unexpected things in there
    that make it difficult to determine exactly what file was trying to be
    opened and for what purpose. This should help a little bit.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Monday, December 04, 2023 21:14:35
    https://gitlab.synchro.net/main/sbbs/-/commit/43fb687f2e138e183f841a42
    Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    Fix issue when packing netmails for multiple different linked-nodes

    Introduced in commit 15b230af (9 months ago), the first linked-node config (including packet password!) for the first packed netmail message would be reused for subsequent packed netmail messages.

    Thank you to Wilfred van Velzen (2:280/464) for reporting this problem!

    Additional debug-level log message when using a packet password for a newly created packet.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Monday, December 04, 2023 22:57:40
    https://gitlab.synchro.net/main/sbbs/-/commit/28e435bdc2e909f38032afd4
    Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    Combine the "new packet" and "password-protected" debug-log lines

    ... to de-clutter the log

    Also, don't log the packet passwords. Folks copy and post sbbsecho.log lines and that could seriously compromise the security of the Interwebs if those super-secret passwords were ever leaked!

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Friday, December 15, 2023 17:25:50
    https://gitlab.synchro.net/main/sbbs/-/commit/fc9d641054b36d9a84cc87da
    Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    Fix typo in previous commit

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Sunday, January 07, 2024 20:47:22
    https://gitlab.synchro.net/main/sbbs/-/commit/623613492036f9806c225436
    Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    Expand sole-LFs in message text (shouldn't normally be there)

    Expanded to CRLF or just CR (if strip LFs is enabled).

    It is possible for someone to stuff LF-terminated text in a message, so let's account for that possibility upon export to FTNs where LFs are supposed to be ignored.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Wednesday, February 07, 2024 10:47:17
    https://gitlab.synchro.net/main/sbbs/-/commit/20aecd3a4d979af82e3f509b
    Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    Fix more warnings...

    It looks like we may need a set of PRI?TIME macros for printf()ing
    a time_t.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Saturday, March 16, 2024 20:11:36
    https://gitlab.synchro.net/main/sbbs/-/commit/9b28769f4b669763409f0435
    Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    Bugfix: actually use the SMB netattr 'HOLD' attribute flag

    ... when exporting from SMB to .msg ("stored message") file

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Saturday, March 23, 2024 16:12:16
    https://gitlab.synchro.net/main/sbbs/-/commit/4c7a908f8ee55161faf3be71
    Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    Insure buf is null-terminated in getzpt(), resoving CID 488308

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Saturday, March 23, 2024 17:13:28
    https://gitlab.synchro.net/main/sbbs/-/commit/5a2a73ae1b20ddf3563c23fe
    Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    Fix typo in previous commit to this file

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Monday, September 09, 2024 18:29:23
    https://gitlab.synchro.net/main/sbbs/-/commit/0f0a8a1ae72c424509eaa72d
    Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    Refactor the function: unpack_bundle()

    1. When a 0-length bundle file was encountered or an unpacking error occurred,
    any remaining bundles for the current search day-of-week (e.g. *.SU*) would
    be skipped/ignored. This bug (issue #764, regarding the 0-length file part),
    is fixed by not incrementing the day-of-week index in the main loop, but
    rather only incremeting the index when all bundles for the current
    day-of-week have been processed.
    2. The age calculation for 0-byte/length bundle files was incorrect, so all
    0-length bundle files would always be considered "less than 24-hours old"
    (and thus, never auto-deleted).
    This exacerbated the problem of issue #764 since it would persist until the
    0-length files were manually deleted. Fixed the file age calculation and
    now logging the date/timestamp of the 0-length file as well.
    3. Don't do the switch/case/sprintf dance when we're not re-running a glob()
    search.
    4. Replace the switch/case statement with an array of week day names/patterns. 5. Ignore (with a warning log message) any sub-directories of the inbound
    directory that happen to match the bundle file search pattern.
    6. Use better variable naming.
    7. Refer to files with a length of 0 as "0-length" instead of "0-byte" in log
    messages.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Sunday, September 22, 2024 16:57:13
    https://gitlab.synchro.net/main/sbbs/-/commit/6177a1c02241acc45a1b0858
    Modified Files:
    src/sbbs3/sbbsecho.c
    Log Message:
    Fix potential null pointer dereference

    strListReadFile() can return NULL upon error

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net