Annotation of researchv10no/lbin/mailx/man/mail_pipe.1m, revision 1.1

1.1     ! root        1: '\"macro stdmacro
        !             2: .if n .pH g1a.mail_pipe %W% of %G%
        !             3: .if \nX=0 .ds x} mail_pipe 1M "Essential Utilities" "\&"
        !             4: .if \nX=1 .ds x} mail_pipe 1M "Essential Utilities"
        !             5: .if \nX=2 .ds x} mail_pipe 1M "" "\&"
        !             6: .if \nX=3 .ds x} mail_pipe "" "" "\&"
        !             7: .nr X
        !             8: .TH \*(x}
        !             9: .SH NAME
        !            10: \f4mail_pipe\f1 \- invoke recipient command for incoming mail
        !            11: .SH SYNOPSIS
        !            12: .PP
        !            13: \f4mail_pipe\f1
        !            14: [
        !            15: \f4\-x\f1
        !            16: .I debug_level
        !            17: ]
        !            18: \f4\-r\f1
        !            19: .I recipient
        !            20: \f4\-R\f1
        !            21: .I path_to_sender
        !            22: \f4\-c\f1
        !            23: .I content_type
        !            24: \f4\-S\f1
        !            25: .I subject
        !            26: .SH DESCRIPTION
        !            27: When a new mail message arrives,
        !            28: the \f4mail\fP command first checks if the recipient's mailbox indicates
        !            29: that the message is to be forwarded elsewhere (to some other recipient or
        !            30: as the input to some command).
        !            31: If the message is to be piped into a recipient-specified command,
        !            32: \f4mail\fP invokes \f4mail_pipe\fP to do some validation and then execute
        !            33: the command in the context of the recipient.
        !            34: .PP
        !            35: Command-line arguments are:
        !            36: .PD 0
        !            37: .TP 18
        !            38: \f4\-x\fP \f2debug_level\fP
        !            39: Turn on debugging for this invocation. See the description of the \f4\-x\fP
        !            40: option for the \f4mail\fP command for details.
        !            41: .TP
        !            42: \f4\-r\fP \f2recipient\fP
        !            43: The recipient's login id.
        !            44: .TP
        !            45: \f4\-R\fP \f2path_to_sender\fP
        !            46: The return address to the message's originator.
        !            47: .TP
        !            48: \f4\-c\fP \f2content_type\fP
        !            49: The value of the \f4Content-Type:\fP header line in the message.
        !            50: .TP
        !            51: \f4\-S\fP \f2subject\fP
        !            52: The value of the \f4Subject:\fP header line in the message if present.
        !            53: .PD
        !            54: .PP
        !            55: \f4mail_pipe\fP is installed as a setuid-to-root process,
        !            56: thus enabling itself to change it's user and group ids to that of the
        !            57: recipient as necessary.
        !            58: .PP
        !            59: When invoked,
        !            60: \f4mail_pipe\fP performs the following steps (if a step fails, the exit
        !            61: code is noted as [\f2N\f1]):
        !            62: .PD 0
        !            63: .TP 3
        !            64: \-
        !            65: Validate invocation arguments [\f41\f1].
        !            66: .TP 3
        !            67: \-
        !            68: Verify that recipient name is \(<= 14 characters long [\f42\f1].
        !            69: .TP 3
        !            70: \-
        !            71: Verify that the setgid flag for the recipient mailbox is set [\f43\f1].
        !            72: .TP 3
        !            73: \-
        !            74: Open \f4/var/mail/\fP\f2recipient\fP [\f44\f1].
        !            75: .TP 3
        !            76: \-
        !            77: Verify that recipient's mailbox starts with the string \f4Forward to\fP [\f45\f1].
        !            78: .TP 3
        !            79: \-
        !            80: Find pipe symbol indicating start of command string in recipient
        !            81: mailbox [\f46\f1].
        !            82: .TP 3
        !            83: \-
        !            84: Find entry for recipient in \f4/etc/passwd\f1 [\f47\f1].
        !            85: .TP 3
        !            86: \-
        !            87: Set gid to recipient's gid [\f48\f1].
        !            88: .TP 3
        !            89: \-
        !            90: Set uid to recipient's uid [\f49\f1].
        !            91: .TP 3
        !            92: \-
        !            93: Change current directory to recipient's login directory [\f410\f1].
        !            94: .TP 3
        !            95: \-
        !            96: Allocate space to hold newly \f4exec\f1'ed environment for
        !            97: recipient command [\f411\f1].
        !            98: .TP 3
        !            99: \-
        !           100: Parse the recipient command, performing any \f4%\f2keyword\f1 expansions required.
        !           101: See the `Forwarding mail' section of \f4mail\fP(1), for more information
        !           102: regarding \f4%\f2keyword\f1 substitutions [\f412\f1].
        !           103: .TP 3
        !           104: \-
        !           105: Execute recipient command [\f413\f1 if \f4exec\f1 fails,
        !           106: otherwise exit code from recipient command itself].
        !           107: .PD
        !           108: .SH FILES
        !           109: .PD 0
        !           110: .TP 20
        !           111: \f4/etc/passwd\fP
        !           112: to identify sender and locate recipients
        !           113: .TP
        !           114: \f4/var/mail/\f2recipient\f1
        !           115: incoming mail for \f2recipient\fP;
        !           116: that is, the mail file
        !           117: .TP
        !           118: \f4/tmp/MLDBG\(**\fP
        !           119: debug trace file
        !           120: .TP
        !           121: \f4/usr/lib/mail/mail_pipe\fP
        !           122: mail_pipe program
        !           123: .PD
        !           124: .SH SEE ALSO
        !           125: \f4mail\fP(1),
        !           126: \f4notify\fP(1),
        !           127: \f4vacation\fP(1)

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.