opensmtpd: update to 6.0.3p1.
This commit is contained in:
parent
3dabad9b4d
commit
c6be82c2eb
4 changed files with 4 additions and 124 deletions
|
@ -1,97 +0,0 @@
|
||||||
From f948b923873a93472dea9b786cf60a3472b0ddc8 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Samuel Holland <samuel@sholland.org>
|
|
||||||
Date: Wed, 11 Jan 2017 17:35:29 -0600
|
|
||||||
Subject: [PATCH] fix compatibility with libressl
|
|
||||||
|
|
||||||
These functions are exported by libcrypto from libressl, due to its
|
|
||||||
similar OpenBSD compatibility layer, but they are not present in any
|
|
||||||
header files. Thus, while we can use the existing compiled function,
|
|
||||||
and do not need to provide our own, we do need to provide the prototype
|
|
||||||
for it.
|
|
||||||
|
|
||||||
This avoids implicit function declarations and the resulting crashes due
|
|
||||||
to pointer truncation.
|
|
||||||
|
|
||||||
The patch is based on an equivalent patch for OpenSSH from
|
|
||||||
https://bugzilla.mindrot.org/show_bug.cgi?id=2465
|
|
||||||
Also see
|
|
||||||
https://github.com/libressl-portable/portable/issues/109
|
|
||||||
|
|
||||||
Fixes #691
|
|
||||||
---
|
|
||||||
openbsd-compat/defines.h | 9 ---------
|
|
||||||
openbsd-compat/openbsd-compat.h | 25 +++++++++++++++----------
|
|
||||||
2 files changed, 15 insertions(+), 19 deletions(-)
|
|
||||||
|
|
||||||
--- openbsd-compat/defines.h
|
|
||||||
+++ openbsd-compat/defines.h
|
|
||||||
@@ -422,15 +422,6 @@ typedef uint16_t in_port_t;
|
|
||||||
#define INET6_ADDRSTRLEN 46
|
|
||||||
#endif
|
|
||||||
|
|
||||||
-/*
|
|
||||||
- * Platforms that have arc4random_uniform() and not arc4random_stir()
|
|
||||||
- * shouldn't need the latter.
|
|
||||||
- */
|
|
||||||
-#if defined(HAVE_ARC4RANDOM) && defined(HAVE_ARC4RANDOM_UNIFORM) && \
|
|
||||||
- !defined(HAVE_ARC4RANDOM_STIR)
|
|
||||||
-# define arc4random_stir()
|
|
||||||
-#endif
|
|
||||||
-
|
|
||||||
#ifndef HAVE_VA_COPY
|
|
||||||
# ifdef HAVE___VA_COPY
|
|
||||||
# define va_copy(dest, src) __va_copy(dest, src)
|
|
||||||
--- openbsd-compat/openbsd-compat.h
|
|
||||||
+++ openbsd-compat/openbsd-compat.h
|
|
||||||
@@ -119,20 +119,25 @@ int BSDoptind; /* index into parent argv vector */
|
|
||||||
int getpeereid(int , uid_t *, gid_t *);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
-#ifdef HAVE_ARC4RANDOM
|
|
||||||
-# ifndef HAVE_ARC4RANDOM_STIR
|
|
||||||
-# define arc4random_stir()
|
|
||||||
-# endif
|
|
||||||
-#else
|
|
||||||
+#if !defined(HAVE_ARC4RANDOM) || defined(LIBRESSL_VERSION_NUMBER)
|
|
||||||
unsigned int arc4random(void);
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
+#if defined(HAVE_ARC4RANDOM_STIR)
|
|
||||||
void arc4random_stir(void);
|
|
||||||
-#endif /* !HAVE_ARC4RANDOM */
|
|
||||||
+#elif defined(HAVE_ARC4RANDOM) || defined(LIBRESSL_VERSION_NUMBER)
|
|
||||||
+/* Recent system/libressl implementation; no need for explicit stir */
|
|
||||||
+# define arc4random_stir()
|
|
||||||
+#else
|
|
||||||
+/* openbsd-compat/arc4random.c provides arc4random_stir() */
|
|
||||||
+void arc4random_stir(void);
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
-#ifndef HAVE_ARC4RANDOM_BUF
|
|
||||||
+#if !defined(HAVE_ARC4RANDOM_BUF) || defined(LIBRESSL_VERSION_NUMBER)
|
|
||||||
void arc4random_buf(void *, size_t);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
-#ifndef HAVE_ARC4RANDOM_UNIFORM
|
|
||||||
+#if !defined(HAVE_ARC4RANDOM_UNIFORM) || defined(LIBRESSL_VERSION_NUMBER)
|
|
||||||
uint32_t arc4random_uniform(uint32_t);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
@@ -174,7 +179,7 @@ int vasprintf(char **, const char *, va_list);
|
|
||||||
int vsnprintf(char *, size_t, const char *, va_list);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
-#ifndef HAVE_EXPLICIT_BZERO
|
|
||||||
+#if !defined(HAVE_EXPLICIT_BZERO) || defined(LIBRESSL_VERSION_NUMBER)
|
|
||||||
void explicit_bzero(void *p, size_t n);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
@@ -200,7 +205,7 @@ int pidfile(const char *basename);
|
|
||||||
struct passwd *pw_dup(const struct passwd *);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
-#ifndef HAVE_REALLOCARRAY
|
|
||||||
+#if !defined(HAVE_REALLOCARRAY) || defined(LIBRESSL_VERSION_NUMBER)
|
|
||||||
void *reallocarray(void *, size_t, size_t);
|
|
||||||
#endif
|
|
||||||
|
|
|
@ -1,23 +0,0 @@
|
||||||
Despit these macros being defined in sys/stat.h, they are undefined
|
|
||||||
when used in the source strmode.c, perhaps due to the shielding macro
|
|
||||||
S_IRUSR being defined before.
|
|
||||||
|
|
||||||
--- openbsd-compat/strmode.c 2015-10-02 01:46:21.000000000 +0200
|
|
||||||
+++ openbsd-compat/strmode.c 2015-10-02 08:38:43.954398930 +0200
|
|
||||||
@@ -37,6 +37,16 @@
|
|
||||||
#include <sys/stat.h>
|
|
||||||
#include <string.h>
|
|
||||||
|
|
||||||
+#if !defined(S_ISUID)
|
|
||||||
+#define S_ISUID 04000
|
|
||||||
+#endif
|
|
||||||
+#if !defined(S_ISGID)
|
|
||||||
+#define S_ISGID 02000
|
|
||||||
+#endif
|
|
||||||
+#if !defined(S_ISVTX)
|
|
||||||
+#define S_ISVTX 01000
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
/* XXX mode should be mode_t */
|
|
||||||
|
|
||||||
void
|
|
|
@ -12,6 +12,6 @@
|
||||||
+#define S_ISVTX 01000
|
+#define S_ISVTX 01000
|
||||||
+#endif
|
+#endif
|
||||||
+
|
+
|
||||||
extern char *__progname;
|
#define SMTPD_MAXARG 32
|
||||||
|
|
||||||
static void parent_imsg(struct mproc *, struct imsg *);
|
static void parent_imsg(struct mproc *, struct imsg *);
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
# Template file for 'opensmtpd'
|
# Template file for 'opensmtpd'
|
||||||
pkgname=opensmtpd
|
pkgname=opensmtpd
|
||||||
version=6.0.2p1
|
version=6.0.3p1
|
||||||
revision=5
|
revision=1
|
||||||
build_style=gnu-configure
|
build_style=gnu-configure
|
||||||
configure_args="--sysconfdir=/etc/smtpd --sbindir=/usr/bin
|
configure_args="--sysconfdir=/etc/smtpd --sbindir=/usr/bin
|
||||||
--with-path-socket=/run --with-mantype=doc --with-pie --with-table-db
|
--with-path-socket=/run --with-mantype=doc --with-pie --with-table-db
|
||||||
|
@ -21,7 +21,7 @@ maintainer="Juan RP <xtraeme@voidlinux.eu>"
|
||||||
license="BSD, ISC, MIT"
|
license="BSD, ISC, MIT"
|
||||||
homepage="https://www.opensmtpd.org"
|
homepage="https://www.opensmtpd.org"
|
||||||
distfiles="https://www.opensmtpd.org/archives/${pkgname}-${version}.tar.gz"
|
distfiles="https://www.opensmtpd.org/archives/${pkgname}-${version}.tar.gz"
|
||||||
checksum=2af9b6d08784c7e546bf124bb61e311a6aa0c9835507710a76f5c242383190ac
|
checksum=291881862888655565e8bbe3cfb743310f5dc0edb6fd28a889a9a547ad767a81
|
||||||
|
|
||||||
CFLAGS=-D_DEFAULT_SOURCE
|
CFLAGS=-D_DEFAULT_SOURCE
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue