Module: libav Branch: master Commit: 8337b5db967ecadab4bb65c272cb47d350ecb83b
Author: Samuel Pitoiset <samuel.pitoi...@gmail.com> Committer: Martin Storsjö <mar...@martin.st> Date: Thu Aug 16 22:27:15 2012 +0200 rtmpdh: Do not generate the same private key every time when using libnettle Replace mpz_random by mpz_urandomb with a random state initialization in order to improve the randomness. Signed-off-by: Martin Storsjö <mar...@martin.st> --- libavformat/rtmpdh.c | 10 +++++++++- 1 files changed, 9 insertions(+), 1 deletions(-) diff --git a/libavformat/rtmpdh.c b/libavformat/rtmpdh.c index 92bce7a..38c2f3d 100644 --- a/libavformat/rtmpdh.c +++ b/libavformat/rtmpdh.c @@ -28,6 +28,7 @@ #include "config.h" #include "rtmpdh.h" +#include "libavutil/random_seed.h" #define P1024 \ "FFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD1" \ @@ -78,7 +79,14 @@ ret = (mpz_set_str(bn, buf, 16) == 0); \ } while (0) #define bn_modexp(bn, y, q, p) mpz_powm(bn, y, q, p) -#define bn_random(bn, num_bytes) mpz_random(bn, num_bytes); +#define bn_random(bn, num_bytes) \ + do { \ + gmp_randstate_t rs; \ + gmp_randinit_mt(rs); \ + gmp_randseed_ui(rs, av_get_random_seed()); \ + mpz_urandomb(bn, rs, num_bytes); \ + gmp_randclear(rs); \ + } while (0) #elif CONFIG_GCRYPT #define bn_new(bn) bn = gcry_mpi_new(1) #define bn_free(bn) gcry_mpi_release(bn) _______________________________________________ libav-commits mailing list libav-commits@libav.org https://lists.libav.org/mailman/listinfo/libav-commits