Hello

It appears that Postfix considers addresses beginning with a dash as
invalid:

----8<----
cob...@iridium:~ $ telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 iridium.planetcobalt.net ESMTP
helo planetcobalt.net
250 iridium.planetcobalt.net
mail from:<-...@planetcobalt.net>
501 5.1.7 Bad sender address syntax
mail from:<a...@planetcobalt.net>
250 2.1.0 Ok
quit
221 2.0.0 Bye
Connection closed by foreign host.
---->8----

However, if I understand RFC 2822 correctly, '-' is a valid character
even at the beginning of an address:

  local-part    = dot-atom / quoted-string / obs-local-part
  dot-atom      = [CFWS] dot-atom-text [CFWS]
  dot-atom-text = 1*atext *("." 1*atext)
  atext         = ALPHA / DIGIT / "!" / "#" / "$" / "%" / "&" / "'" /
                  "*" / "+" / "-" / "/" / "=" / "?" / "^" / "_" / "`" /
                  "{" / "|" / "}" / "~"

Is this a bug, or did I miss something?

My config is:

----8<----
r...@iridium:~ # postconf -n
alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
append_dot_mydomain = no
biff = no
config_directory = /etc/postfix
delay_warning_time = 4h
header_checks = pcre:/etc/postfix/header_checks
inet_interfaces = all
inet_protocols = ipv4
local_recipient_maps = $alias_maps
mailbox_command = procmail -a "$EXTENSION"
mailbox_size_limit = 0
message_size_limit = 0
mydestination = /etc/postfix/mydestination
myhostname = iridium.planetcobalt.net
mynetworks = 127.0.0.0/8
myorigin = /etc/mailname
recipient_delimiter = +
smtp_enforce_tls = no
smtp_host_lookup = dns, native
smtp_tls_CAfile = /etc/ssl/certs/ca.crt
smtp_use_tls = yes
smtpd_banner = $myhostname ESMTP
smtpd_client_restrictions =
smtpd_data_restrictions = reject_unauth_pipelining,  permit
smtpd_delay_reject = yes
smtpd_helo_required = yes
smtpd_helo_restrictions = reject_invalid_hostname
smtpd_recipient_restrictions = permit_mynetworks,  permit_sasl_authenticated,  
reject_unauth_destination,  reject_non_fqdn_recipient,  
reject_unknown_recipient_domain,  check_sender_access 
hash:/etc/postfix/check_bounce_sender,  check_sender_access 
hash:/etc/postfix/sender_blacklist,  check_policy_service inet:127.0.0.1:12525
smtpd_restriction_classes = cobalt_blacklist check_bounce_recipient
smtpd_sender_restrictions = reject_unknown_sender_domain,  
reject_non_fqdn_sender,  check_sender_access hash:/etc/postfix/sender_access
virtual_alias_domains = /etc/postfix/virtual_domains
virtual_alias_maps = hash:/etc/postfix/virtual
---->8----

Regards
Ansgar Wiechers
-- 
"Abstractions save us time working, but they don't save us time learning."
--Joel Spolsky

Reply via email to