ietf-smtp
[Top] [All Lists]

retry=min/max syntax

2011-10-25 19:01:06

Frank Ellermann wrote:
On 25 October 2011 19:28, Hector wrote:

I am not expert with ABNF language. Can you tell
me what would be is correct here?

Better, I can tell you how I'd check it:  Visit the
page <URL:http://www.fenron.com/~fenner/abnf.cgi>.
In the form enter...

Oh COOL!

retrytime  = "retry=" min-secs ["-" max-secs]

min-secs   = 1*digits   ; minimum blocking time
max-secs   = 1*digits   ; optional retry expiration

Makes sense if the server has a plan *when* it intends
to purge pending triplets.  And <max-secs> certainly
could need more than 6 digits; and my suggestion that
6 digits fit into an ushort works only in a parallel
universe with "ternary bits" where they'll use Ipv4
forever squeezing three digits 0, 1, and "" (void) in
a single bit...

-Frank (needs more coffee)

Me too. :)

We could make it hex! This seem to be accepted by the ABNF tester. Open Suggestion only of supporting a 2nd retry=min/max format.

Reply-Line  = ( Reply-Code [ SP textstring [SP retrytime] ] CRLF ) /
                 ( Reply-Code "-" [ SP textstring ] CRLF
                   *( Reply-Code "-" [ SP textstring ] CRLF )
                   Reply-Code [ SP textstring [SP retrytime ] ] CRLF )

textstring  = 1*(%x09 / %x20-7E) ; HT, SP, Printable US-ASCII
retrytime   = ( "retry=" [days "-"] hours ":" minutes ":" seconds ) /
              ( "retry="  blocktime ["/" expiretime ] )
days        = 2DIGIT   ; 00-99
hours       = 2DIGIT   ; 00-23
minutes     = 2DIGIT   ; 00-59
seconds     = 2DIGIT   ; 00-59
blocktime   = 8*HEXDGT ; blocking time in secs
expiretime  = 8*HEXDGT ; optional expire time in secs
Reply-Code  = "421" / "450" / "451"

--
HLS