分享
 
 
 

RFC2034 - SMTP Service Extension for Returning Enhanced Error Codes

王朝other·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

Network Working Group N. Freed

Request for Comments: RFC2034 Innosoft

Category: Standards Track October 1996

SMTP Service Extension for

Returning Enhanced Error Codes

Status of this Memo

This document specifies an Internet standards track protocol for the

Internet community, and requests discussion and suggestions for

improvements. Please refer to the current edition of the "Internet

Official Protocol Standards" (STD 1) for the standardization state

and status of this protocol. Distribution of this memo is unlimited.

1. Abstract

This memo defines an extension to the SMTP service [RFC-821, RFC-

1869] whereby an SMTP server augments its responses with the enhanced

mail system status codes defined in RFC1893. These codes can then

be used to provide more informative eXPlanations of error conditions,

especially in the context of the delivery status notifications format

defined in RFC1894.

2. IntrodUCtion

Although SMTP is widely and robustly deployed, various extensions

have been requested by parts of the Internet community. In

particular, in the modern, international, and multilingual Internet a

need exists to assign codes to specific error conditions that can be

translated into different languages. RFC1893 defines such a set of

status codes and RFC1894 defines a mechanism to send such coded

material to users. However, in many cases the agent creating the RFC

1894 delivery status notification is doing so in response to errors

it received from a remote SMTP server.

As such, remote servers need a mechanism for embedding enhanced

status codes in their responses as well as a way to indicate to a

client when they are in fact doing this. This memo uses the SMTP

extension mechanism described in RFC1869 to define such a mechanism.

3. Framework for the Enhanced Error Statuses Extension

The enhanced error statuses transport extension is laid out as

follows:

(1) the name of the SMTP service extension defined here is

Enhanced-Status-Codes;

(2) the EHLO keyWord value associated with the extension is

ENHANCEDSTATUSCODES;

(3) no parameter is used with the ENHANCEDSTATUSCODES EHLO

keyword;

(4) the text part of all 2xx, 4xx, and 5xx SMTP responses

other than the initial greeting and any response to

HELO or EHLO are prefaced with a status code as defined

in RFC1893. This status code is always followed by one

or more spaces.

(5) no additional SMTP verbs are defined by this extension;

and,

(6) the next section specifies how support for the

extension affects the behavior of a server and client

SMTP.

4. The Enhanced-Status-Codes service extension

Servers supporting the Enhanced-Status-Codes extension must preface

the text part of almost all response lines with a status code. As in

RFC1893, the syntax of these status codes is given by the ABNF:

status-code ::= class "." subject "." detail

class ::= "2" / "4" / "5"

subject ::= 1*3digit

detail ::= 1*3digit

These codes must appear in all 2xx, 4xx, and 5xx response lines other

than initial greeting and any response to HELO or EHLO. Note that 3xx

responses are NOT included in this list.

All status codes returned by the server must agree with the primary

response code, that is, a 2xx response must incorporate a 2.X.X code,

a 4xx response must incorporate a 4.X.X code, and a 5xx response must

incorporate a 5.X.X code.

When responses are continued across multiple lines the same status

code must appear at the beginning of the text in each line of the

response.

Servers supporting this extension must attach enhanced status codes

to their responses regardless of whether or not EHLO is employed by

the client.

5. Status Codes and Negotiation

This specification does not provide a means for clients to request

that status codes be returned or that they not be returned; a

compliant server includes these codes in the responses it sends

regardless of whether or not the client expects them. This is

somewhat different from most other SMTP extensions, where generally

speaking a client must specifically make a request before the

extended server behaves any differently than an unextended server.

The omission of client negotiation in this case is entirely

intentional: Given the generally poor state of SMTP server error code

implementation it is felt that any step taken towards more

comprehensible error codes is something that all clients, extended or

not, should benefit from.

IMPORTANT NOTE: The use of this approach in this extension should be

seen as a very special case. It MUST NOT be taken as a license for

future SMTP extensions to dramatically change the nature of SMTP

client-server interaction without proper announcement from the server

and a corresponding enabling command from the client.

6. Usage Example

The following dialogue illustrates the use of enhanced status codes

by a server:

S: <wait for connection on TCP port 25>

C: <open connection to server>

S: 220 dbc.mtview.ca.us SMTP service ready

C: EHLO ymir.claremont.edu

S: 250-dbc.mtview.ca.us says hello

S: 250 ENHANCEDSTATUSCODES

