mirror of
https://github.com/oasislinux/oasis.git
synced 2026-10-04 12:07:12 +02:00
42 lines
2.0 KiB
Diff
42 lines
2.0 KiB
Diff
From 3d154a079c8417779c0c83d4ce73678613ba6026 Mon Sep 17 00:00:00 2001
|
|
From: Michael Forney <mforney@mforney.org>
|
|
Date: Tue, 21 Aug 2018 15:52:34 -0700
|
|
Subject: [PATCH] Use timingsafe_memcmp if available
|
|
|
|
---
|
|
configure.ac | 2 +-
|
|
tsig.c | 4 +++-
|
|
2 files changed, 4 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/configure.ac b/configure.ac
|
|
index bd64fdb2..0ce02518 100644
|
|
--- a/configure.ac
|
|
+++ b/configure.ac
|
|
@@ -635,7 +635,7 @@ AC_CHECK_SIZEOF(void*)
|
|
AC_CHECK_SIZEOF(off_t)
|
|
AC_CHECK_FUNCS([getrandom arc4random arc4random_uniform])
|
|
AC_SEARCH_LIBS([setusercontext],[util],[AC_CHECK_HEADERS([login_cap.h],,, [AC_INCLUDES_DEFAULT])])
|
|
-AC_CHECK_FUNCS([tzset alarm chroot dup2 endpwent gethostname memset memcpy pwrite socket strcasecmp strchr strdup strerror strncasecmp strtol writev getaddrinfo getnameinfo freeaddrinfo gai_strerror sigaction sigprocmask strptime strftime localtime_r setusercontext glob initgroups setresuid setreuid setresgid setregid getpwnam mmap ppoll clock_gettime accept4 getifaddrs])
|
|
+AC_CHECK_FUNCS([tzset alarm chroot dup2 endpwent gethostname memset memcpy pwrite socket strcasecmp strchr strdup strerror strncasecmp strtol writev getaddrinfo getnameinfo freeaddrinfo gai_strerror sigaction sigprocmask strptime strftime localtime_r setusercontext glob initgroups setresuid setreuid setresgid setregid getpwnam mmap ppoll clock_gettime accept4 getifaddrs timingsafe_memcmp])
|
|
|
|
AC_CHECK_TYPE([struct mmsghdr], AC_DEFINE(HAVE_MMSGHDR, 1, [If sys/socket.h has a struct mmsghdr.]), [], [
|
|
AC_INCLUDES_DEFAULT
|
|
diff --git a/tsig.c b/tsig.c
|
|
index 8b24fd1b..e75aa231 100644
|
|
--- a/tsig.c
|
|
+++ b/tsig.c
|
|
@@ -19,7 +19,9 @@
|
|
#include "query.h"
|
|
#include "rbtree.h"
|
|
|
|
-#if !defined(HAVE_SSL) || !defined(HAVE_CRYPTO_MEMCMP)
|
|
+#if defined(HAVE_TIMINGSAFE_MEMCMP)
|
|
+#define CRYPTO_memcmp timingsafe_memcmp
|
|
+#elif !defined(HAVE_SSL) || !defined(HAVE_CRYPTO_MEMCMP)
|
|
/* we need fixed time compare */
|
|
#define CRYPTO_memcmp memcmp_fixedtime
|
|
int memcmp_fixedtime(const void *s1, const void *s2, size_t n)
|
|
--
|
|
2.31.1
|
|
|