Postfix official version 1.1 patch 11 brings only low-priority fixes. New features are tested in Postfix snapshot releases. The official release changes only as the result of bug/portability fixes. - The Postfix sendmail command did not export the MAIL_CONFIG environment setting to the postdrop command, causing problems when sending mail to specific Postfix instances. - The SMTP server now disallows RCPT TO:<"">, just like it disallows RCPT TO:<>. - Mailbox-Line: message header labels should be X-Mailbox-Line: labels (these are inserted for Sendmail compatibility, when mail from the network starts with a From_ line). - Replaced domain.name by domain.tld in the example config files and documentation. Prereq: "1.1.10" diff -cr /tmp/postfix-1.1.10/src/global/mail_version.h ./src/global/mail_version.h *** /tmp/postfix-1.1.10/src/global/mail_version.h Tue May 14 18:29:09 2002 --- ./src/global/mail_version.h Tue May 28 20:43:34 2002 *************** *** 21,34 **** * release date only, unless they include the same bugfix as a patch release. */ #define VAR_MAIL_VERSION "mail_version" ! #define DEF_MAIL_VERSION "1.1.10" extern char *var_mail_version; /* * Release date. */ #define VAR_MAIL_RELEASE "mail_release_date" ! #define DEF_MAIL_RELEASE "20020514" extern char *var_mail_release; /* LICENSE --- 21,34 ---- * release date only, unless they include the same bugfix as a patch release. */ #define VAR_MAIL_VERSION "mail_version" ! #define DEF_MAIL_VERSION "1.1.11" extern char *var_mail_version; /* * Release date. */ #define VAR_MAIL_RELEASE "mail_release_date" ! #define DEF_MAIL_RELEASE "20020528" extern char *var_mail_release; /* LICENSE diff -cr /tmp/postfix-1.1.10/HISTORY ./HISTORY *** /tmp/postfix-1.1.10/HISTORY Tue May 14 18:26:38 2002 --- ./HISTORY Tue May 28 16:59:20 2002 *************** *** 6313,6318 **** --- 6313,6336 ---- with "resolve_dequoted_address = no"). Victor Duchovny, Morgan Stanley. File: smtpd/smtpd_check.c. + 20020517 + + Cleanup: Mailbox-Line: message header labels should be + X-Mailbox-Line: labels. Files: smtpd/smtpd.c, qmqpd/qmqpd.c. + + 20020526 + + Bugfix: the SMTP server now disallows RCPT TO:<"">, just + like it disallows RCPT TO:<>. File: smtpd/smtpd.c. + + Documentation: replace domain.name by domain.tld in the + example config files. The domain exists. They were getting + mail from poorly configured Postfix boxes. + + Bugfix: The Postfix sendmail command did not export the + MAIL_CONFIG environment setting to the postdrop command. + File: global/mail_config.h. + Open problems: Low: sendmail does not store null command-line recipients. diff -cr /tmp/postfix-1.1.10/INSTALL ./INSTALL *** /tmp/postfix-1.1.10/INSTALL Mon Feb 4 15:21:10 2002 --- ./INSTALL Tue May 28 17:26:29 2002 *************** *** 300,306 **** In the /etc/postfix/main.cf file, I would specify ! myhostname = virtual.host.name inet_interfaces = $myhostname mydestination = $myhostname --- 300,306 ---- In the /etc/postfix/main.cf file, I would specify ! myhostname = virtual.host.tld inet_interfaces = $myhostname mydestination = $myhostname *************** *** 386,392 **** a parameter value until it is needed at runtime. First of all, you must specify what domain will be appended to an ! unqualified address (i.e. an address without @domain.name). The "myorigin" parameter defaults to the local hostname, but that is probably OK only for very small sites. --- 386,392 ---- a parameter value until it is needed at runtime. First of all, you must specify what domain will be appended to an ! unqualified address (i.e. an address without @domain.tld). The "myorigin" parameter defaults to the local hostname, but that is probably OK only for very small sites. diff -cr /tmp/postfix-1.1.10/README_FILES/ETRN_README ./README_FILES/ETRN_README *** /tmp/postfix-1.1.10/README_FILES/ETRN_README Fri Oct 27 16:00:01 2000 --- ./README_FILES/ETRN_README Tue May 28 17:25:35 2002 *************** *** 77,83 **** Telnet to the Postfix SMTP server from a client that is allowed to execute ETRN commands (by default, that's every client), and type: ! helo my.client.name etrn some.customer.domain where "some.customer.domain" is the name of a domain that has a --- 77,83 ---- Telnet to the Postfix SMTP server from a client that is allowed to execute ETRN commands (by default, that's every client), and type: ! helo my.client.tld etrn some.customer.domain where "some.customer.domain" is the name of a domain that has a *************** *** 99,105 **** to relay to (domain listed in "relay_domains"), but that has no mail queued. ! helo my.client.name etrn some.other.customer.domain This time, the "etrn" command should trigger NO mail deliveries at --- 99,105 ---- to relay to (domain listed in "relay_domains"), but that has no mail queued. ! helo my.client.tld etrn some.other.customer.domain This time, the "etrn" command should trigger NO mail deliveries at *************** *** 110,116 **** server is not willing to relay to. It does not matter if your server has mail queued for that destination. ! helo my.client.name etrn not.a.customer.domain If your "fast ETRN" caching policy is left at its default setting, --- 110,116 ---- server is not willing to relay to. It does not matter if your server has mail queued for that destination. ! helo my.client.tld etrn not.a.customer.domain If your "fast ETRN" caching policy is left at its default setting, diff -cr /tmp/postfix-1.1.10/README_FILES/FILTER_README ./README_FILES/FILTER_README *** /tmp/postfix-1.1.10/README_FILES/FILTER_README Tue Mar 26 16:40:31 2002 --- ./README_FILES/FILTER_README Tue May 28 17:25:35 2002 *************** *** 213,219 **** localhost:10026 inet n - n - 10 smtpd -o content_filter= -o local_recipient_maps= ! -o myhostname=localhost.domain.name This is just another SMTP server. It is configured NOT to request content filtering for incoming mail. The server has the same process --- 213,219 ---- localhost:10026 inet n - n - 10 smtpd -o content_filter= -o local_recipient_maps= ! -o myhostname=localhost.domain.tld This is just another SMTP server. It is configured NOT to request content filtering for incoming mail. The server has the same process diff -cr /tmp/postfix-1.1.10/README_FILES/INSTALL ./README_FILES/INSTALL *** /tmp/postfix-1.1.10/README_FILES/INSTALL Mon Feb 4 15:21:10 2002 --- ./README_FILES/INSTALL Tue May 28 17:25:35 2002 *************** *** 300,306 **** In the /etc/postfix/main.cf file, I would specify ! myhostname = virtual.host.name inet_interfaces = $myhostname mydestination = $myhostname --- 300,306 ---- In the /etc/postfix/main.cf file, I would specify ! myhostname = virtual.host.tld inet_interfaces = $myhostname mydestination = $myhostname *************** *** 386,392 **** a parameter value until it is needed at runtime. First of all, you must specify what domain will be appended to an ! unqualified address (i.e. an address without @domain.name). The "myorigin" parameter defaults to the local hostname, but that is probably OK only for very small sites. --- 386,392 ---- a parameter value until it is needed at runtime. First of all, you must specify what domain will be appended to an ! unqualified address (i.e. an address without @domain.tld). The "myorigin" parameter defaults to the local hostname, but that is probably OK only for very small sites. diff -cr /tmp/postfix-1.1.10/README_FILES/LMTP_README ./README_FILES/LMTP_README *** /tmp/postfix-1.1.10/README_FILES/LMTP_README Mon Jan 14 10:00:11 2002 --- ./README_FILES/LMTP_README Tue May 28 17:25:35 2002 *************** *** 265,272 **** /etc/postfix/transport: ! domain1.name lmtp1:unix:/path/name ! domain2.name lmtp2:lmtp2host /etc/postfix/master.cf: --- 265,272 ---- /etc/postfix/transport: ! domain1.tld lmtp1:unix:/path/name ! domain2.tld lmtp2:lmtp2host /etc/postfix/master.cf: *************** *** 466,473 **** /etc/postfix/transport: ! domain1.name lmtp1:lmtp1host ! domain2.name lmtp2:lmtp2host /etc/postfix/master.cf: --- 466,473 ---- /etc/postfix/transport: ! domain1.tld lmtp1:lmtp1host ! domain2.tld lmtp2:lmtp2host /etc/postfix/master.cf: diff -cr /tmp/postfix-1.1.10/README_FILES/SASL_README ./README_FILES/SASL_README *** /tmp/postfix-1.1.10/README_FILES/SASL_README Sat May 26 12:32:47 2001 --- ./README_FILES/SASL_README Tue May 28 17:25:35 2002 *************** *** 144,152 **** To test the whole mess, connect to the SMTP server, and you should be able to have a conversation like this: ! 220 server.host.name ESMTP Postfix ! EHLO client.host.name ! 250-server.host.name 250-PIPELINING 250-SIZE 10240000 250-ETRN --- 144,152 ---- To test the whole mess, connect to the SMTP server, and you should be able to have a conversation like this: ! 220 server.host.tld ESMTP Postfix ! EHLO client.host.tld ! 250-server.host.tld 250-PIPELINING 250-SIZE 10240000 250-ETRN diff -cr /tmp/postfix-1.1.10/README_FILES/VIRTUAL_README ./README_FILES/VIRTUAL_README *** /tmp/postfix-1.1.10/README_FILES/VIRTUAL_README Tue Jan 22 09:42:32 2002 --- ./README_FILES/VIRTUAL_README Tue May 28 17:25:35 2002 *************** *** 270,280 **** virtual_maps = hash:/etc/postfix/virtual /etc/postfix/virtual: ! user@domain.name user@domain.name, user@autoreply.domain.name This delivers mail to the recipient, and sends a copy of the mail to the address that produces automatic replies. The address can be serviced on a different machine, or it can be serviced locally by setting up a transport map entry that pipes all mail for the ! autoreply.domain.name into some script that sends an automatic reply back to the sender. --- 270,280 ---- virtual_maps = hash:/etc/postfix/virtual /etc/postfix/virtual: ! user@domain.tld user@domain.tld, user@autoreply.domain.tld This delivers mail to the recipient, and sends a copy of the mail to the address that produces automatic replies. The address can be serviced on a different machine, or it can be serviced locally by setting up a transport map entry that pipes all mail for the ! autoreply.domain.tld into some script that sends an automatic reply back to the sender. diff -cr /tmp/postfix-1.1.10/conf/access ./conf/access *** /tmp/postfix-1.1.10/conf/access Mon May 13 15:40:40 2002 --- ./conf/access Tue May 28 17:01:17 2002 *************** *** 53,68 **** # user@domain # Matches the specified mail address. # ! # domain.name ! # Matches domain.name as the domain part of an email # address. # ! # The pattern domain.name also matches subdomains, ! # but only when the string smtpd_access_maps is ! # listed in the Postfix parent_domain_matches_subdo- ! # mains configuration setting. Otherwise, specify ! # .domain.name (note the initial dot) in order to ! # match subdomains. # # user@ Matches all mail addresses with the specified user # part. --- 53,68 ---- # user@domain # Matches the specified mail address. # ! # domain.tld ! # Matches domain.tld as the domain part of an email # address. # ! # The pattern domain.tld also matches subdomains, but ! # only when the string smtpd_access_maps is listed in ! # the Postfix parent_domain_matches_subdomains con- ! # figuration setting. Otherwise, specify .domain.tld ! # (note the initial dot) in order to match subdo- ! # mains. # # user@ Matches all mail addresses with the specified user # part. *************** *** 85,99 **** # networked tables such as NIS, LDAP or SQL, the following # lookup patterns are examined in the order as listed: # ! # domain.name ! # Matches domain.name. # ! # The pattern domain.name also matches subdomains, ! # but only when the string smtpd_access_maps is ! # listed in the Postfix parent_domain_matches_subdo- ! # mains configuration setting. Otherwise, specify ! # .domain.name (note the initial dot) in order to ! # match subdomains. # # net.work.addr.ess # --- 85,99 ---- # networked tables such as NIS, LDAP or SQL, the following # lookup patterns are examined in the order as listed: # ! # domain.tld ! # Matches domain.tld. # ! # The pattern domain.tld also matches subdomains, but ! # only when the string smtpd_access_maps is listed in ! # the Postfix parent_domain_matches_subdomains con- ! # figuration setting. Otherwise, specify .domain.tld ! # (note the initial dot) in order to match subdo- ! # mains. # # net.work.addr.ess # diff -cr /tmp/postfix-1.1.10/conf/main.cf ./conf/main.cf *** /tmp/postfix-1.1.10/conf/main.cf Mon Mar 25 15:09:24 2002 --- ./conf/main.cf Tue May 28 13:35:57 2002 *************** *** 65,79 **** # from gethostname(). $myhostname is used as a default value for many # other configuration parameters. # ! #myhostname = host.domain.name ! #myhostname = virtual.domain.name # The mydomain parameter specifies the local internet domain name. # The default is to use $myhostname minus the first component. # $mydomain is used as a default value for many other configuration # parameters. # ! #mydomain = domain.name # SENDING MAIL # --- 65,79 ---- # from gethostname(). $myhostname is used as a default value for many # other configuration parameters. # ! #myhostname = host.domain.tld ! #myhostname = virtual.domain.tld # The mydomain parameter specifies the local internet domain name. # The default is to use $myhostname minus the first component. # $mydomain is used as a default value for many other configuration # parameters. # ! #mydomain = domain.tld # SENDING MAIL # *************** *** 429,442 **** # # Postfix maintains per-destination logfiles with information about # deferred mail, so that mail can be flushed quickly with the SMTP ! # "ETRN domain.name" command, or by executing "sendmail -qRdomain.name". # # By default, Postfix maintains deferred mail logfile information # only for destinations that Postfix is willing to relay to (as # specified in the relay_domains parameter). For other destinations, # Postfix attempts to deliver ALL queued mail after receiving the ! # SMTP "ETRN domain.name" command, or after execution of "sendmail ! # -qRdomain.name". This can be slow when a lot of mail is queued. # # The fast_flush_domains parameter controls what destinations are # eligible for this "fast ETRN/sendmail -qR" service. --- 429,442 ---- # # Postfix maintains per-destination logfiles with information about # deferred mail, so that mail can be flushed quickly with the SMTP ! # "ETRN domain.tld" command, or by executing "sendmail -qRdomain.tld". # # By default, Postfix maintains deferred mail logfile information # only for destinations that Postfix is willing to relay to (as # specified in the relay_domains parameter). For other destinations, # Postfix attempts to deliver ALL queued mail after receiving the ! # SMTP "ETRN domain.tld" command, or after execution of "sendmail ! # -qRdomain.tld". This can be slow when a lot of mail is queued. # # The fast_flush_domains parameter controls what destinations are # eligible for this "fast ETRN/sendmail -qR" service. diff -cr /tmp/postfix-1.1.10/conf/sample-misc.cf ./conf/sample-misc.cf *** /tmp/postfix-1.1.10/conf/sample-misc.cf Mon May 13 17:45:26 2002 --- ./conf/sample-misc.cf Tue May 28 13:35:57 2002 *************** *** 196,209 **** # $mydomain is used as a default value for many other configuration # parameters. # ! #mydomain = domain.name # The myhostname parameter specifies the internet hostname of this # mail system. The default is to use the fully-qualified domain name # from gethostname(). $myhostname is used as a default value for many # other configuration parameters. # ! #myhostname = host.domain.name # The myorigin parameter specifies the domain that locally-posted # mail appears to come from. The default is to append $myhostname, --- 196,209 ---- # $mydomain is used as a default value for many other configuration # parameters. # ! #mydomain = domain.tld # The myhostname parameter specifies the internet hostname of this # mail system. The default is to use the fully-qualified domain name # from gethostname(). $myhostname is used as a default value for many # other configuration parameters. # ! #myhostname = host.domain.tld # The myorigin parameter specifies the domain that locally-posted # mail appears to come from. The default is to append $myhostname, *************** *** 273,282 **** error_notice_recipient = postmaster # The parent_domain_matches_subdomains parameter specifies what ! # Postfix features use "domain.name matches sub.domain.name" style ! # pattern matching instead of requiring ".domain.name". This is # planned backwards compatibility: eventually, all Postfix features ! # are expected to require ".domain.name" style patterns. # parent_domain_matches_subdomains = debug_peer_list,fast_flush_domains, mynetworks,permit_mx_backup_networks,qmqpd_authorized_clients, --- 273,282 ---- error_notice_recipient = postmaster # The parent_domain_matches_subdomains parameter specifies what ! # Postfix features use "domain.tld matches sub.domain.tld" style ! # pattern matching instead of requiring ".domain.tld". This is # planned backwards compatibility: eventually, all Postfix features ! # are expected to require ".domain.tld" style patterns. # parent_domain_matches_subdomains = debug_peer_list,fast_flush_domains, mynetworks,permit_mx_backup_networks,qmqpd_authorized_clients, diff -cr /tmp/postfix-1.1.10/conf/transport ./conf/transport *** /tmp/postfix-1.1.10/conf/transport Fri Jan 25 09:52:44 2002 --- ./conf/transport Tue May 28 17:01:17 2002 *************** *** 1,4 **** - # # TRANSPORT(5) TRANSPORT(5) # # NAME --- 1,3 ---- *************** *** 149,157 **** # command after a configuration change. # # parent_domain_matches_subdomains ! # List of Postfix features that use domain.name pat- ! # terns to match sub.domain.name (as opposed to ! # requiring .domain.name patterns). # # transport_maps # List of transport lookup tables. --- 148,156 ---- # command after a configuration change. # # parent_domain_matches_subdomains ! # List of Postfix features that use domain.tld pat- ! # terns to match sub.domain.tld (as opposed to ! # requiring .domain.tld patterns). # # transport_maps # List of transport lookup tables. *************** *** 182,186 **** # P.O. Box 704 # Yorktown Heights, NY 10598, USA # ! # 1 ! # --- 181,184 ---- # P.O. Box 704 # Yorktown Heights, NY 10598, USA # ! # TRANSPORT(5) diff -cr /tmp/postfix-1.1.10/html/access.5.html ./html/access.5.html *** /tmp/postfix-1.1.10/html/access.5.html Mon Apr 1 08:15:19 2002 --- ./html/access.5.html Tue May 28 17:01:18 2002 *************** *** 54,69 **** user@domain Matches the specified mail address. ! domain.name ! Matches domain.name as the domain part of an email address. ! The pattern domain.name also matches subdomains, ! but only when the string smtpd_access_maps is ! listed in the Postfix parent_domain_matches_subdo- ! mains configuration setting. Otherwise, specify ! .domain.name (note the initial dot) in order to ! match subdomains. user@ Matches all mail addresses with the specified user part. --- 54,69 ---- user@domain Matches the specified mail address. ! domain.tld ! Matches domain.tld as the domain part of an email address. ! The pattern domain.tld also matches subdomains, but ! only when the string smtpd_access_maps is listed in ! the Postfix parent_domain_matches_subdomains con- ! figuration setting. Otherwise, specify .domain.tld ! (note the initial dot) in order to match subdo- ! mains. user@ Matches all mail addresses with the specified user part. *************** *** 86,100 **** networked tables such as NIS, LDAP or SQL, the following lookup patterns are examined in the order as listed: ! domain.name ! Matches domain.name. ! The pattern domain.name also matches subdomains, ! but only when the string smtpd_access_maps is ! listed in the Postfix parent_domain_matches_subdo- ! mains configuration setting. Otherwise, specify ! .domain.name (note the initial dot) in order to ! match subdomains. net.work.addr.ess --- 86,100 ---- networked tables such as NIS, LDAP or SQL, the following lookup patterns are examined in the order as listed: ! domain.tld ! Matches domain.tld. ! The pattern domain.tld also matches subdomains, but ! only when the string smtpd_access_maps is listed in ! the Postfix parent_domain_matches_subdomains con- ! figuration setting. Otherwise, specify .domain.tld ! (note the initial dot) in order to match subdo- ! mains. net.work.addr.ess diff -cr /tmp/postfix-1.1.10/html/basic.html ./html/basic.html *** /tmp/postfix-1.1.10/html/basic.html Fri Apr 6 12:32:44 2001 --- ./html/basic.html Tue May 28 17:25:02 2002 *************** *** 410,416 ****
DNS: ! the.backed-up.domain.name IN MX 100 your.machine.name /etc/postfix/main.cf: ! relay_domains = $mydestination the.backed-up.domain.name smtpd_recipient_restrictions = permit_mynetworks check_relay_domains--- 1748,1757 ----
DNS: ! the.backed-up.domain.tld IN MX 100 your.machine.tld /etc/postfix/main.cf: ! relay_domains = $mydestination the.backed-up.domain.tld smtpd_recipient_restrictions = permit_mynetworks check_relay_domains*************** *** 1767,1773 **** transport_maps = hash:/etc/postfix/transport /etc/postfix/transport: ! the.backed-up.domain.name smtp:[their.mail.host.name]
--- 1767,1773 ---- transport_maps = hash:/etc/postfix/transport /etc/postfix/transport: ! the.backed-up.domain.tld smtp:[their.mail.host.tld]
*************** *** 2208,2221 ****
/etc/postfix/main.cf: ! myorigin = domain.name
--- 2208,2221 ----
/etc/postfix/main.cf: ! myorigin = domain.tld
***************
*** 2720,2726 ****
Postfix logs delivery to virtual
address with the wrong name
! When Postfix delivers mail for a virtual address vuser@vdomain.name
that is aliased to a local user, then Postfix logs the local username
instead of the virtual one.
--- 2720,2726 ----
Postfix logs delivery to virtual
address with the wrong name
! When Postfix delivers mail for a virtual address vuser@vdomain.tld
that is aliased to a local user, then Postfix logs the local username
instead of the virtual one.
***************
*** 2743,2757 ****
recipient_delimiter = +
/etc/postfix/virtual_regexp:
! /^vdomain\.name$/ whatever
! /(.*)@vdomain\.name$/ localuser+$1=vdomain.name
This delivers the mail as ! localuser+vuser=vdomain.name@your.domain.
This delivers the mail as ! localuser+vuser=vdomain.tld@your.domain.
- TRANSPORT(5) TRANSPORT(5) NAME --- 1,4 ---- *************** *** 150,158 **** command after a configuration change. parent_domain_matches_subdomains ! List of Postfix features that use domain.name pat- ! terns to match sub.domain.name (as opposed to ! requiring .domain.name patterns). transport_maps List of transport lookup tables. --- 149,157 ---- command after a configuration change. parent_domain_matches_subdomains ! List of Postfix features that use domain.tld pat- ! terns to match sub.domain.tld (as opposed to ! requiring .domain.tld patterns). transport_maps List of transport lookup tables. *************** *** 183,188 **** P.O. Box 704 Yorktown Heights, NY 10598, USA ! 1 !--- 182,186 ---- P.O. Box 704 Yorktown Heights, NY 10598, USA ! TRANSPORT(5)