Re: [exim-dev] Exim 4.87 RC2 uploaded

Top Page
Delete this message
Reply to this message
Author: Michael Haardt
Date:  
To: exim-dev
Subject: Re: [exim-dev] Exim 4.87 RC2 uploaded
Hello,

I did some limited testing and found two issues:

For older resolvers:

--- src/dns.c.orig      2015-12-19 21:09:05.000000000 +0100
+++ src/dns.c   2015-12-19 21:09:33.000000000 +0100
@@ -483,8 +483,10 @@
 static void
 dns_set_insecure(dns_answer * dnsa)
 {
+#ifndef DISABLE_DNSSEC
 HEADER * h = (HEADER *)dnsa->answer;
 h->ad = 0;
+#endif
 }


/************************************************

tls.c uses setenv/unsetenv to switch the timezone. Those calls
are not entirely portable. Since we only want to switch to GMT0,
how about setting a new environment containing just that?

extern char **environ;

char **old_environ;
static char gmt0[]="TZ=GMT0";
static char *gmt_env[]={ gmt0, (char*)0 };

old_environ=environ;
environ=gmt_env;

/* Now run whatever is needed with the new environment. */

environ=old_environ;

I suggest not to replicate the constant "GMT0" in src/tlscert-openssl.c
and src/tlscert-gnu.c, but instead pull that into the to_tz(), renaming
it to_gmt0(). That would make it easier to either use setenv or the
more efficient method above.

Finally, I need this patch:

--- OS/os.h-HP-UX.orig  2015-12-18 15:58:06.000000000 +0100
+++ OS/os.h-HP-UX       2015-12-19 23:18:48.000000000 +0100
@@ -23,4 +23,12 @@


#define strtoll(a,b,c) strtoimax(a,b,c)

+/* Determined by sockaddr_un */
+
+struct sockaddr_storage
+{
+ short ss_family;
+ char __ss_padding[92];
+};
+
/* End */


Michael