2
0
mirror of https://github.com/vdukhovni/postfix synced 2025-08-30 05:38:06 +00:00

snapshot-20010521

This commit is contained in:
Wietse Venema 2001-05-21 00:00:00 -05:00 committed by Viktor Dukhovni
parent 6ac89aab2c
commit 8e965a9d68
7 changed files with 33 additions and 19 deletions

View File

@ -5138,6 +5138,12 @@ Apologies for any names omitted.
RFC 2821 recommendation: if VRFY is enabled, list it in RFC 2821 recommendation: if VRFY is enabled, list it in
the EHLO response. the EHLO response.
RFC 2821 recommendation: SMTP clients should use EHLO.
The default setting of smtp_always_send_ehlo has changed
from 0 (send EHLO if server greets with ESMTP) to 1 (always
greet with EHLO). In all cases, Postfix falls back to HELO
if the remote host does not support EHLO.
20010507 20010507
Bugfix: with soft_bounce=yes, the SMTP server would log Bugfix: with soft_bounce=yes, the SMTP server would log

View File

@ -5,8 +5,8 @@
# parameters that control LDAP lookups. Source code for LDAP # parameters that control LDAP lookups. Source code for LDAP
# lookup is available separately from http://www.postfix.org/ # lookup is available separately from http://www.postfix.org/
# The ldap_lookup_timeout parameter specifies the timeout for LDAP # The ldap_timeout parameter specifies the timeout for LDAP database
# database lookups. # lookups.
# #
#ldap_timeout = 10 #ldap_timeout = 10

View File

@ -333,7 +333,7 @@ allow_untrusted_routing = no
# network address, and reject service if it is listed below any of # network address, and reject service if it is listed below any of
# the following domains. # the following domains.
# #
#maps_rbl_domains = blackholes.mail-abuse.org dialups.mail-abuse.org #maps_rbl_domains = blackholes.mail-abuse.org relays.mail-abuse.org
maps_rbl_domains = blackholes.mail-abuse.org maps_rbl_domains = blackholes.mail-abuse.org
# The relay_domains parameter restricts what client hostname domains # The relay_domains parameter restricts what client hostname domains

View File

@ -15,7 +15,7 @@
* Version of this program. * Version of this program.
*/ */
#define VAR_MAIL_VERSION "mail_version" #define VAR_MAIL_VERSION "mail_version"
#define DEF_MAIL_VERSION "Snapshot-20010520" #define DEF_MAIL_VERSION "Snapshot-20010521"
extern char *var_mail_version; extern char *var_mail_version;
/* LICENSE /* LICENSE

View File

@ -45,7 +45,7 @@
/* as the message that \fBpostsuper\fR was supposed to delete. /* as the message that \fBpostsuper\fR was supposed to delete.
/* The probability for reusing a deleted queue ID is about 1 in 2**15 /* The probability for reusing a deleted queue ID is about 1 in 2**15
/* (the number of different microsecond values that the system clock /* (the number of different microsecond values that the system clock
/* can distinguish). /* can distinguish within a second).
/* .IP \(bu /* .IP \(bu
/* \fBpostsuper\fR deletes the new message file, instead of the /* \fBpostsuper\fR deletes the new message file, instead of the
/* old file that should have been deleted. /* old file that should have been deleted.
@ -157,6 +157,22 @@ static struct queue_info queue_info[] = {
0, 0,
}; };
/* postunlink - remove file with prejudice */
static int postunlink(const char *path)
{
int ret;
if ((ret = unlink(path)) == 0) {
msg_info("removed file %s", path);
} else if (errno != ENOENT) {
msg_warn("remove file %s: %m", path);
} else if (msg_verbose) {
msg_info("remove file %s: %m", path);
}
return (ret);
}
/* delete_one - delete one message instance and all its associated files */ /* delete_one - delete one message instance and all its associated files */
static int delete_one(const char *queue_id) static int delete_one(const char *queue_id)
@ -189,22 +205,14 @@ static int delete_one(const char *queue_id)
* in deleting the wrong files. * in deleting the wrong files.
*/ */
for (msg_qpp = msg_queue_names; *msg_qpp != 0; msg_qpp++) { for (msg_qpp = msg_queue_names; *msg_qpp != 0; msg_qpp++) {
if (!mail_open_ok(*msg_qpp, queue_id, &st, &msg_path)) if (mail_open_ok(*msg_qpp, queue_id, &st, &msg_path) != MAIL_OPEN_YES)
continue; continue;
for (log_qpp = log_queue_names; *log_qpp != 0; log_qpp++) for (log_qpp = log_queue_names; *log_qpp != 0; log_qpp++)
(void) mail_queue_path(log_path_buf, *log_qpp, queue_id); postunlink(mail_queue_path(log_path_buf, *log_qpp, queue_id));
if (unlink(STR(log_path_buf)) < 0 && errno != ENOENT) if (postunlink(msg_path) == 0) {
msg_warn("remove file %s: %m", STR(log_path_buf));
if (unlink(msg_path) == 0) {
found = 1; found = 1;
msg_info("removed file %s", msg_path);
break; break;
} } /* else: lost a race */
if (errno != ENOENT) {
msg_warn("remove file %s: %m", msg_path);
} else if (msg_verbose) {
msg_info("remove file %s: %m", msg_path);
}
} }
vstring_free(log_path_buf); vstring_free(log_path_buf);
return (found); return (found);

View File

@ -219,7 +219,7 @@ int smtp_helo(SMTP_STATE *state)
*/ */
lines = resp->str; lines = resp->str;
while ((words = mystrtok(&lines, "\n")) != 0) { while ((words = mystrtok(&lines, "\n")) != 0) {
if (mystrtok(&words, "- =") && (word = mystrtok(&words, " \t")) != 0) { if (mystrtok(&words, "- ") && (word = mystrtok(&words, " \t=")) != 0) {
if (strcasecmp(word, "8BITMIME") == 0) if (strcasecmp(word, "8BITMIME") == 0)
state->features |= SMTP_FEATURE_8BITMIME; state->features |= SMTP_FEATURE_8BITMIME;
else if (strcasecmp(word, "PIPELINING") == 0) else if (strcasecmp(word, "PIPELINING") == 0)

View File

@ -104,7 +104,7 @@ char *dir_forest(VSTRING *buf, const char *path, int depth)
} }
VSTRING_TERMINATE(buf); VSTRING_TERMINATE(buf);
if (msg_verbose) if (msg_verbose > 1)
msg_info("%s: %s -> %s", myname, path, vstring_str(buf)); msg_info("%s: %s -> %s", myname, path, vstring_str(buf));
return (vstring_str(buf)); return (vstring_str(buf));
} }