Geoff Clare wrote in
 <20200914090031.GB11999@localhost>:
 |Robert Elz wrote, on 12 Sep 2020:
 |>
 |> How you can manage to reconcile this in the standard, more precisely
 |> that saying "the r and R commands reply to the current message, using
 |> different, but otherwise unspecified, addresses obtained from the header
 |> of the current message" (in better prose than that, one would hope), I
 |> don't know, and that's not very useful to anyone.
 |
 |Perhaps one way forward would be to require that mailx can be
 |configured so that "R" and "r" behave in a particular way, but that
 |it need not be the default configuration.
 |
 |While reading through the various responses, I also realised that
 |there is a fourth problem to add to the list I originally gave.
 |(I forget who's response made me think of it, but for convenience
 |I'll just put the details here. Apologies for not giving credit
 |where due.)
 |
 |As stated before, the description of "r" says the reply is sent
 |to "all recipients included in the header of the message". The
 |fourth problem is:
 |
 |4. "r" is required NOT to send the reply to the author/sender of the
 |message, but only to its (known) recipients.  (So the author/sender
 |will only get the reply if they were included in "To:" or "Cc:".)

An editorial error that reveals deficits in they way human brains
scan text.   That is what i thought first.  (I never recognized
this "oddity".)

On a second glance this could be thirty and more years old, as
Tenth Edition Research Unix (1991; i think in effect this was UPAS
then, i would presume?  It also has a V9 preprocessor block which
uses "UPAS-envelopes", Fromname()) and 3BSD Mail (March 1980; not
newer ones!) did not look out for the From: (let alone Sender:) at
all, like (showing BSD because of further comments below)

        if ((replyto = skin(hfield("reply-to", mp))) != NOSTR)
                np = extract(replyto, GTO);
        else if ((cp = skin(hfield("to", mp))) != NOSTR)
                np = extract(cp, GTO);
        else
                np = NIL;

BSD Mail 8.1 (.. .1, anyhow from 1996-06-14) then prepends

        if ((rcv = skin(hfield("from", mp))) == NOSTR)
                rcv = skin(nameof(mp, 1));

to the above and then does a dance

        ... remove all alternates etc. from "np" ....
        if (np != NIL && replyto == NOSTR)
if anything real to address remains and we did not see Reply-To:
                np = cat(np, extract(rcv, GTO));
also address From:
        else if (np == NIL) {
                if (replyto != NOSTR)
                        printf("Empty reply-to field -- replying to author\n");
                np = extract(rcv, GTO);
only address From:
        }
        head.h_to = np;

This is of course very primitive handling and does not take care
for RFC 2822, no Sender: handling, etc.

--steffen
|
|Der Kragenbaer,                The moon bear,
|der holt sich munter           he cheerfully and one by one
|einen nach dem anderen runter  wa.ks himself off
|(By Robert Gernhardt)

  • Re: mailx R and r co... Steffen Nurpmeso via austin-group-l at The Open Group

Reply via email to