libmilter: 8.15.2 -> 8.17.1

Changelog:
```
[...]
8.16.1/8.16.1	2020/07/05
[...]
	LIBMILTER: Fix typo in a macro. Patch from Ignacio Goyret
		of Alcatel-Lucent.
	LIBMILTER: Fix reference in xxfi_negotiate documentation.
		Patch from Sven Neuhaus.
	LIBMILTER: Fix function name in smfi_addrcpt_par documentation.
		Patch from G.W. Haywood.
	LIBMILTER: Fix a potential memory leak in smfi_setsymlist().
		Patch from Martin Svec.
[...]
```
This commit is contained in:
Thomas Gerbet 2023-01-02 23:09:42 +01:00
parent eae9a09270
commit a6663badb1
3 changed files with 15 additions and 59 deletions

View file

@ -13,16 +13,16 @@ Fix build issues on Darwin.
define(`confLDOPTS', `${Extra_LD_Flags}')
--- a/sendmail/sendmail.h 2020-05-18 14:51:17.000000000 +0200
+++ b/sendmail/sendmail.h 2020-05-18 14:51:00.000000000 +0200
@@ -104,7 +104,11 @@
# endif /* NETX25 */
@@ -122,7 +122,11 @@
# endif
# if NAMED_BIND
-# include <arpa/nameser.h>
+# ifdef __APPLE__
+# include <arpa/nameser_compat.h>
+# else
+# include <arpa/nameser.h>
+# endif
# ifdef NOERROR
# undef NOERROR /* avoid <sys/streams.h> conflict */
# endif /* NOERROR */
#if NAMED_BIND
-# include <arpa/nameser.h>
+# ifdef __APPLE__
+# include <arpa/nameser_compat.h>
+# else
+# include <arpa/nameser.h>
+# endif
# ifdef NOERROR
# undef NOERROR /* avoid <sys/streams.h> conflict */
# endif

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "libmilter";
version = "8.15.2";
version = "8.17.1";
src = fetchurl {
url = "ftp://ftp.sendmail.org/pub/sendmail/sendmail.${version}.tar.gz";
sha256 = "0fdl9ndmspqspdlmghzxlaqk56j3yajk52d7jxcg21b7sxglpy94";
sha256 = "sha256-BLx2tsiG5tERvn/Y2qMrjOABKKKItrUuBnvCnzhUpuY=";
};
buildPhase = ''
@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
sh Build -f ./a.m4
'';
patches = [ ./install.patch ./sharedlib.patch ./glibc-2.30.patch ./darwin.patch ];
patches = [ ./install.patch ./sharedlib.patch ./darwin.patch ];
nativeBuildInputs = [ m4 ] ++ lib.optional stdenv.isDarwin fixDarwinDylibNames;

View file

@ -1,44 +0,0 @@
diff --git a/libmilter/sm_gethost.c b/libmilter/sm_gethost.c
index 2423c34..f00468c 100644
--- a/libmilter/sm_gethost.c
+++ b/libmilter/sm_gethost.c
@@ -52,16 +52,8 @@ sm_getipnodebyname(name, family, flags, err)
bool resv6 = true;
struct hostent *h;
- if (family == AF_INET6)
- {
- /* From RFC2133, section 6.1 */
- resv6 = bitset(RES_USE_INET6, _res.options);
- _res.options |= RES_USE_INET6;
- }
SM_SET_H_ERRNO(0);
- h = gethostbyname(name);
- if (family == AF_INET6 && !resv6)
- _res.options &= ~RES_USE_INET6;
+ h = gethostbyname2(name, family);
/* the function is supposed to return only the requested family */
if (h != NULL && h->h_addrtype != family)
diff --git a/sendmail/conf.c b/sendmail/conf.c
index c73334e..500dafb 100644
--- a/sendmail/conf.c
+++ b/sendmail/conf.c
@@ -4243,16 +4243,8 @@ sm_getipnodebyname(name, family, flags, err)
# else /* HAS_GETHOSTBYNAME2 */
bool resv6 = true;
- if (family == AF_INET6)
- {
- /* From RFC2133, section 6.1 */
- resv6 = bitset(RES_USE_INET6, _res.options);
- _res.options |= RES_USE_INET6;
- }
SM_SET_H_ERRNO(0);
- h = gethostbyname(name);
- if (!resv6)
- _res.options &= ~RES_USE_INET6;
+ h = gethostbyname2(name, family);
/* the function is supposed to return only the requested family */
if (h != NULL && h->h_addrtype != family)