aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Kehrer <paul.l.kehrer@gmail.com>2014-02-20 22:24:59 -0600
committerPaul Kehrer <paul.l.kehrer@gmail.com>2014-02-20 22:24:59 -0600
commit6f45b8762c3b7cc2ebaaede1e5baf4fe32d9dedf (patch)
treecefa4f160145564a81fce05a07bd34809aeb8bc6
parentf8c53ea2d857b03df1e6ff7138c711235349844f (diff)
downloadcryptography-6f45b8762c3b7cc2ebaaede1e5baf4fe32d9dedf.tar.gz
cryptography-6f45b8762c3b7cc2ebaaede1e5baf4fe32d9dedf.tar.bz2
cryptography-6f45b8762c3b7cc2ebaaede1e5baf4fe32d9dedf.zip
clear the error you get if you get a NULL engine back
-rw-r--r--cryptography/hazmat/bindings/openssl/osrandom_engine.py9
1 files changed, 5 insertions, 4 deletions
diff --git a/cryptography/hazmat/bindings/openssl/osrandom_engine.py b/cryptography/hazmat/bindings/openssl/osrandom_engine.py
index bbb3d642..01e0c5dd 100644
--- a/cryptography/hazmat/bindings/openssl/osrandom_engine.py
+++ b/cryptography/hazmat/bindings/openssl/osrandom_engine.py
@@ -175,11 +175,12 @@ static RAND_METHOD osrandom_rand = {
};
int Cryptography_add_osrandom_engine(void) {
- ENGINE *engine = ENGINE_by_id(Cryptography_osrandom_engine_id);
- if (engine != NULL) {
- // The engine has already been added,
- ENGINE_free(engine);
+ ENGINE *osrandom_engine = ENGINE_by_id(Cryptography_osrandom_engine_id);
+ if (osrandom_engine != NULL) {
+ ENGINE_free(osrandom_engine);
return 2;
+ } else {
+ ERR_clear_error();
}
ENGINE *e = ENGINE_new();