summaryrefslogtreecommitdiffstats
path: root/lib/libssl/src
diff options
context:
space:
mode:
authorreyk <reyk@openbsd.org>2014-04-16 13:57:14 +0000
committerreyk <reyk@openbsd.org>2014-04-16 13:57:14 +0000
commit3b2d57e7ee490405fb100590f96d4c0d20590e3e (patch)
tree24525a1e8c60b8349b4abcdc852583ac201e1b06 /lib/libssl/src
parentTweak network interface configuration so that after 1st attempted (diff)
downloadwireguard-openbsd-3b2d57e7ee490405fb100590f96d4c0d20590e3e.tar.xz
wireguard-openbsd-3b2d57e7ee490405fb100590f96d4c0d20590e3e.zip
Some software expects RAND_status() to return 1 for success, so always
return 1 in the arc4random backend because there is no possible error condition. Unbreaks lynx, git and friends. ok miod@ dcoppa@
Diffstat (limited to 'lib/libssl/src')
-rw-r--r--lib/libssl/src/crypto/rand/rc4_rand.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/lib/libssl/src/crypto/rand/rc4_rand.c b/lib/libssl/src/crypto/rand/rc4_rand.c
index ebfb241d538..47405b0d9ab 100644
--- a/lib/libssl/src/crypto/rand/rc4_rand.c
+++ b/lib/libssl/src/crypto/rand/rc4_rand.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: rc4_rand.c,v 1.1 2014/04/15 16:52:50 miod Exp $ */
+/* $OpenBSD: rc4_rand.c,v 1.2 2014/04/16 13:57:14 reyk Exp $ */
/*
* Copyright (c) 2014 Miodrag Vallat.
@@ -29,16 +29,24 @@ arc4_rand_bytes(unsigned char *buf, int num)
return 1;
}
+static int
+arc4_rand_status(void)
+{
+ /* no possible error condition */
+ return 1;
+}
+
static RAND_METHOD rand_arc4_meth = {
.seed = NULL, /* no external seed allowed */
.bytes = arc4_rand_bytes,
.cleanup = NULL, /* no cleanup necessary */
.add = NULL, /* no external feed allowed */
.pseudorand = arc4_rand_bytes,
- .status = NULL /* no possible error condition */
+ .status = arc4_rand_status
};
RAND_METHOD *RAND_SSLeay(void)
{
return &rand_arc4_meth;
}
+