C: MAIL FROM:<ned@ymir.claremont.edu>

S: 250 2.1.0 Originator <ned@ymir.claremont.edu> ok

C: RCPT TO:<mrose@dbc.mtview.ca.us>

S: 250 2.1.5 Recipient <mrose@dbc.mtview.ca.us> ok

C: RCPT TO:<nosuchuser@dbc.mtview.ca.us>

S: 550 5.1.1 Mailbox "nosuchuser" does not exist

C: RCPT TO:<remoteuser@isi.edu>

S: 551-5.7.1 Forwarding to remote hosts disabled

S: 551 5.7.1 Select another host to act as your forwarder

C: DATA

S: 354 Send message, ending in CRLF.CRLF.

...

C: .

S: 250 2.6.0 Message accepted

C: QUIT

S: 221 2.0.0 Goodbye

The client that receives these responses might then send a

nondelivery notification of the general form:

Date: Mon, 11 Mar 1996 09:21:47 -0400

From: Mail Delivery Subsystem <mailer-daemon@ymir.claremont.edu>

Subject: Returned mail

To: <ned@ymir.claremont.edu>

MIME-Version: 1.0

Content-Type: multipart/report; report-type=delivery-status;

boundary="JAA13167.773673707/YMIR.CLAREMONT.EDU"

--JAA13167.773673707/YMIR.CLAREMONT.EDU

content-type: text/plain; charset=us-ascii

----- Mail was successfully relayed to

the following addresses -----

<mrose@dbc.mtview.ca.us>

----- The following addresses had delivery problems -----

<nosuchuser@dbc.mtview.ca.us>

(Mailbox "nosuchuser" does not exist)

<remoteuser@isi.edu>

(Forwarding to remote hosts disabled)

--JAA13167.773673707/YMIR.CLAREMONT.EDU

content-type: message/delivery-status

Reporting-MTA: dns; ymir.claremont.edu

Original-Recipient: rfc822;mrose@dbc.mtview.ca.us

Final-Recipient: rfc822;mrose@dbc.mtview.ca.us

Action: relayed

Status: 2.1.5 (Destination address valid)

Diagnostic-Code: smtp;

250 Recipient <mrose@dbc.mtview.ca.us> ok

Remote-MTA: dns; dbc.mtview.ca.us

Original-Recipient: rfc822;nosuchuser@dbc.mtview.ca.us

Final-Recipient: rfc822;nosuchuser@dbc.mtview.ca.us

Action: failed

Status: 5.1.1 (Bad destination mailbox address)

Diagnostic-Code: smtp;

550 Mailbox "nosuchuser" does not exist

Remote-MTA: dns; dbc.mtview.ca.us

Original-Recipient: rfc822;remoteuser@isi.edu

Final-Recipient: rfc822;remoteuser@isi.edu

Action: failed

Status: 5.7.1 (Delivery not authorized, message refused)

Diagnostic-Code: smtp;

551 Forwarding to remote hosts disabled

Select another host to act as your forwarder

Remote-MTA: dns; dbc.mtview.ca.us

--JAA13167.773673707/YMIR.CLAREMONT.EDU

content-type: message/rfc822

[original message goes here]

--JAA13167.773673707/YMIR.CLAREMONT.EDU--

Note that in order to reduce clutter the reporting MTA has omitted

enhanced status code information from the diagnostic-code fields it

has generated.

7. Security Considerations

Additional detail in server responses axiomatically provides

additional information about the server. It is conceivable that

additional information of this sort may be of assistance in

circumventing server security. The advantages of provides additional

information must always be weighed against the security implications

of doing so.

8. References

[RFC-821]

Postel, J., "Simple Mail Transfer Protocol", RFC821,

August, 1982. (August, 1982).

[RFC-1869]

Rose, M., Stefferud, E., Crocker, C., Klensin, J., Freed,

N., "SMTP Service Extensions", RFC1869, November, 1995.

[RFC-1893]

Vaudreuil, G., "Enhanced Mail System Status Codes", RFC

1893, January, 1996.

[RFC-1894]

Moore, K., Vaudreuil, G., "An Extensible Message Format

for Delivery Status Notifications", RFC1894, January,

1996.

9. Author Address

Ned Freed

Innosoft International, Inc.

1050 East Garvey Avenue South

West Covina, CA 91790

USA

tel: +1 818 919 3600 fax: +1 818 919 3614

email: ned@innosoft.com

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有