diff options
author | Colin Watson <cjwatson@debian.org> | 2012-05-17 13:04:02 +0100 |
---|---|---|
committer | Colin Watson <cjwatson@debian.org> | 2012-05-17 13:04:02 +0100 |
commit | dd5ed53e20d218607260916a6b04d1c8c5b3d88f (patch) | |
tree | c59b4dbcc610f10700945f885adf3bddc2542c26 /entropy.c | |
parent | 8241a65bf12ac53c1b7304bba7ce739aad80b8b8 (diff) | |
parent | b9bc38990c5eb5d99e28ca5af6d3491fd4a0060a (diff) |
merge 6.0p1
Diffstat (limited to 'entropy.c')
-rw-r--r-- | entropy.c | 9 |
1 files changed, 7 insertions, 2 deletions
@@ -211,9 +211,14 @@ seed_rng(void) | |||
211 | #endif | 211 | #endif |
212 | /* | 212 | /* |
213 | * OpenSSL version numbers: MNNFFPPS: major minor fix patch status | 213 | * OpenSSL version numbers: MNNFFPPS: major minor fix patch status |
214 | * We match major, minor, fix and status (not patch) | 214 | * We match major, minor, fix and status (not patch) for <1.0.0. |
215 | * After that, we acceptable compatible fix versions (so we | ||
216 | * allow 1.0.1 to work with 1.0.0). Going backwards is only allowed | ||
217 | * within a patch series. | ||
215 | */ | 218 | */ |
216 | if ((SSLeay() ^ OPENSSL_VERSION_NUMBER) & ~0xff0L) | 219 | u_long version_mask = SSLeay() >= 0x1000000f ? ~0xffff0L : ~0xff0L; |
220 | if (((SSLeay() ^ OPENSSL_VERSION_NUMBER) & version_mask) || | ||
221 | (SSLeay() >> 12) < (OPENSSL_VERSION_NUMBER >> 12)) | ||
217 | fatal("OpenSSL version mismatch. Built against %lx, you " | 222 | fatal("OpenSSL version mismatch. Built against %lx, you " |
218 | "have %lx", (u_long)OPENSSL_VERSION_NUMBER, SSLeay()); | 223 | "have %lx", (u_long)OPENSSL_VERSION_NUMBER, SSLeay()); |
219 | 224 | ||