.
Last update: 1997-05-20
9945-2-103 _____________________________________________________________________________ Topic: mailx escaped commands when stdin is not a terminal Relevant Sections: 4.40.7 Defect Report: ----------------------- Date: Fri, 31 Mar 1995 16:22:19 -0800 From: [email protected] (ken dawson [contractor]) Dear Standards Board, I would like to request a formal interpretation on the following issue concerning the mailx utility in POSIX.2. In section 4.40.7, the Extended Description of the mailx command, (P342, L6312-6321), it says: ... When mailx is invoked using the Send Mode synopsis, and standard input is a terminal, if no subject is specified on the command line and the asksub variable is set, a prompt for the subject shall be written. At this point mailx is in input mode. This input mode is also entered when using one of the Receive Mode synopsis forms and a reply or new message is composed using reply, Reply, or mail commands. When the message is typed and the end of the message is encountered, the message shall be passed to the mail delivery software. Commands can be entered by beginning a line with the escape character [by default, tilde (~)] followed by a single command letter and optional arguments. ... Does the definition of "input mode", then, necessarily require that stdin is a terminal? This seems unclear when Receive Mode is involved. That is to say, does echo "reply 1\naaaa\n~w repl" | mailx -n -f mbox produce a mail message sent to the all recipients of the first message in mbox which contains the message aaaa ~w repl or does it mail a message containing aaaa and create a copy of this message in the file repl? To match historic practice of the System V mailx, on which the standard is based, the sentence on P342, L6315-6317, should be changed to: This input mode is also entered when using one of the Receive Mode synopsis forms and a reply or new message is composed using the reply, Reply, or mail commands, and stdin is a terminal. Also, a sentence needs to be added after the end of the paragraph ending on (P342, L6321) which states: It is unspecified what effect these commands will have if stdin is not a terminal when a message is entered using either the Send Mode synopsis, or the Read Mode commands reply, Reply or mail. I believe that this change to historic practice was not intended. The rationale for mailx seems to carefully point out the cases where the standard differs from historic practice, but does not mention this issue. Interpretation response ------------------------ The standard clearly states the behavior of "input mode" and stdin, and conforming implementations must conform to this. However, concerns have been raised about this which are being referred to the sponsor. Rationale: None Forwarded to Interpretations group: Apr 5 1995 Proposed resolution circulated: May 16th Comments due: June 15th Finalised: June 16th 1995