Subj : Netmail issue
To : Alan Ianson
From : Rob Swindell
Date : Sun Oct 25 2020 09:49 pm
Re: Netmail issue
By: Alan Ianson to Rob Swindell on Sun Oct 25 2020 08:41 pm
> Hello Rob,
>
> RS> The QWK format actually has its own unique line-ending sequence: 227
> RS> (0xE3). I don't know the history/reason why (ASCII 10, '\n', seems
> RS> like it would have worked fine). According to one QWK spec, this was
> RS> to "save space", but that doesn't really make sense. Anyway, MultiMail
> RS> and (presumably) other QWK readers do not actually wrap text with
> RS> CRLF, though perhaps they should. :-)
>
> Multimail does seem to wrap message text with CRLF line endings, or maybe
> it's the editor that does that. I can seem if I inspect messages in a BW
> reply packet before uploading.
I was talking about QWK, not BW (assuming you're referring to BlueWave format).
> >> and I think MBSE does that with messages saved on the BBS also.
>
> RS> Should be okay if it does. FidoNet messages are supposed to be '\r'
> RS> terminated paragraphs (line-feeds are ignored), so where FidoNet is
> RS> concerned, CRLF or CR should work fine.
>
> I had a look at a message I posted in MBSE inside a .pkt that was waiting in
> the outbound. It also had CRLF line endings although they may have been put
> there by the editor also. That's not a problem on an 80x25 screen, it looks
> good. If you look at that on a wider screen it'll still be wrapped for that
> 80 character wide terminal, unless your terminal can unwrap it for you.
Okay, but that's just a cosmetic thing. I don't think that's relevant to this message thread.
> >> I'm looking at these messages inside of .pkt files. These lines
> >> start with a CRLF, it's completely out of place there.
>
> RS> It should be fine. The only case where it would not be fine is control
> RS> paragraphs (kludge lines) which must begin with a single CR (0x0D)
> RS> character.
>
> I'm not sure what a control paragraph should look like so I can't say if it
> is correct or not.
A control paragraph (FTN kludge line) betweens with CR (Ctrl-M) and ASCII 1 (Ctrl-A) unless it's the beginning of the text in which case the CR is optional.
> Would you mind looking over this packet and tell us what you think? I think
> you could explain what is happening, if anything better than I can.
>
>
http://trmb.ca/5f0abae3.pkt
Here's the hex dump of that packet:
00000: F5 02 F5 02 E4 07 09 00 - 13 00 10 00 07 00 2F 00 : ............../.
00010: 00 00 02 00 99 00 99 00 - FF 01 44 41 59 54 49 4D : ..........DAYTIM
00020: 45 00 01 00 01 00 00 00 - 00 01 11 00 01 00 01 00 : E...............
00030: 01 00 00 00 03 00 6D 62 - 73 65 02 00 F5 02 F5 02 : ......mbse......
00040: 99 00 99 00 81 00 00 00 - 31 39 20 4F 63 74 20 32 : ........19 Oct 2
00050: 30 20 20 31 36 3A 30 35 - 3A 34 32 00 41 6C 61 6E : 0 16:05:42.Alan
00060: 20 49 61 6E 73 6F 6E 00 - 41 6C 61 6E 20 49 61 6E : Ianson.Alan Ian
00070: 73 6F 6E 00 4A 75 73 74 - 20 61 20 74 65 73 74 00 : son.Just a test.
00080: 01 49 4E 54 4C 20 31 3A - 31 35 33 2F 37 35 37 20 : .INTL 1:153/757
That's a well formed control paragraph (for INTL).
00090: 31 3A 31 35 33 2F 37 35 - 37 0A 0D 01 46 4D 50 54 : 1:153/757...FMPT
That's a control paragraph that begins with LF CR 01 which is pretty unusual, but legal (remember, linefeeds are ignored).
000A0: 20 32 0A 0D 01 54 4F 50 - 54 20 33 0A 0D 01 4D 53 : 2...TOPT 3...MS
More control paragraphs beginning with LF CR 01.
000B0: 47 49 44 3A 20 31 3A 31 - 35 33 2F 37 35 37 2E 32 : GID: 1:153/757.2
000C0: 20 64 39 63 38 35 37 36 - 34 0A 0D 01 54 5A 55 54 : d9c85764...TZUT
000D0: 43 3A 20 2D 30 37 30 30 - 0A 0D 01 43 48 41 52 53 : C: -0700...CHARS
000E0: 45 54 3A 20 4C 41 54 49 - 4E 2D 31 0A 0D 48 65 6C : ET: LATIN-1..Hel
That's interesting: it's also terminating control paragraphs with LF CR, so the LF is not actually part of the control paragraph as control parameters are terminated by a CR. That's pretty weird.
000F0: 6C 6F 20 41 6C 61 6E 2C - 0A 0D 0A 0D 54 68 69 73 : lo Alan,....This
There's a line terminated by LF CR LF.
00100: 20 69 73 20 6A 75 73 74 - 20 61 20 74 65 73 74 2E : is just a test.
00110: 0A 0D 0A 0D 2D 2D 2D 20 - 42 42 42 53 2F 4C 69 36 : ....--- BBBS/Li6
And a line terminated by LF CR LF CR.
00120: 20 76 34 2E 31 30 20 54 - 6F 79 2D 34 0A 0D 01 56 : v4.10 Toy-4...V
00130: 69 61 3A 20 31 3A 31 35 - 33 2F 37 35 37 2E 32 20 : ia: 1:153/757.2
00140: 40 32 30 32 30 31 30 31 - 39 2E 31 36 30 35 35 36 : @20201019.160556
00150: 20 42 42 42 53 2F 4C 69 - 36 20 76 34 2E 31 30 20 : BBBS/Li6 v4.10
00160: 54 6F 79 2D 34 0A 0D 01 - 56 69 61 20 31 3A 31 35 : Toy-4...Via 1:15
00170: 33 2F 37 35 37 40 66 69 - 64 6F 6E 65 74 20 40 32 : 3/757@fidonet @2
00180: 30 32 30 31 30 31 39 2E - 32 33 30 37 34 37 2E 55 : 0201019.230747.U
00190: 54 43 20 6D 62 66 69 64 - 6F 20 31 2E 30 2E 37 2E : TC mbfido 1.0.7.
001A0: 31 38 0D 00 00 00 : 18....
These last control paragraphs are *following* the message text, but they still appear valid. Only the last one has the expected single CR (0D) as a terminator.
So... lots of weird stuff, but nothing that appears to violate spec that I noticed.
> This is a test message I wrote to myself from 757.2 to 757.3 and this is the
> .pkt that MBSE created for 757.3. This packet contains (I think) uneeded and
> unwanted CRLF's at the beginning of lines.
>
>
http://trmb.ca/d319271e.pkt
>
> This is the input .pkt that was sent to 153/757 to forward on to 757.3 if
> you would like to look. It contain CRLF's as you'd expect.
Here's a hex dump of the packet:
00000: F5 02 F5 02 E4 07 09 00 - 13 00 10 00 05 00 38 00 : ..............8.
00010: 00 00 02 00 FF FF 99 00 - FF 00 44 41 59 54 49 4D : ..........DAYTIM
00020: 45 00 01 00 01 00 99 00 - 00 01 01 00 01 00 01 00 : E...............
00030: 01 00 02 00 00 00 00 00 - 00 00 02 00 F5 02 F5 02 : ................
00040: 99 00 99 00 81 00 00 00 - 31 39 20 4F 63 74 20 32 : ........19 Oct 2
00050: 30 20 20 31 36 3A 30 35 - 3A 34 32 00 41 6C 61 6E : 0 16:05:42.Alan
00060: 20 49 61 6E 73 6F 6E 00 - 41 6C 61 6E 20 49 61 6E : Ianson.Alan Ian
00070: 73 6F 6E 00 4A 75 73 74 - 20 61 20 74 65 73 74 00 : son.Just a test.
00080: 01 49 4E 54 4C 20 31 3A - 31 35 33 2F 37 35 37 20 : .INTL 1:153/757
00090: 31 3A 31 35 33 2F 37 35 - 37 0D 01 46 4D 50 54 20 : 1:153/757..FMPT
000A0: 32 0D 01 54 4F 50 54 20 - 33 0D 01 4D 53 47 49 44 : 2..TOPT 3..MSGID
000B0: 3A 20 31 3A 31 35 33 2F - 37 35 37 2E 32 20 64 39 : : 1:153/757.2 d9
000C0: 63 38 35 37 36 34 0D 01 - 54 5A 55 54 43 3A 20 2D : c85764..TZUTC: -
000D0: 30 37 30 30 0D 01 43 48 - 41 52 53 45 54 3A 20 4C : 0700..CHARSET: L
000E0: 41 54 49 4E 2D 31 0D 48 - 65 6C 6C 6F 20 41 6C 61 : ATIN-1.Hello Ala
000F0: 6E 2C 0D 0D 54 68 69 73 - 20 69 73 20 6A 75 73 74 : n,..This is just
00100: 20 61 20 74 65 73 74 2E - 0D 0D 2D 2D 2D 20 42 42 : a test...--- BB
00110: 42 53 2F 4C 69 36 20 76 - 34 2E 31 30 20 54 6F 79 : BS/Li6 v4.10 Toy
00120: 2D 34 0D 01 56 69 61 3A - 20 31 3A 31 35 33 2F 37 : -4..Via: 1:153/7
00130: 35 37 2E 32 20 40 32 30 - 32 30 31 30 31 39 2E 31 : 57.2 @20201019.1
00140: 36 30 35 35 36 20 42 42 - 42 53 2F 4C 69 36 20 76 : 60556 BBBS/Li6 v
00150: 34 2E 31 30 20 54 6F 79 - 2D 34 0D 00 00 00 : 4.10 Toy-4....
There are *no* CRLF's in the packet.
--
digital man
Sling Blade quote #20:
Doyle: Hey is this the kind of retard that drools and rubs shit in his hair?