DeliverByMin

DeliverByMin

Set default DELIVERBY interval V8.12 and later

RFC2852 defines a way to ensure that a message is delivered or bounced within a defined maximum window of time. This method is known as the DELIVERBY SMTP extension and is used like the following (shown in bold):

 220 your.host.domain ESMTP Sendmail 8.12.7/8.12.7; Fri, 13 Dec 2002 10:09:06 -0600  (MDT) EHLO another.host.domain 250-your.host.domain Hello another.host.domain [123.45.67.8], pleased to meet you 250-ENHANCEDSTATUSCODES 250-PIPELINING 250-8BITMIME 250-SIZE 250-DSN 250-ETRN  250-DELIVERBY    note  250 HELP MAIL From:<bob@another.host.domain>  BY=600;R    note  250 2.1.0 <bob@another.host.domain>... Sender ok 

Here, your site tells the connecting site that it supports the DELIVERBY SMTP extension by displaying the 250-DELIVERBY line. Then the other site recognizes that support and says that it wants the message delivered within 600 seconds by including the BY=600;R as part of the envelope sender MAIL FROM: command.

The ;R tells your server to not relay this message to a site that does not support this extension. The only possibility, other than ;R , is a ;N , which means the message can be relayed to another site, regardless of whether that other site supports this extension.

It is possible to run software or a configuration at your site in such a way that mail cannot be immediately delivered. If you screen all messages for viruses, for example, or if you queue all inbound mail and deliver from the queue, you will likely not be able to guarantee immediate delivery. In such instances, you are required to advertise the size of that delay. You advertise such delays by adding an argument to the SMTP DELIVERBY command:

 250-DELIVERBY 300 

Here, you advertise that you cannot guarantee delivery in less than 300 seconds (5 minutes), perhaps because you queue all inbound mail and process the queue only once each five minutes. If a message arrives with a requirement that it be delivered within 250 seconds:

 MAIL From: <bob@another.host.domain> BY=250;R 

it would bounce because your site said it could not honor such a narrow window of delivery time.

The way your advertise your minimum delivery time is with the DeliverByMin option, which is declared like this:

 O DeliverByMin=  mintime    configuration file (V8.12 and later)  -ODeliverByMin=  mintime    command line (V8.12 and later)  define(`confDELIVER_BY_MIN',`  mintime')    mc configuration (V8.12 and later)  

Here, mintime is of type time . If mintime is negative, the DELIVERBY extension is not offered . If mintime is zero (the default), the DELIVERBY SMTP extension is offered, but no minimum is stated. If mintime is greater than zero, the DELIVERBY SMTP extension is offered and your minimum is stated. Note that no command-line switches are available to cause sendmail to include a BY= in the MAIL FROM: command.

Whenever mail is propagated with a BY= , the receiving site will subtract the time it takes to deliver or relay the message from the value specified by the BY= . If the difference is negative, the message is bounced. If the difference is positive, the new (smaller) value is passed to the next site using a new BY= showing that new value. The process continues until the message is delivered, or until a site in the chain requires more than the BY= interval to deliver or relay the message, at which point the message is bounced.

The DeliveryByMin option is not safe. If specified from the command line, it can cause sendmail to relinquish its special privileges.



Sendmail
sendmail, 4th Edition
ISBN: 0596510292
EAN: 2147483647
Year: 2002
Pages: 1174

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net