code. Files: cleanup/cleanup_rewrite.c, cleanup/cleanup_map11.c,
cleanup/cleanup_masquerade.c, cleanup/cleanup_message.c..
+20050215
+
+ Bugfix: don't chmod queue files while running "postfix
+ set-permissions". This avoids mail inadvertantly being
+ labeled as "corrupt" when a live Postfix system is upgraded.
+ Found by Victor Duchovni. File: conf/post-install.
+
+20050216
+
+ Feature: in smtpd?_discard_ehlo_keyword(s|_address_maps)
+ specify the pseudo keyword "silent-discard" in order to
+ avoid logging that some EHLO keyword is being suppressed.
+ File: global/ehlo_mask.[hc].
+
Open problems:
Med: disable header address rewriting after XCLIENT?
test -n "$set_permission" && {
chown $recursive $owner $path || exit 1
test -z "$group" || chgrp $recursive $group $path || exit 1
- chmod $recursive $mode $path || exit 1
+ if [ "$type" = "d" -a -n "$recursive" ]
+ then
+ find $path -type d -exec chmod $mode "{}" ";"
+ else
+ chmod $mode $path
+ fi || exit 1
}
done
IFS="$BACKUP_IFS"
or daemon. PLEASE USE A DEDICATED USER ID AND GROUP ID.
</p>
+<p>
+When this parameter value is changed you need to re-run "<b>postfix
+set-permissions</b>" (with Postfix 2.0 and earlier:
+"<b>/etc/postfix/post-install set-permissions</b>".
+</p>
+
</DD>
<p> Lookup tables, indexed by the remote SMTP server address, with
case insensitive lists of EHLO keywords (pipelining, starttls,
auth, etc.) that the SMTP client will ignore in the EHLO response
-from a remote SMTP server. </p>
+from a remote SMTP server. See <a href="postconf.5.html#smtp_discard_ehlo_keywords">smtp_discard_ehlo_keywords</a> for
+details. </p>
</DD>
<p> A case insensitive list of EHLO keywords (pipelining, starttls,
auth, etc.) that the SMTP client will ignore in the EHLO response
-from a remote SMTP server. Use the <a href="postconf.5.html#smtp_discard_ehlo_keyword_address_maps">smtp_discard_ehlo_keyword_address_maps</a>
-feature to discard EHLO keywords selectively. </p>
+from a remote SMTP server. Specify the pseudo keyword <b>silent-discard</b>
+to prevent this action from being logged. Use the
+<a href="postconf.5.html#smtp_discard_ehlo_keyword_address_maps">smtp_discard_ehlo_keyword_address_maps</a> feature to discard EHLO
+keywords selectively. </p>
</DD>
<p> Lookup tables, indexed by the remote SMTP client address, with
case insensitive lists of EHLO keywords (pipelining, starttls,
auth, etc.) that the SMTP server will not send in the EHLO response
-to a remote SMTP client. </p>
+to a remote SMTP client. See <a href="postconf.5.html#smtpd_discard_ehlo_keywords">smtpd_discard_ehlo_keywords</a> for details.
+</p>
</DD>
<p> A case insensitive list of EHLO keywords (pipelining, starttls,
auth, etc.) that the SMTP server will not send in the EHLO response
-to a remote SMTP client. Use the <a href="postconf.5.html#smtpd_discard_ehlo_keyword_address_maps">smtpd_discard_ehlo_keyword_address_maps</a>
-feature to discard EHLO keywords selectively. </p>
+to a remote SMTP client. Specify the pseudo keyword <b>silent-discard</b>
+to prevent this action from being logged. Use the
+<a href="postconf.5.html#smtpd_discard_ehlo_keyword_address_maps">smtpd_discard_ehlo_keyword_address_maps</a> feature to discard EHLO
+keywords selectively. </p>
</DD>
not share a group with other accounts and that owns no other files
or processes on the system. In particular, don't specify nobody
or daemon. PLEASE USE A DEDICATED USER ID AND GROUP ID.
+.PP
+When this parameter value is changed you need to re-run "\fBpostfix
+set-permissions\fR" (with Postfix 2.0 and earlier:
+"\fB/etc/postfix/post-install set-permissions\fR".
.SH mail_release_date (default: see "postconf -d" output)
The Postfix release date, in "YYYYMMDD" format.
.SH mail_spool_directory (default: see "postconf -d" output)
Lookup tables, indexed by the remote SMTP server address, with
case insensitive lists of EHLO keywords (pipelining, starttls,
auth, etc.) that the SMTP client will ignore in the EHLO response
-from a remote SMTP server.
+from a remote SMTP server. See smtp_discard_ehlo_keywords for
+details.
.SH smtp_discard_ehlo_keywords (default: empty)
A case insensitive list of EHLO keywords (pipelining, starttls,
auth, etc.) that the SMTP client will ignore in the EHLO response
-from a remote SMTP server. Use the smtp_discard_ehlo_keyword_address_maps
-feature to discard EHLO keywords selectively.
+from a remote SMTP server. Specify the pseudo keyword \fBsilent-discard\fR
+to prevent this action from being logged. Use the
+smtp_discard_ehlo_keyword_address_maps feature to discard EHLO
+keywords selectively.
.SH smtp_enforce_tls (default: no)
Enforcement mode: require that remote SMTP servers use TLS
encryption, and never send mail in the clear. This also requires
Lookup tables, indexed by the remote SMTP client address, with
case insensitive lists of EHLO keywords (pipelining, starttls,
auth, etc.) that the SMTP server will not send in the EHLO response
-to a remote SMTP client.
+to a remote SMTP client. See smtpd_discard_ehlo_keywords for details.
.SH smtpd_discard_ehlo_keywords (default: empty)
A case insensitive list of EHLO keywords (pipelining, starttls,
auth, etc.) that the SMTP server will not send in the EHLO response
-to a remote SMTP client. Use the smtpd_discard_ehlo_keyword_address_maps
-feature to discard EHLO keywords selectively.
+to a remote SMTP client. Specify the pseudo keyword \fBsilent-discard\fR
+to prevent this action from being logged. Use the
+smtpd_discard_ehlo_keyword_address_maps feature to discard EHLO
+keywords selectively.
.SH smtpd_end_of_data_restrictions (default: empty)
Optional access restrictions that the Postfix SMTP server
applies in the context of the SMTP END-OF-DATA command.
or daemon. PLEASE USE A DEDICATED USER ID AND GROUP ID.
</p>
+<p>
+When this parameter value is changed you need to re-run "<b>postfix
+set-permissions</b>" (with Postfix 2.0 and earlier:
+"<b>/etc/postfix/post-install set-permissions</b>".
+</p>
+
%PARAM mail_spool_directory see "postconf -d" output
<p>
<p> A case insensitive list of EHLO keywords (pipelining, starttls,
auth, etc.) that the SMTP client will ignore in the EHLO response
-from a remote SMTP server. Use the smtp_discard_ehlo_keyword_address_maps
-feature to discard EHLO keywords selectively. </p>
+from a remote SMTP server. Specify the pseudo keyword <b>silent-discard</b>
+to prevent this action from being logged. Use the
+smtp_discard_ehlo_keyword_address_maps feature to discard EHLO
+keywords selectively. </p>
%PARAM smtpd_discard_ehlo_keywords
<p> A case insensitive list of EHLO keywords (pipelining, starttls,
auth, etc.) that the SMTP server will not send in the EHLO response
-to a remote SMTP client. Use the smtpd_discard_ehlo_keyword_address_maps
-feature to discard EHLO keywords selectively. </p>
+to a remote SMTP client. Specify the pseudo keyword <b>silent-discard</b>
+to prevent this action from being logged. Use the
+smtpd_discard_ehlo_keyword_address_maps feature to discard EHLO
+keywords selectively. </p>
%PARAM smtp_discard_ehlo_keyword_address_maps
<p> Lookup tables, indexed by the remote SMTP server address, with
case insensitive lists of EHLO keywords (pipelining, starttls,
auth, etc.) that the SMTP client will ignore in the EHLO response
-from a remote SMTP server. </p>
+from a remote SMTP server. See smtp_discard_ehlo_keywords for
+details. </p>
%PARAM smtpd_discard_ehlo_keyword_address_maps
<p> Lookup tables, indexed by the remote SMTP client address, with
case insensitive lists of EHLO keywords (pipelining, starttls,
auth, etc.) that the SMTP server will not send in the EHLO response
-to a remote SMTP client. </p>
+to a remote SMTP client. See smtpd_discard_ehlo_keywords for details.
+</p>
%PARAM connection_cache_service scache
/* #define EHLO_MASK_STARTTLS (1<<7)
/* #define EHLO_MASK_XCLIENT (1<<8)
/* #define EHLO_MASK_XFORWARD (1<<9)
+/* #define EHLO_MASK_SILENT (1<<10)
/*
/* int ehlo_mask(keyword_list)
/* const char *keyword_list;
"XCLIENT", EHLO_MASK_XCLIENT,
"XFORWARD", EHLO_MASK_XFORWARD,
"STARTTLS", EHLO_MASK_STARTTLS,
+ "SILENT-DISCARD", EHLO_MASK_SILENT, /* XXX In-band signaling */
0,
};
#define EHLO_MASK_XCLIENT (1<<8) /* start of second byte */
#define EHLO_MASK_XFORWARD (1<<9)
+#define EHLO_MASK_SILENT (1<<10)
extern int ehlo_mask(const char *);
extern const char *str_ehlo_mask(int);
* Patches change the patchlevel and the release date. Snapshots change the
* release date only.
*/
-#define MAIL_RELEASE_DATE "20050214"
+#define MAIL_RELEASE_DATE "20050216"
#define MAIL_VERSION_NUMBER "2.2"
#define VAR_MAIL_VERSION "mail_version"
|| (ehlo_words = maps_find(smtp_ehlo_dis_maps, state->session->addr, 0)) == 0)
ehlo_words = var_smtp_ehlo_dis_words;
discard_mask = ehlo_mask(ehlo_words);
- if (discard_mask)
+ if (discard_mask && !(discard_mask & EHLO_MASK_SILENT))
msg_info("discarding EHLO keywords: %s", str_ehlo_mask(discard_mask));
/*
|| (ehlo_words = maps_find(ehlo_discard_maps, state->addr, 0)) == 0)
ehlo_words = var_smtpd_ehlo_dis_words;
discard_mask = ehlo_mask(ehlo_words);
- if (discard_mask)
+ if (discard_mask && !(discard_mask & EHLO_MASK_SILENT))
msg_info("discarding EHLO keywords: %s", str_ehlo_mask(discard_mask));
/*