On Tue, Dec 16, 2008 at 05:14:12PM -0700, Jes?s Manuel Loaiza Vidal wrote:
> Weird case.
>
> If I comment these two lines from my main.cf, the problem doesn't occur
> (at least not from the first time or occurs less, having tried two times
> and no issues):
>
> #smtpd_sender_login_maps = ldap:/etc/postfix/ldap-sendermaps.cf
> smtpd_sender_restrictions =
> permit_mynetworks,
> # reject_sender_login_mismatch,
> permit_sasl_authenticated,
> check_sender_access pgsql:/etc/postfix/pgsql-senderpolicy.cf,
> reject_non_fqdn_sender,
> reject_unknown_sender_domain
What happens if you keep the original restrictions and set
"smtpd_delay_reject = no". Does that trigger the problem at all? If so,
is it now after MAIL FROM, instead of RCPT TO?
Does your configuration rely on any 2.5.x features, or does 2.4.9 support
all the features you need? If so, does 2.4.9 exhibit the same symptoms
with the same configuration?
Let's try to whittle this down to a simpler reproducible configuration.
Try to drop other elements of smtpd_sender_restrictions, and find the
smallest problematic combination. Also try with the original settings and
the patch below which overrides OpenSSL's memory allocation functions
(normally the usual malloc/realloc/free) with those used by Postfix,
which perform more detailed sanity checks on allocation and de-allocation.
I have not tried this before, so we may run into obstacles...
Index: src/tls/tls_client.c
--- src/tls/tls_client.c 10 Jan 2008 03:00:31 -0000 1.1.1.2
+++ src/tls/tls_client.c 17 Dec 2008 02:17:09 -0000
@@ -289,6 +289,14 @@
TLS_APPL_STATE *app_ctx;
const EVP_MD *md_alg;
unsigned int md_len;
+ typedef void *(*malloc_t)(size_t);
+ typedef void *(*realloc_t)(void *, size_t);
+ typedef void (*free_t)(void *);
+
+ CRYPTO_set_mem_functions(
+ (malloc_t)mymalloc,
+ (realloc_t)myrealloc,
+ (free_t)myfree);
if (props->log_level >= 2)
msg_info("initializing the client-side TLS engine");
Index: src/tls/tls_server.c
--- src/tls/tls_server.c 10 Jan 2008 03:00:33 -0000 1.1.1.2
+++ src/tls/tls_server.c 17 Dec 2008 02:15:58 -0000
@@ -256,6 +256,14 @@
TLS_APPL_STATE *app_ctx;
const EVP_MD *md_alg;
unsigned int md_len;
+ typedef void *(*malloc_t)(size_t);
+ typedef void *(*realloc_t)(void *, size_t);
+ typedef void (*free_t)(void *);
+
+ CRYPTO_set_mem_functions(
+ (malloc_t)mymalloc,
+ (realloc_t)myrealloc,
+ (free_t)myfree);
if (props->log_level >= 2)
msg_info("initializing the server-side TLS engine");
--
Viktor.
Disclaimer: off-list followups get on-list replies or get ignored.
Please do not ignore the "Reply-To" header.
To unsubscribe from the postfix-users list, visit
http://www.postfix.org/lists.html or click the link below:
<mailto:[email protected]?body=unsubscribe%20postfix-users>
If my response solves your problem, the best way to thank me is to not
send an "it worked, thanks" follow-up. If you must respond, please put
It worked, thanks" in the "Subject" so I can delete these quickly.