Skip to content

Commit 5a8c486

Browse files
committed
Support NetBSD
1 parent 16c148a commit 5a8c486

File tree

7 files changed

+21
-8
lines changed

7 files changed

+21
-8
lines changed

crypto/fipsmodule/bn/exponentiation.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,8 @@
121121

122122
#if !defined(OPENSSL_NO_ASM) && \
123123
(defined(OPENSSL_LINUX) || defined(OPENSSL_APPLE) || \
124-
defined(OPENSSL_OPENBSD) || defined(OPENSSL_FREEBSD)) && \
124+
defined(OPENSSL_OPENBSD) || defined(OPENSSL_FREEBSD) || \
125+
defined(OPENSSL_NETBSD)) && \
125126
defined(OPENSSL_AARCH64)
126127

127128
#include "../../../third_party/s2n-bignum/s2n-bignum_aws-lc.h"
@@ -1296,7 +1297,7 @@ int BN_mod_exp_mont_consttime_x2(BIGNUM *rr1, const BIGNUM *a1, const BIGNUM *p1
12961297
if (!bn_wexpand(rr2, widthn)) {
12971298
return ret;
12981299
}
1299-
1300+
13001301
/* Ensure that montgomery contexts are initialized */
13011302
if (in_mont1 == NULL) {
13021303
return ret;

crypto/fipsmodule/bn/montgomery.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,8 @@
124124

125125
#if !defined(OPENSSL_NO_ASM) && \
126126
(defined(OPENSSL_LINUX) || defined(OPENSSL_APPLE) || \
127-
defined(OPENSSL_OPENBSD) || defined(OPENSSL_FREEBSD)) && \
127+
defined(OPENSSL_OPENBSD) || defined(OPENSSL_FREEBSD) || \
128+
defined(OPENSS_NETBSD) ) && \
128129
defined(OPENSSL_AARCH64) && defined(OPENSSL_BN_ASM_MONT)
129130

130131
#include "../../../third_party/s2n-bignum/s2n-bignum_aws-lc.h"

crypto/fipsmodule/curve25519/internal.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,8 @@ int ED25519ph_verify_digest_no_self_test(
109109
#if ((defined(OPENSSL_X86_64) && !defined(MY_ASSEMBLER_IS_TOO_OLD_FOR_512AVX)) || \
110110
defined(OPENSSL_AARCH64)) && \
111111
(defined(OPENSSL_LINUX) || defined(OPENSSL_APPLE) || \
112-
defined(OPENSSL_OPENBSD) || defined(OPENSSL_FREEBSD)) && \
112+
defined(OPENSSL_OPENBSD) || defined(OPENSSL_FREEBSD) || \
113+
defined(OPENSSL_NETBSD)) && \
113114
!defined(OPENSSL_NO_ASM)
114115
#define CURVE25519_S2N_BIGNUM_CAPABLE
115116
#endif

crypto/rand_extra/internal.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@
1111
#elif defined(OPENSSL_WINDOWS)
1212
#define OPENSSL_RAND_WINDOWS
1313
#elif defined(OPENSSL_MACOS) || defined(OPENSSL_OPENBSD) || \
14-
defined(OPENSSL_FREEBSD) || defined(OPENSSL_SOLARIS) || \
14+
defined(OPENSSL_FREEBSD) || defined(OPENSS_NETBSD) || \
15+
defined(OPENSSL_SOLARIS) || \
1516
(defined(OPENSSL_LINUX) && !defined(HAVE_LINUX_RANDOM_H))
1617
#define OPENSSL_RAND_GETENTROPY
1718
#elif defined(OPENSSL_IOS)

crypto/rand_extra/urandom.c

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,11 @@
3030
#include <time.h>
3131
#include <unistd.h>
3232

33+
#if defined(OPENSSL_NETBSD)
34+
#include <sys/ioctl.h>
35+
#include <sys/rndio.h>
36+
#endif
37+
3338
#if defined(OPENSSL_LINUX)
3439
#if defined(AWS_LC_URANDOM_NEEDS_U32)
3540
// On old Linux OS: unknown type name '__u32' when include <linux/random.h>.
@@ -431,7 +436,7 @@ static int fill_with_entropy(uint8_t *out, size_t len, int block, int seed) {
431436
// Hard bail.
432437
abort();
433438
}
434-
}
439+
}
435440

436441
// Clear |errno| so it has defined value if |read| or |getrandom|
437442
// "successfully" returns zero.

crypto/ube/fork_detect.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
#if !defined(_GNU_SOURCE)
3131
#define _GNU_SOURCE // Needed for madvise() and MAP_ANONYMOUS.
3232
#endif
33-
#elif defined(OPENSSL_FREEBSD) || defined(OPENSSL_OPENBSD)
33+
#elif defined(OPENSSL_FREEBSD) || defined(OPENSSL_OPENBSD) || defined(OPENSSL_NETBSD)
3434
#define AWSLC_FORK_DETECTION_SUPPORTED
3535
// FreeBSD requires POSIX compatibility off for its syscalls
3636
// (enables __BSD_VISIBLE). Without the below line, <sys/mman.h> cannot be
@@ -114,7 +114,7 @@ static int init_fork_detect_wipeonfork(void *addr, long page_size) {
114114
#endif // defined(OPENSSL_LINUX)
115115

116116

117-
#if defined(OPENSSL_FREEBSD) || defined(OPENSSL_OPENBSD)
117+
#if defined(OPENSSL_FREEBSD) || defined(OPENSSL_OPENBSD) || defined(OPENSSL_NETBSD)
118118

119119
#include <sys/mman.h>
120120
#include <unistd.h>

include/openssl/target.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -174,6 +174,10 @@
174174
#define OPENSSL_OPENBSD
175175
#endif
176176

177+
#if defined(__NetBSD__)
178+
#define OPENSSL_NETBSD
179+
#endif
180+
177181
#if defined(__illumos__) || (defined(__sun) && defined(__SVR4))
178182
#define OPENSSL_SOLARIS
179183
#endif

0 commit comments

Comments
 (0)