Re: sbbsecho and bad packets
By: Digital Man to deon on Sun Oct 05 2025 06:09 pm
Looks to me like the DateTime is missing the NUL terminator:
00000040 79 02 79 02 00 00 00 00 30 33 20 4f 63 74 20 32 |y.y.....03 Oct 2| 00000050 35 20 20 30 37 3a 31 37 3a 34 37 20 41 6c 6c 00 |5 07:17:47 All.|
Why is SBBSecho marking them bad?
The sbbsecho.log should say the reason why, but it's probably the same reason.
I didnt think DateTime was a null terminated string? Its 20 Bytes in the packed message header (FTS-0001.16 C.1).
"A packed message has a number of fixed length
fields followed by four null terminated strings."
(those being: to/from/subject and text are null terminated).
Or have a missed something?
FWIW, Tom Jenning's Fido software (specifically, unpmsg() from unpacket.c) would've barfed on any message without a NUL-terminated date/time as well. https://www.sensitiveresearch.com/Archive/FidoNet/index.html
It would would even trigger a buffer overflow (off-by-one) bug in his code! Just something I came across that was probably related to this discussion.
Re: sbbsecho and bad packets
By: Digital Man to deon on Mon Oct 20 2025 03:48 pm
Hey DM,
FWIW, Tom Jenning's Fido software (specifically, unpmsg() from unpacket.c) would've barfed on any message without a NUL-terminated date/time as well. https://www.sensitiveresearch.com/Archive/FidoNet/index.html
It would would even trigger a buffer overflow (off-by-one) bug in his code! Just something I came across that was probably related to this discussion.
Thanks, and interesting.
I still contend that the "standard" doesnt reflect this, which doesnt make sense (at least 2 me) on many levels. <shrug>
(And yes, I think there are probably many other things that are not following any "standards" anymore..)
Not sure what (Randy?) was thinking/intending in 1995. It certainly makes sense that it might be probably easier to code as a null terminated string and at the end of the day the most common representation of a date "yyyy-mm-dd hh:mm:ss" or "dd MMM yy hh:mm:ss" are both 19 chars, so being fixed at 19 chars (to save that byte) may have worked as well. Actually, saving the extra space before the time in the later format would have saved another byte, (or converting it to an unsigned int probably would have saved more). I guess by 1995, 2 bytes in a packet at those modem speeds wasnt a big deal, especially since it was negligble once compressed into a zip/arj file.
Anyway, I think my code handles both in case it pops up in other ways...
The standard (FTS-1) only has that one definition of the DateTime field in packets and it includes the (single) Null byte. So I don't think the requirement of the Null byte has really ever been ambiguous.
Re: sbbsecho and bad packets
By: Digital Man to deon on Mon Oct 20 2025 11:04 pm
Howdy,
The standard (FTS-1) only has that one definition of the DateTime field in packets and it includes the (single) Null byte. So I don't think the requirement of the Null byte has really ever been ambiguous.
Are we reading different versions of FTS-1? http://ftsc.org/docs/fts-0001.016
I see a DateTime mentioned in B.1 (the stored message), and in C.1 (the packed message).
I've been referencing to the C.1 reference all along.
...we just want our messages to go through and there to be some fault-
tolerance (e.g. recognize garbage from real messages) if at all possible.
| Sysop: | KJ5EKH |
|---|---|
| Location: | Siloam Springs, Ar. |
| Users: | 4 |
| Nodes: | 4 (1 / 3) |
| Uptime: | 13:11:25 |
| Calls: | 3 |
| Files: | 69 |
| D/L today: |
2 files (15K bytes) |
| Messages: | 8,799 |