1 | XMR4 ;ISC-SF/GMB-SMTP HELP ;04/17/2002 11:17
|
---|
2 | ;;8.0;MailMan;;Jun 28, 2002
|
---|
3 | HELPME ;
|
---|
4 | N XMALL
|
---|
5 | S XMALL="HHHH^EXPN^HELO^HELP^MAIL^NOOP^QUIT^RCPT^RSET^TURN^VRFY"
|
---|
6 | I XMP="ALL" D ALL G END
|
---|
7 | I U_XMALL_U[(U_XMP_U) D SHOW(XMP) G END
|
---|
8 | D SHOW("HHHH")
|
---|
9 | END I 'ER S XMSG="214 " X XMSEN
|
---|
10 | Q
|
---|
11 | ALL ;
|
---|
12 | N I,J
|
---|
13 | F I=1:1:$L(XMALL,U) D SHOW($P(XMALL,U,I)) Q:ER
|
---|
14 | Q
|
---|
15 | SHOW(XMCMD) ;
|
---|
16 | N I
|
---|
17 | F I=0:1 S XMSG="214-"_$P($T(@XMCMD+I),";",3,99) Q:$L(XMSG)=4 X XMSEN Q:ER
|
---|
18 | Q
|
---|
19 | HHHH ;;
|
---|
20 | ;;This is the simple mail transfer protocol receiver
|
---|
21 | ;;Commands currently understood are:
|
---|
22 | ;;HELO <domain> (which initiates a transaction)
|
---|
23 | ;;MAIL FROM: <reverse-path>
|
---|
24 | ;;RCPT TO: <forward-path> (which names a recipient)
|
---|
25 | ;;DATA (terminated with a single line of '.')
|
---|
26 | ;;HELP (which displays this text)
|
---|
27 | ;;NOOP (which does nothing)
|
---|
28 | ;;RSET <reason for> which stops transmission of message
|
---|
29 | ;;STAT (which displays the current status of the receiver)
|
---|
30 | ;;VRFY <user> (which verifies the existence of a user)
|
---|
31 | ;;TURN (Which turns around the line; Sender becomes receiver)
|
---|
32 | ;;EXPN <mail group> (which lists the members of a group)
|
---|
33 | ;;QUIT (which terminates the connection)
|
---|
34 | ;;
|
---|
35 | ;;CHRS <domain> initialize a remote domain
|
---|
36 | ;;Extensions:
|
---|
37 | ;;MESS ID:XMREMID Sending message remote ID to allow processing to stop
|
---|
38 | ;;
|
---|
39 | ;;Enter HELP ALL to see further discussion on all commands, or
|
---|
40 | ;;HELP <command> to see further discussion of <command>.
|
---|
41 | ;;
|
---|
42 | HELO ;;
|
---|
43 | ;;The HELO command is used to identify the sending host to the receiver:
|
---|
44 | ;;
|
---|
45 | ;; HELO <domain>
|
---|
46 | ;;
|
---|
47 | ;; Where <domain> is the name of the sending host.
|
---|
48 | ;;
|
---|
49 | ;;If the receiver will accept mail, it responds with its name.
|
---|
50 | ;;
|
---|
51 | ;;The HELO command must be the first command of a mail sequence.
|
---|
52 | ;;
|
---|
53 | MAIL ;;
|
---|
54 | ;;The MAIL command is used after a HELO command to ask a receiver to
|
---|
55 | ;;accept a mail message. The format is:
|
---|
56 | ;;
|
---|
57 | ;; MAIL FROM: <user>@<site>
|
---|
58 | ;;
|
---|
59 | ;;where <user> is the name of the user sending the message, and <site>
|
---|
60 | ;;is the name of the site sending the mail, in Internet domain
|
---|
61 | ;;format.
|
---|
62 | ;;
|
---|
63 | ;;The receiver will respond with "250 OK" if accepted, and "501 Invalid
|
---|
64 | ;;Reverse path specification" if not.
|
---|
65 | ;;
|
---|
66 | ;;This command is followed with RCPT and DATA commands to name
|
---|
67 | ;;and transfer the data, respectively.
|
---|
68 | ;;
|
---|
69 | RCPT ;;
|
---|
70 | ;;This command is used to identify the recipients of the mail.
|
---|
71 | ;;Its format is:
|
---|
72 | ;;
|
---|
73 | ;; RCPT TO: <user>
|
---|
74 | ;;
|
---|
75 | ;;If the user is found, the receiver will respond with "250 OK";
|
---|
76 | ;;Otherwise, it will say "501 Invalid forward path specification".
|
---|
77 | ;;
|
---|
78 | ;;Each recipient of the message is named individually. The VRFY
|
---|
79 | ;;command can be used to confirm the existence of a user without
|
---|
80 | ;;actually putting him on the recipient list.
|
---|
81 | ;;After recipients are specified, the DATA command is used to transfer
|
---|
82 | ;;the body of the message.
|
---|
83 | ;;
|
---|
84 | DATA ;;
|
---|
85 | ;;The DATA command is used after the MAIL and RCPT commands to transmit
|
---|
86 | ;;the body of the message. The command has no arguments. The receiver's
|
---|
87 | ;;response to the command is to either issue an error message:
|
---|
88 | ;;"503 no recipients specified" or "354 Start mail input".
|
---|
89 | ;;
|
---|
90 | ;;Data will be accepted until a line consisting of a single period is
|
---|
91 | ;;detected. If any line begins with a period, it must have an
|
---|
92 | ;;additional period inserted at the beginning of the line.
|
---|
93 | ;;
|
---|
94 | ;;After the DATA command is completed, the receiver will respond with
|
---|
95 | ;;"250 OK" if the message was accepted, or an error message if
|
---|
96 | ;;otherwise.
|
---|
97 | ;;
|
---|
98 | RSET ;;
|
---|
99 | ;;The RSET (Reset) command is used to reset the receiver to its initial
|
---|
100 | ;;state and cancel any mail in progress. The sender does not need to
|
---|
101 | ;;issue HELO again.
|
---|
102 | ;;
|
---|
103 | VRFY ;;
|
---|
104 | ;;The VRFY (Verify) command is used to verify the existence of a user
|
---|
105 | ;;at the receiver. The format is:
|
---|
106 | ;;
|
---|
107 | ;; VRFY <user>
|
---|
108 | ;;
|
---|
109 | ;;The computer will respond with the user's full name if found, or
|
---|
110 | ;;"550 User not found" if not. This command can be issued at any
|
---|
111 | ;;time, and does not affect the recipient list.
|
---|
112 | ;;
|
---|
113 | EXPN ;;
|
---|
114 | ;;The EXPN (Expand) command causes the receiver to expand a mailing
|
---|
115 | ;;list, showing the sender the list of individuals in the list.
|
---|
116 | ;;
|
---|
117 | HELP ;;
|
---|
118 | ;;The HELP command displays user assistance information for interactive
|
---|
119 | ;;users. If issued without an argument, it gives a general introduction.
|
---|
120 | ;;If given an argument naming a command, it gives further information
|
---|
121 | ;;on that command. If given an argument of "ALL", it displays
|
---|
122 | ;;help on all arguments.
|
---|
123 | ;;
|
---|
124 | NOOP ;;
|
---|
125 | ;;The NOOP (no operation) command causes the receiver to respond with
|
---|
126 | ;;a "250 OK" message.
|
---|
127 | ;;
|
---|
128 | QUIT ;;
|
---|
129 | ;;The QUIT command is used to terminate the mail transfer process.
|
---|
130 | ;;The connection will be closed, and any mail transfers not concluded
|
---|
131 | ;;with a successful DATA command will be lost.
|
---|
132 | ;;
|
---|
133 | TURN ;;
|
---|
134 | ;;
|
---|