medzera v adrese
Dan Lukes
dan na obluda.cz
Sobota Červen 29 03:28:19 CEST 2002
Peter Mann wrote:
>>podla rfc821 sa mi zdalo, ze by to malo byt mozne, avsak neviem to
>>nastavit vo virtusertable.
> podla mna sa to neda, urcite sa najde niekto, kto prida aj patricnu cast
> z RFC ... btw rfc821 je nahradene novym rfc2821
Vidim, ze ty citace zustanou na me ... ;-)
Vybiram samozrejme jen pro nas pripad relevantni cast.
RFC2821:
Local-part = Dot-string / Quoted-string
Dot-string = Atom *("." Atom)
Atom = 1*atext
Quoted-string = DQUOTE *qcontent DQUOTE
Pro zbytek definic ale musime sahnout uz jinam - do RFC2822:
atext = ALPHA / DIGIT / ; Any character except controls,
"!" / "#" / ; SP, and specials.
"$" / "%" / ; Used for atoms
"&" / "'" /
"*" / "+" /
"-" / "/" /
"=" / "?" /
"^" / "_" /
"`" / "{" /
"|" / "}" /
"~"
qcontent = qtext / quoted-pair
quoted-pair = ("\" text) / obs-qp
qtext = NO-WS-CTL / ; Non white space controls
%d33 / ; The rest of the US-ASCII
%d35-91 / ; characters not including "\"
%d93-126 ; or the quote character
DQUOTE, ASCII value 34 (")
NO-WS-CTL = %d1-8 / ; US-ASCII control characters
%d11 / ; that do not include the
%d12 / ; carriage return, line feed,
%d14-31 / ; and white space characters
%d127
text = %d1-9 / ; Characters excluding CR and LF
%d11 /
%d12 /
%d14-127 /
obs-text
Navzdory tomu, ze formalni specifikace takove veci dovoluje, v textu
odstavce 4.1.2 je explicitne zakazano definovat mailboxy obsahujici
kontrolni znaky tj. 1-31 a 127.
Takze, bud adresu uzavreme do uvozovek (varianta "quoted-string") - pak
muze obsahovat ASCII pocinaje mezerou (32) a konce "~" (126) s tim, ze
v uvozovkach je nutne backlash a samotne uvozovky quotovat backslashem.
Nicmene, text 4.1.2 dale odrazuje (SHOULD NOT) od pouzivani takovych
jmen, ktera vyzaduji zapis pomoci uvozovek, takze pokud budeme
respektovat toto omezeni musime si vystacit s variantou "dot-string" a
ta nam oproti predchozi variante nedovoluje pouzit znaky "(),:;<>@[\] -
a krome nich ani mezeru.
Jen na okraj bych podotkl, ze definice emailovych adres tak, jak ji
definuje RFC2822 je daleko sirsi (ta totiz v uvozovkach povoluje uplne
vsechny US-ASCII znaky vcetne konmtrolnich krome NUL) a tak tedy
existuje cela velka trida emailovych adres, ktere jsou sice regulernimi
adresami, ale ktere nelze vubec prenest pomoci (E)SMTP ...
------------
Vratim-li se tedy od teorie zpet k praxi - zkuste quotovany zapis bez
uvozovek, tedy
Janko\ Hrasko na domena.cz
nicmene je take docela dobre mozne, ze s ohledem na zminene "SHOULD NOT"
proste virtusertable takovy format vubec nebude podporovat, protoze
takovouhle adresu proste vubec nemate mit ...
Dan
--
Dan Lukes, SISAL, MFF UK tel: +420 2 21914205, fax: +420 2 21914206
AKA: dan na obluda.cz, dan na freebsd.cz, dan na kolej.mff.cuni.cz, dan na fio.cz
Další informace o konferenci Sendmail