|
Lines 211-219
Link Here
|
| 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 |
|