mirror of
https://github.com/vdukhovni/postfix
synced 2025-08-30 13:48:06 +00:00
postfix-2.3-20060418
This commit is contained in:
committed by
Viktor Dukhovni
parent
4a7912c04a
commit
2e4c41c612
@@ -12121,6 +12121,19 @@ Apologies for any names omitted.
|
|||||||
when reporting errors. Fix by Leandro Santi. Files:
|
when reporting errors. Fix by Leandro Santi. Files:
|
||||||
global/mime_state.c, cleanup/cleanup_message.c.
|
global/mime_state.c, cleanup/cleanup_message.c.
|
||||||
|
|
||||||
|
20060411
|
||||||
|
|
||||||
|
Bugfix: the SMTP server logged no warning when for some
|
||||||
|
reason the TLS engine was unavailable in wrappermode. Victor
|
||||||
|
Duchovni. File: smtpd/smtpd.c.
|
||||||
|
|
||||||
|
20060417
|
||||||
|
|
||||||
|
Cleanup: when SMTP access table lookup fails, reply with
|
||||||
|
4xx instead of aborting with a fatal run-time error. The
|
||||||
|
old behavior assumes local file access, and is inappropriate
|
||||||
|
with deployment of LDAP and SQL tables. File: smtpd/smtpd_check.c.
|
||||||
|
|
||||||
Wish list:
|
Wish list:
|
||||||
|
|
||||||
Don't send xforward attributes to every site that announces
|
Don't send xforward attributes to every site that announces
|
||||||
|
@@ -8790,6 +8790,8 @@ the name matches the client IP address. A client name is set to
|
|||||||
lookup is disabled. Turning off name lookup reduces delays due to
|
lookup is disabled. Turning off name lookup reduces delays due to
|
||||||
DNS lookup and increases the maximal inbound delivery rate. </p>
|
DNS lookup and increases the maximal inbound delivery rate. </p>
|
||||||
|
|
||||||
|
<p> This feature is available in Postfix 2.3 and later. </p>
|
||||||
|
|
||||||
|
|
||||||
</DD>
|
</DD>
|
||||||
|
|
||||||
|
@@ -5063,6 +5063,8 @@ the name matches the client IP address. A client name is set to
|
|||||||
"unknown" when it cannot be looked up or verified, or when name
|
"unknown" when it cannot be looked up or verified, or when name
|
||||||
lookup is disabled. Turning off name lookup reduces delays due to
|
lookup is disabled. Turning off name lookup reduces delays due to
|
||||||
DNS lookup and increases the maximal inbound delivery rate.
|
DNS lookup and increases the maximal inbound delivery rate.
|
||||||
|
.PP
|
||||||
|
This feature is available in Postfix 2.3 and later.
|
||||||
.SH smtpd_policy_service_max_idle (default: 300s)
|
.SH smtpd_policy_service_max_idle (default: 300s)
|
||||||
The time after which an idle SMTPD policy service connection is
|
The time after which an idle SMTPD policy service connection is
|
||||||
closed.
|
closed.
|
||||||
|
@@ -8776,6 +8776,8 @@ the name matches the client IP address. A client name is set to
|
|||||||
lookup is disabled. Turning off name lookup reduces delays due to
|
lookup is disabled. Turning off name lookup reduces delays due to
|
||||||
DNS lookup and increases the maximal inbound delivery rate. </p>
|
DNS lookup and increases the maximal inbound delivery rate. </p>
|
||||||
|
|
||||||
|
<p> This feature is available in Postfix 2.3 and later. </p>
|
||||||
|
|
||||||
%PARAM delay_logging_resolution_limit 2
|
%PARAM delay_logging_resolution_limit 2
|
||||||
|
|
||||||
<p> The maximal number of digits after the decimal point when logging
|
<p> The maximal number of digits after the decimal point when logging
|
||||||
|
@@ -20,7 +20,7 @@
|
|||||||
* Patches change both the patchlevel and the release date. Snapshots have no
|
* Patches change both the patchlevel and the release date. Snapshots have no
|
||||||
* patchlevel; they change the release date only.
|
* patchlevel; they change the release date only.
|
||||||
*/
|
*/
|
||||||
#define MAIL_RELEASE_DATE "20060405"
|
#define MAIL_RELEASE_DATE "20060418"
|
||||||
#define MAIL_VERSION_NUMBER "2.3"
|
#define MAIL_VERSION_NUMBER "2.3"
|
||||||
|
|
||||||
#ifdef SNAPSHOT
|
#ifdef SNAPSHOT
|
||||||
|
@@ -3333,6 +3333,13 @@ static void smtpd_proto(SMTPD_STATE *state, const char *service)
|
|||||||
*/
|
*/
|
||||||
#ifdef USE_TLS
|
#ifdef USE_TLS
|
||||||
if (SMTPD_STAND_ALONE(state) == 0 && var_smtpd_tls_wrappermode) {
|
if (SMTPD_STAND_ALONE(state) == 0 && var_smtpd_tls_wrappermode) {
|
||||||
|
if (smtpd_tls_ctx == 0) {
|
||||||
|
msg_warn("Wrapper-mode request dropped from %s for service %s."
|
||||||
|
"TLS context initialization failed. For details see"
|
||||||
|
" earlier warnings in your logs.",
|
||||||
|
state->namaddr, state->service);
|
||||||
|
break;
|
||||||
|
}
|
||||||
if (var_smtpd_cntls_limit > 0
|
if (var_smtpd_cntls_limit > 0
|
||||||
&& !xclient_allowed
|
&& !xclient_allowed
|
||||||
&& anvil_clnt
|
&& anvil_clnt
|
||||||
|
@@ -2258,8 +2258,13 @@ static int check_access(SMTPD_STATE *state, const char *table, const char *name,
|
|||||||
CHK_ACCESS_RETURN(check_table_result(state, table, value, name,
|
CHK_ACCESS_RETURN(check_table_result(state, table, value, name,
|
||||||
reply_name, reply_class,
|
reply_name, reply_class,
|
||||||
def_acl), FOUND);
|
def_acl), FOUND);
|
||||||
if (dict_errno != 0)
|
if (dict_errno != 0) {
|
||||||
msg_fatal("%s: table lookup problem", table);
|
msg_warn("%s: table lookup problem", table);
|
||||||
|
value = "450 4.3.0 Server configuration error";
|
||||||
|
CHK_ACCESS_RETURN(check_table_result(state, table, value, name,
|
||||||
|
reply_name, reply_class,
|
||||||
|
def_acl), FOUND);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
CHK_ACCESS_RETURN(SMTPD_CHECK_DUNNO, MISSED);
|
CHK_ACCESS_RETURN(SMTPD_CHECK_DUNNO, MISSED);
|
||||||
}
|
}
|
||||||
@@ -2299,8 +2304,13 @@ static int check_domain_access(SMTPD_STATE *state, const char *table,
|
|||||||
CHK_DOMAIN_RETURN(check_table_result(state, table, value,
|
CHK_DOMAIN_RETURN(check_table_result(state, table, value,
|
||||||
domain, reply_name, reply_class,
|
domain, reply_name, reply_class,
|
||||||
def_acl), FOUND);
|
def_acl), FOUND);
|
||||||
if (dict_errno != 0)
|
if (dict_errno != 0) {
|
||||||
msg_fatal("%s: table lookup problem", table);
|
msg_warn("%s: table lookup problem", table);
|
||||||
|
value = "450 4.3.0 Server configuration error";
|
||||||
|
CHK_DOMAIN_RETURN(check_table_result(state, table, value,
|
||||||
|
domain, reply_name, reply_class,
|
||||||
|
def_acl), FOUND);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
/* Don't apply subdomain magic to numerical hostnames. */
|
/* Don't apply subdomain magic to numerical hostnames. */
|
||||||
if (maybe_numerical
|
if (maybe_numerical
|
||||||
@@ -2353,8 +2363,13 @@ static int check_addr_access(SMTPD_STATE *state, const char *table,
|
|||||||
CHK_ADDR_RETURN(check_table_result(state, table, value, address,
|
CHK_ADDR_RETURN(check_table_result(state, table, value, address,
|
||||||
reply_name, reply_class,
|
reply_name, reply_class,
|
||||||
def_acl), FOUND);
|
def_acl), FOUND);
|
||||||
if (dict_errno != 0)
|
if (dict_errno != 0) {
|
||||||
msg_fatal("%s: table lookup problem", table);
|
msg_warn("%s: table lookup problem", table);
|
||||||
|
value = "450 4.3.0 Server configuration error";
|
||||||
|
CHK_ADDR_RETURN(check_table_result(state, table, value, address,
|
||||||
|
reply_name, reply_class,
|
||||||
|
def_acl), FOUND);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
flags = PARTIAL;
|
flags = PARTIAL;
|
||||||
} while (split_at_right(addr, delim));
|
} while (split_at_right(addr, delim));
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
/* #include <vstream.h>
|
/* #include <vstream.h>
|
||||||
/*
|
/*
|
||||||
/* VSTREAM *vstream_fopen(path, flags, mode)
|
/* VSTREAM *vstream_fopen(path, flags, mode)
|
||||||
/* char *path;
|
/* const char *path;
|
||||||
/* int flags;
|
/* int flags;
|
||||||
/* mode_t mode;
|
/* mode_t mode;
|
||||||
/*
|
/*
|
||||||
@@ -22,11 +22,11 @@
|
|||||||
/* VSTREAM *stream;
|
/* VSTREAM *stream;
|
||||||
/*
|
/*
|
||||||
/* VSTREAM *vstream_printf(format, ...)
|
/* VSTREAM *vstream_printf(format, ...)
|
||||||
/* char *format;
|
/* const char *format;
|
||||||
/*
|
/*
|
||||||
/* VSTREAM *vstream_fprintf(stream, format, ...)
|
/* VSTREAM *vstream_fprintf(stream, format, ...)
|
||||||
/* VSTREAM *stream;
|
/* VSTREAM *stream;
|
||||||
/* char *format;
|
/* const char *format;
|
||||||
/*
|
/*
|
||||||
/* int VSTREAM_GETC(stream)
|
/* int VSTREAM_GETC(stream)
|
||||||
/* VSTREAM *stream;
|
/* VSTREAM *stream;
|
||||||
@@ -44,7 +44,7 @@
|
|||||||
/* int ch;
|
/* int ch;
|
||||||
/*
|
/*
|
||||||
/* int vstream_fputs(str, stream)
|
/* int vstream_fputs(str, stream)
|
||||||
/* char *str;
|
/* const char *str;
|
||||||
/* VSTREAM *stream;
|
/* VSTREAM *stream;
|
||||||
/*
|
/*
|
||||||
/* off_t vstream_ftell(stream)
|
/* off_t vstream_ftell(stream)
|
||||||
@@ -93,11 +93,11 @@
|
|||||||
/* int vstream_clearerr(stream)
|
/* int vstream_clearerr(stream)
|
||||||
/* VSTREAM *stream;
|
/* VSTREAM *stream;
|
||||||
/*
|
/*
|
||||||
/* char *VSTREAM_PATH(stream)
|
/* const char *VSTREAM_PATH(stream)
|
||||||
/* VSTREAM *stream;
|
/* VSTREAM *stream;
|
||||||
/*
|
/*
|
||||||
/* char *vstream_vfprintf(vp, format, ap)
|
/* char *vstream_vfprintf(vp, format, ap)
|
||||||
/* char *format;
|
/* const char *format;
|
||||||
/* va_list *ap;
|
/* va_list *ap;
|
||||||
/*
|
/*
|
||||||
/* ssize_t vstream_peek(stream)
|
/* ssize_t vstream_peek(stream)
|
||||||
|
@@ -99,7 +99,7 @@ extern int vstream_fdclose(VSTREAM *);
|
|||||||
#define vstream_feof(vp) vbuf_eof(&(vp)->buf)
|
#define vstream_feof(vp) vbuf_eof(&(vp)->buf)
|
||||||
#define vstream_ftimeout(vp) vbuf_timeout(&(vp)->buf)
|
#define vstream_ftimeout(vp) vbuf_timeout(&(vp)->buf)
|
||||||
#define vstream_clearerr(vp) vbuf_clearerr(&(vp)->buf)
|
#define vstream_clearerr(vp) vbuf_clearerr(&(vp)->buf)
|
||||||
#define VSTREAM_PATH(vp) ((vp)->path ? (vp)->path : "unknown_stream")
|
#define VSTREAM_PATH(vp) ((vp)->path ? (const char *) (vp)->path : "unknown_stream")
|
||||||
#define vstream_ftime(vp) ((time_t) ((vp)->iotime.tv_sec))
|
#define vstream_ftime(vp) ((time_t) ((vp)->iotime.tv_sec))
|
||||||
#define vstream_ftimeval(vp) ((vp)->iotime)
|
#define vstream_ftimeval(vp) ((vp)->iotime)
|
||||||
|
|
||||||
|
@@ -38,6 +38,7 @@
|
|||||||
/* list of name, value, name, value, ... elements. By default only the
|
/* list of name, value, name, value, ... elements. By default only the
|
||||||
/* command search path is initialized to _PATH_DEFPATH.
|
/* command search path is initialized to _PATH_DEFPATH.
|
||||||
/* .IP "VSTREAM_POPEN_EXPORT (char **)"
|
/* .IP "VSTREAM_POPEN_EXPORT (char **)"
|
||||||
|
/* This argument is passed to clean_env().
|
||||||
/* Null-terminated array of names of environment parameters
|
/* Null-terminated array of names of environment parameters
|
||||||
/* that can be exported. By default, everything is exported.
|
/* that can be exported. By default, everything is exported.
|
||||||
/* .IP "VSTREAM_POPEN_UID (uid_t)"
|
/* .IP "VSTREAM_POPEN_UID (uid_t)"
|
||||||
|
Reference in New Issue
Block a user