Commit ed5538dc authored by Dr. Stephen Henson's avatar Dr. Stephen Henson
Browse files

Fix memory leak when RAND is used: need to cleanup
RANDs ENGINE reference in ENGINE_cleanup().
parent b8ffcf49
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -856,7 +856,8 @@ int ENGINE_clear_defaults(void)
#endif
			!ENGINE_set_default_RAND(NULL) ||
			!ENGINE_set_default_BN_mod_exp(NULL) ||
			!ENGINE_set_default_BN_mod_exp_crt(NULL))
			!ENGINE_set_default_BN_mod_exp_crt(NULL) ||
			!RAND_set_rand_method(NULL))
		return 0;
	return 1;
	}
+3 −2
Original line number Diff line number Diff line
@@ -74,10 +74,11 @@ int RAND_set_rand_method(ENGINE *engine)
	{
	ENGINE *mtmp;
	mtmp = rand_engine;
	if (!ENGINE_init(engine))
	if (engine && !ENGINE_init(engine))
		return 0;
	rand_engine = engine;
	/* SHOULD ERROR CHECK THIS!!! */
	if(mtmp)
		ENGINE_finish(mtmp);
	return 1;
	}