diff -ru libressl-2.7.2.orig/configure libressl-2.7.2/configure
--- libressl-2.7.2.orig/configure 2018-04-01 04:14:50.000000000 +0200
+++ libressl-2.7.2/configure 2018-04-03 18:23:59.137279767 +0200
@@ -722,6 +722,8 @@
HOST_LINUX_TRUE
HOST_HPUX_FALSE
HOST_HPUX_TRUE
+HOST_MIDIPIX_FALSE
+HOST_MIDIPIX_TRUE
HOST_FREEBSD_FALSE
HOST_FREEBSD_TRUE
HOST_DARWIN_FALSE
@@ -11043,7 +11045,7 @@
;;
# This must be glibc/ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu)
+linux* | k*bsd*-gnu | kopensolaris*-gnu | midipix*)
version_type=linux # correct to gnu/linux during the next big refactor
need_lib_prefix=no
need_version=no
@@ -12190,6 +12192,11 @@
PLATFORM_LDADD='-lpthread'
;;
+ *midipix*)
+ HOST_OS=midipix
+ HOST_ABI=pe
+ CFLAGS="$CFLAGS -D_DEFAULT_SOURCE -D_BSD_SOURCE -D_POSIX_SOURCE -D_GNU_SOURCE"
+ ;;
*netbsd*)
HOST_OS=netbsd
HOST_ABI=elf
@@ -12315,6 +12322,14 @@
HOST_LINUX_FALSE=
fi
+ if test x$HOST_OS = xmidipix; then
+ HOST_MIDIPIX_TRUE=
+ HOST_MIDIPIX_FALSE='#'
+else
+ HOST_MIDIPIX_TRUE='#'
+ HOST_MIDIPIX_FALSE=
+fi
+
if test x$HOST_OS = xnetbsd; then
HOST_NETBSD_TRUE=
HOST_NETBSD_FALSE='#'
@@ -14260,6 +14275,10 @@
as_fn_error $? "conditional \"HOST_LINUX\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
+if test -z "${HOST_MIDIPIX_TRUE}" && test -z "${HOST_MIDIPIX_FALSE}"; then
+ as_fn_error $? "conditional \"HOST_MIDIPIX\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
if test -z "${HOST_NETBSD_TRUE}" && test -z "${HOST_NETBSD_FALSE}"; then
as_fn_error $? "conditional \"HOST_NETBSD\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
diff -ru libressl-2.7.2.orig/crypto/compat/arc4random.h libressl-2.7.2/crypto/compat/arc4random.h
--- libressl-2.7.2.orig/crypto/compat/arc4random.h 2017-11-04 21:04:56.000000000 +0100
+++ libressl-2.7.2/crypto/compat/arc4random.h 2018-04-03 18:24:22.725182637 +0200
@@ -12,7 +12,7 @@
#elif defined(__hpux)
#include "arc4random_hpux.h"
-#elif defined(__linux__)
+#elif defined(__linux__) || defined(__midipix__)
#include "arc4random_linux.h"
#elif defined(__NetBSD__)
diff -ru libressl-2.7.2.orig/crypto/compat/getentropy_linux.c libressl-2.7.2/crypto/compat/getentropy_linux.c
--- libressl-2.7.2.orig/crypto/compat/getentropy_linux.c 2018-04-01 04:14:32.000000000 +0200
+++ libressl-2.7.2/crypto/compat/getentropy_linux.c 2018-04-03 19:14:31.336262932 +0200
@@ -27,7 +27,7 @@
#include <sys/ioctl.h>
#include <sys/resource.h>
#include <sys/syscall.h>
-#ifdef SYS__sysctl
+#if defined(SYS__sysctl) && !defined(__midipix__)
#include <linux/sysctl.h>
#endif
#include <sys/statvfs.h>
@@ -49,8 +49,11 @@
#include <time.h>
#include <openssl/sha.h>
+#ifndef __midipix__
#include <linux/types.h>
#include <linux/random.h>
+#endif
+
#ifdef HAVE_GETAUXVAL
#include <sys/auxv.h>
#endif
@@ -78,7 +81,7 @@
static int getentropy_getrandom(void *buf, size_t len);
#endif
static int getentropy_urandom(void *buf, size_t len);
-#ifdef SYS__sysctl
+#if defined(SYS__sysctl) && !defined(__midipix__)
static int getentropy_sysctl(void *buf, size_t len);
#endif
static int getentropy_fallback(void *buf, size_t len);
@@ -118,7 +121,7 @@
if (ret != -1)
return (ret);
-#ifdef SYS__sysctl
+#if defined(SYS__sysctl) && !defined(__midipix__)
/*
* Try to use sysctl CTL_KERN, KERN_RANDOM, RANDOM_UUID.
* sysctl is a failsafe API, so it guarantees a result. This
@@ -244,10 +247,12 @@
close(fd);
goto nodevrandom;
}
+#ifndef __midipix__
if (ioctl(fd, RNDGETENTCNT, &cnt) == -1) {
close(fd);
goto nodevrandom;
}
+#endif
for (i = 0; i < len; ) {
size_t wanted = len - i;
ssize_t ret = read(fd, (char *)buf + i, wanted);
@@ -270,7 +275,7 @@
return (-1);
}
-#ifdef SYS__sysctl
+#if defined(SYS__sysctl) && !defined(__midipix__)
static int
getentropy_sysctl(void *buf, size_t len)
{
diff -ru libressl-2.7.2.orig/crypto/Makefile.in libressl-2.7.2/crypto/Makefile.in
--- libressl-2.7.2.orig/crypto/Makefile.in 2018-04-01 04:14:53.000000000 +0200
+++ libressl-2.7.2/crypto/Makefile.in 2018-04-03 18:51:02.314411849 +0200
@@ -120,10 +120,11 @@
@HAVE_ARC4RANDOM_BUF_FALSE@@HAVE_GETENTROPY_FALSE@@HOST_FREEBSD_TRUE@am__append_25 = compat/getentropy_freebsd.c
@HAVE_ARC4RANDOM_BUF_FALSE@@HAVE_GETENTROPY_FALSE@@HOST_HPUX_TRUE@am__append_26 = compat/getentropy_hpux.c
@HAVE_ARC4RANDOM_BUF_FALSE@@HAVE_GETENTROPY_FALSE@@HOST_LINUX_TRUE@am__append_27 = compat/getentropy_linux.c
-@HAVE_ARC4RANDOM_BUF_FALSE@@HAVE_GETENTROPY_FALSE@@HOST_NETBSD_TRUE@am__append_28 = compat/getentropy_netbsd.c
-@HAVE_ARC4RANDOM_BUF_FALSE@@HAVE_GETENTROPY_FALSE@@HOST_DARWIN_TRUE@am__append_29 = compat/getentropy_osx.c
-@HAVE_ARC4RANDOM_BUF_FALSE@@HAVE_GETENTROPY_FALSE@@HOST_SOLARIS_TRUE@am__append_30 = compat/getentropy_solaris.c
-@HAVE_ARC4RANDOM_BUF_FALSE@@HAVE_GETENTROPY_FALSE@@HOST_WIN_TRUE@am__append_31 = compat/getentropy_win.c
+@HAVE_ARC4RANDOM_BUF_FALSE@@HAVE_GETENTROPY_FALSE@@HOST_MIDIPIX_TRUE@am__append_28 = compat/getentropy_linux.c
+@HAVE_ARC4RANDOM_BUF_FALSE@@HAVE_GETENTROPY_FALSE@@HOST_NETBSD_TRUE@am__append_29 = compat/getentropy_netbsd.c
+@HAVE_ARC4RANDOM_BUF_FALSE@@HAVE_GETENTROPY_FALSE@@HOST_DARWIN_TRUE@am__append_30 = compat/getentropy_osx.c
+@HAVE_ARC4RANDOM_BUF_FALSE@@HAVE_GETENTROPY_FALSE@@HOST_SOLARIS_TRUE@am__append_31 = compat/getentropy_solaris.c
+@HAVE_ARC4RANDOM_BUF_FALSE@@HAVE_GETENTROPY_FALSE@@HOST_WIN_TRUE@am__append_32 = compat/getentropy_win.c
@HOST_ASM_ELF_X86_64_TRUE@am__append_32 = -DAES_ASM -DBSAES_ASM \
@HOST_ASM_ELF_X86_64_TRUE@ -DVPAES_ASM -DOPENSSL_IA32_SSE2 \
@HOST_ASM_ELF_X86_64_TRUE@ -DOPENSSL_BN_ASM_MONT \
@@ -237,10 +238,11 @@
@HAVE_ARC4RANDOM_BUF_FALSE@@HAVE_GETENTROPY_FALSE@@HOST_FREEBSD_TRUE@am__objects_17 = compat/getentropy_freebsd.lo
@HAVE_ARC4RANDOM_BUF_FALSE@@HAVE_GETENTROPY_FALSE@@HOST_HPUX_TRUE@am__objects_18 = compat/getentropy_hpux.lo
@HAVE_ARC4RANDOM_BUF_FALSE@@HAVE_GETENTROPY_FALSE@@HOST_LINUX_TRUE@am__objects_19 = compat/getentropy_linux.lo
-@HAVE_ARC4RANDOM_BUF_FALSE@@HAVE_GETENTROPY_FALSE@@HOST_NETBSD_TRUE@am__objects_20 = compat/getentropy_netbsd.lo
-@HAVE_ARC4RANDOM_BUF_FALSE@@HAVE_GETENTROPY_FALSE@@HOST_DARWIN_TRUE@am__objects_21 = compat/getentropy_osx.lo
-@HAVE_ARC4RANDOM_BUF_FALSE@@HAVE_GETENTROPY_FALSE@@HOST_SOLARIS_TRUE@am__objects_22 = compat/getentropy_solaris.lo
-@HAVE_ARC4RANDOM_BUF_FALSE@@HAVE_GETENTROPY_FALSE@@HOST_WIN_TRUE@am__objects_23 = compat/getentropy_win.lo
+@HAVE_ARC4RANDOM_BUF_FALSE@@HAVE_GETENTROPY_FALSE@@HOST_MIDIPIX_TRUE@am__objects_20 = compat/getentropy_linux.lo
+@HAVE_ARC4RANDOM_BUF_FALSE@@HAVE_GETENTROPY_FALSE@@HOST_NETBSD_TRUE@am__objects_21 = compat/getentropy_netbsd.lo
+@HAVE_ARC4RANDOM_BUF_FALSE@@HAVE_GETENTROPY_FALSE@@HOST_DARWIN_TRUE@am__objects_22 = compat/getentropy_osx.lo
+@HAVE_ARC4RANDOM_BUF_FALSE@@HAVE_GETENTROPY_FALSE@@HOST_SOLARIS_TRUE@am__objects_23 = compat/getentropy_solaris.lo
+@HAVE_ARC4RANDOM_BUF_FALSE@@HAVE_GETENTROPY_FALSE@@HOST_WIN_TRUE@am__objects_24 = compat/getentropy_win.lo
am_libcompat_la_OBJECTS = $(am__objects_1) $(am__objects_2) \
$(am__objects_3) $(am__objects_4) $(am__objects_5) \
$(am__objects_6) $(am__objects_7) $(am__objects_8) \
@@ -248,7 +250,7 @@
$(am__objects_12) $(am__objects_13) $(am__objects_14) \
$(am__objects_15) $(am__objects_16) $(am__objects_17) \
$(am__objects_18) $(am__objects_19) $(am__objects_20) \
- $(am__objects_21) $(am__objects_22) $(am__objects_23)
+ $(am__objects_21) $(am__objects_22) $(am__objects_23) $(am__objects_24)
libcompat_la_OBJECTS = $(am_libcompat_la_OBJECTS)
AM_V_lt = $(am__v_lt_@AM_V@)
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
@@ -1019,7 +1021,7 @@
$(am__append_20) $(am__append_21) $(am__append_22) \
$(am__append_23) $(am__append_24) $(am__append_25) \
$(am__append_26) $(am__append_27) $(am__append_28) \
- $(am__append_29) $(am__append_30) $(am__append_31)
+ $(am__append_29) $(am__append_30) $(am__append_31) $(am__append_32)
libcompat_la_LIBADD = $(PLATFORM_LDADD)
# rc4
diff -ru libressl-2.7.2.orig/include/compat/machine/endian.h libressl-2.7.2/include/compat/machine/endian.h
--- libressl-2.7.2.orig/include/compat/machine/endian.h 2017-11-04 21:04:56.000000000 +0100
+++ libressl-2.7.2/include/compat/machine/endian.h 2018-04-03 18:31:43.855341237 +0200
@@ -21,7 +21,7 @@
#define BYTE_ORDER BIG_ENDIAN
#endif
-#elif defined(__linux__)
+#elif defined(__linux__) || defined(__midipix__)
#include <endian.h>
#elif defined(__sun) || defined(_AIX) || defined(__hpux)
diff -ru libressl-2.7.2.orig/man/Makefile.am libressl-2.7.2/man/Makefile.am
--- libressl-2.7.2.orig/man/Makefile.am 2018-04-01 04:14:42.000000000 +0200
+++ libressl-2.7.2/man/Makefile.am 2018-04-03 19:20:55.198107774 +0200
@@ -2668,14 +2668,6 @@
ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/LHASH_DOALL_ARG_FN_TYPE.3"
ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/LHASH_DOALL_FN_TYPE.3"
ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/LHASH_HASH_FN_TYPE.3"
- ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/lh_<type>_delete.3"
- ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/lh_<type>_doall.3"
- ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/lh_<type>_doall_arg.3"
- ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/lh_<type>_error.3"
- ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/lh_<type>_free.3"
- ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/lh_<type>_insert.3"
- ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/lh_<type>_new.3"
- ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/lh_<type>_retrieve.3"
ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/lh_delete.3"
ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/lh_doall.3"
ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/lh_doall_arg.3"
@@ -5008,14 +5000,6 @@
-rm -f "$(DESTDIR)$(mandir)/man3/LHASH_DOALL_ARG_FN_TYPE.3"
-rm -f "$(DESTDIR)$(mandir)/man3/LHASH_DOALL_FN_TYPE.3"
-rm -f "$(DESTDIR)$(mandir)/man3/LHASH_HASH_FN_TYPE.3"
- -rm -f "$(DESTDIR)$(mandir)/man3/lh_<type>_delete.3"
- -rm -f "$(DESTDIR)$(mandir)/man3/lh_<type>_doall.3"
- -rm -f "$(DESTDIR)$(mandir)/man3/lh_<type>_doall_arg.3"
- -rm -f "$(DESTDIR)$(mandir)/man3/lh_<type>_error.3"
- -rm -f "$(DESTDIR)$(mandir)/man3/lh_<type>_free.3"
- -rm -f "$(DESTDIR)$(mandir)/man3/lh_<type>_insert.3"
- -rm -f "$(DESTDIR)$(mandir)/man3/lh_<type>_new.3"
- -rm -f "$(DESTDIR)$(mandir)/man3/lh_<type>_retrieve.3"
-rm -f "$(DESTDIR)$(mandir)/man3/lh_delete.3"
-rm -f "$(DESTDIR)$(mandir)/man3/lh_doall.3"
-rm -f "$(DESTDIR)$(mandir)/man3/lh_doall_arg.3"
diff -ru libressl-2.7.2.orig/man/Makefile.in libressl-2.7.2/man/Makefile.in
--- libressl-2.7.2.orig/man/Makefile.in 2018-04-01 04:14:53.000000000 +0200
+++ libressl-2.7.2/man/Makefile.in 2018-04-03 19:21:17.461794872 +0200
@@ -2960,14 +2960,6 @@
ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/LHASH_DOALL_ARG_FN_TYPE.3"
ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/LHASH_DOALL_FN_TYPE.3"
ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/LHASH_HASH_FN_TYPE.3"
- ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/lh_<type>_delete.3"
- ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/lh_<type>_doall.3"
- ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/lh_<type>_doall_arg.3"
- ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/lh_<type>_error.3"
- ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/lh_<type>_free.3"
- ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/lh_<type>_insert.3"
- ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/lh_<type>_new.3"
- ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/lh_<type>_retrieve.3"
ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/lh_delete.3"
ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/lh_doall.3"
ln -sf "lh_new.3" "$(DESTDIR)$(mandir)/man3/lh_doall_arg.3"
@@ -5300,14 +5292,6 @@
-rm -f "$(DESTDIR)$(mandir)/man3/LHASH_DOALL_ARG_FN_TYPE.3"
-rm -f "$(DESTDIR)$(mandir)/man3/LHASH_DOALL_FN_TYPE.3"
-rm -f "$(DESTDIR)$(mandir)/man3/LHASH_HASH_FN_TYPE.3"
- -rm -f "$(DESTDIR)$(mandir)/man3/lh_<type>_delete.3"
- -rm -f "$(DESTDIR)$(mandir)/man3/lh_<type>_doall.3"
- -rm -f "$(DESTDIR)$(mandir)/man3/lh_<type>_doall_arg.3"
- -rm -f "$(DESTDIR)$(mandir)/man3/lh_<type>_error.3"
- -rm -f "$(DESTDIR)$(mandir)/man3/lh_<type>_free.3"
- -rm -f "$(DESTDIR)$(mandir)/man3/lh_<type>_insert.3"
- -rm -f "$(DESTDIR)$(mandir)/man3/lh_<type>_new.3"
- -rm -f "$(DESTDIR)$(mandir)/man3/lh_<type>_retrieve.3"
-rm -f "$(DESTDIR)$(mandir)/man3/lh_delete.3"
-rm -f "$(DESTDIR)$(mandir)/man3/lh_doall.3"
-rm -f "$(DESTDIR)$(mandir)/man3/lh_doall_arg.3"