nmh-workers
[Top] [All Lists]

Re: [Nmh-workers] Request Deprecation of mts.conf's mmdelim1 and mmdelim2.

2017-05-24 06:49:38
Hi,

kre wrote:
No, it always was in band - the 4-SOH sequence was searched for in all
lines of the message, and SOH has always been a possible character in
e-mail.   Just even more unlikely years ago than it is now.

I have, AIX, recollections of one of the four SOH sometimes being munged
to STX.  I thought it was ^A^A^A^B.  I looked at packf(1) to see what it
does.  This being nmh, there's good news and bad news.

*Assuming* this hand-edited MH mail file can be created by MH,

    $ cat -A 1
    Return-Path: <>$
    Subject: packf Test.$
    $
    foo$
    ^A^A^A^A$
    bar$
    $

then packf munges the in-band SOH.

    $ packf -mmdf -file packf.mmdf +. 1
    Create file ".../packf.mmdf"? y
    $ cat -A packf.mmdf
    ^A^A^A^A$
    Return-Path: <>$
    Subject: packf Test.$
    $
    foo$
  → ^B^A^A^A$
    bar$
    ^A^A^A^A$
    $

I suspect other programs munge in other ways giving the ^A^A^A^B I
recall.

That's the good news.  The bad news is it doesn't cope with it being
split across a read-buffer boundary.

    $ uniq -c 1 | cat -A
          1 Return-Path: <>$
          1 Subject: packf Test.$
          1 $
        113 pad pad pad pad pad pad pad pad pad pad pad pad pad pad pad pad pad 
pad$
          1 pad pad pad$
          1 foo$
          1 ^A^A^A^A$
          1 bar$
    $
    $ uip/packf -mmdf -file packf.mmdf +. 1
    Create file ".../packf.mmdf"? y
    $ uniq -c packf.mmdf | cat -A
          1 ^A^A^A^A$
          1 Return-Path: <>$
          1 Subject: packf Test.$
          1 $
        113 pad pad pad pad pad pad pad pad pad pad pad pad pad pad pad pad pad 
pad$
          1 pad pad pad$
          1 foo$
  →       1 ^A^A^A^A$
          1 bar$
          1 ^A^A^A^A$
    $

packf's -mbox munging isn't all sweetness and light either.  If the
first line of the mail starts with `Return-Path:' or `X-Envelope-From:',
with exactly that case, then a From␣ header is built from its parts to
replace it.

Does anyone know about the `map' file that is built by packf?  The man
page briefly mentions it.

    FILES
        .msgbox.map    A binary index of the file

And I spy it was created with binary indexes.

    $ hd .packf.map
    00000000  02 00 00 00 03 00 00 00  00 00 00 00 00 00 00 00  
|................|
    00000010  11 20 00 00 00 00 00 00  00 00 00 00 74 20 00 00  |. ..........t 
..|
    00000020  05 00 00 00 00 00 00 00  03 20 00 00 00 00 00 00  |......... 
......|
    00000030  00 00 00 00 05 00 00 00  08 20 00 00 00 00 00 00  |......... 
......|
    00000040  0c 20 00 00 00 00 00 00                           |. ......|
    00000048

I don't think MH uses them so they're probably leftovers to feed to the
swine.

It occurs to me that if readable and reversible archives of MH's 1, 2, 3
files are wanted that GNU shar(1) with -T would be an option.

BTW, in digging for this I found Usenet posts bemoaning the slowdown
between MH3 and MH6;  I suspect that's the code we've been deleting ever
since.  :-)

-- 
Cheers, Ralph.
https://plus.google.com/+RalphCorderoy

_______________________________________________
Nmh-workers mailing list
Nmh-workers(_at_)nongnu(_dot_)org
https://lists.nongnu.org/mailman/listinfo/nmh-workers

<Prev in Thread] Current Thread [Next in Thread>