summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2015-06-01 11:29:01 +0200
committerMichael Niedermayer <michaelni@gmx.at>2015-06-01 11:29:05 +0200
commit589d39c768f74d97ff5be9cedbaaac00aa240c6d (patch)
tree1353c9c339692a69538e13c1947d9304ac2ba527
parent8939667b7087c71067a005b8473ded0e47c74259 (diff)
parent63ce9fd23cfa5ac0d9a862be0da138108dc1c505 (diff)
Merge commit '63ce9fd23cfa5ac0d9a862be0da138108dc1c505'
* commit '63ce9fd23cfa5ac0d9a862be0da138108dc1c505': rtmpdh: Use GMP functions directly, instead of nettle wrappers Merged-by: Michael Niedermayer <michaelni@gmx.at>
-rwxr-xr-xconfigure6
-rw-r--r--libavformat/rtmpdh.c13
-rw-r--r--libavformat/rtmpdh.h5
3 files changed, 14 insertions, 10 deletions
diff --git a/configure b/configure
index f691655a83..aabcdc253f 100755
--- a/configure
+++ b/configure
@@ -1895,6 +1895,7 @@ CONFIG_EXTRA="
fmtconvert
frame_thread_encoder
gcrypt
+ gmp
golomb
gplv3
h263dsp
@@ -1921,7 +1922,6 @@ CONFIG_EXTRA="
mpegaudiodsp
mpegvideo
mpegvideoenc
- nettle
pixblockdsp
qpeldsp
qsv
@@ -2617,7 +2617,7 @@ x11grab_xcb_indev_deps="libxcb"
# protocols
bluray_protocol_deps="libbluray"
ffrtmpcrypt_protocol_deps="!librtmp_protocol"
-ffrtmpcrypt_protocol_deps_any="gcrypt nettle openssl"
+ffrtmpcrypt_protocol_deps_any="gcrypt gmp openssl"
ffrtmpcrypt_protocol_select="tcp_protocol"
ffrtmphttp_protocol_deps="!librtmp_protocol"
ffrtmphttp_protocol_select="http_protocol"
@@ -5204,7 +5204,7 @@ enabled openssl && { check_lib openssl/ssl.h SSL_library_init -lssl -l
enabled qtkit_indev && { check_header_oc QTKit/QTKit.h || disable qtkit_indev; }
if enabled gnutls; then
- { check_lib nettle/bignum.h nettle_mpz_get_str_256 -lnettle -lhogweed -lgmp && enable nettle; } ||
+ { check_lib2 gmp.h mpz_export -lgmp && enable gmp; } ||
{ check_lib gcrypt.h gcry_mpi_new -lgcrypt && enable gcrypt; }
fi
diff --git a/libavformat/rtmpdh.c b/libavformat/rtmpdh.c
index 1190fdca0f..91b1349cca 100644
--- a/libavformat/rtmpdh.c
+++ b/libavformat/rtmpdh.c
@@ -46,8 +46,8 @@
"F71C35FDAD44CFD2D74F9208BE258FF324943328F67329C0" \
"FFFFFFFFFFFFFFFF"
-#if CONFIG_NETTLE || CONFIG_GCRYPT
-#if CONFIG_NETTLE
+#if CONFIG_GMP || CONFIG_GCRYPT
+#if CONFIG_GMP
#define bn_new(bn) \
do { \
bn = av_malloc(sizeof(*bn)); \
@@ -65,12 +65,17 @@
#define bn_sub_word(bn, w) mpz_sub_ui(bn, bn, w)
#define bn_cmp_1(bn) mpz_cmp_ui(bn, 1)
#define bn_num_bytes(bn) (mpz_sizeinbase(bn, 2) + 7) / 8
-#define bn_bn2bin(bn, buf, len) nettle_mpz_get_str_256(len, buf, bn)
+#define bn_bn2bin(bn, buf, len) \
+ do { \
+ memset(buf, 0, len); \
+ if (bn_num_bytes(bn) <= len) \
+ mpz_export(buf, NULL, 1, 1, 0, 0, bn); \
+ } while (0)
#define bn_bin2bn(bn, buf, len) \
do { \
bn_new(bn); \
if (bn) \
- nettle_mpz_set_str_256_u(bn, len, buf); \
+ mpz_import(bn, len, 1, 1, 0, 0, buf); \
} while (0)
#define bn_hex2bn(bn, buf, ret) \
do { \
diff --git a/libavformat/rtmpdh.h b/libavformat/rtmpdh.h
index 14fd222182..95b2620248 100644
--- a/libavformat/rtmpdh.h
+++ b/libavformat/rtmpdh.h
@@ -25,10 +25,9 @@
#include "avformat.h"
#include "config.h"
-#if CONFIG_NETTLE || CONFIG_GCRYPT
-#if CONFIG_NETTLE
+#if CONFIG_GMP || CONFIG_GCRYPT
+#if CONFIG_GMP
#include <gmp.h>
-#include <nettle/bignum.h>
typedef mpz_ptr FFBigNum;
#elif CONFIG_GCRYPT