diff --git a/doc/APIchanges b/doc/APIchanges index b9d7b8b569..e8c08ca769 100644 --- a/doc/APIchanges +++ b/doc/APIchanges @@ -15,6 +15,10 @@ libavutil: 2015-08-28 API changes, most recent first: +2017-xx-xx - xxxxxxxxxx + Change av_sha_update() and av_md5_sum()/av_md5_update() length + parameter type to size_t at next major bump. + 2017-05-05 - xxxxxxxxxx - lavc 57.94.100 - avcodec.h The cuvid decoders now support AVCodecContext.hw_device_ctx, which removes the requirement to set an incomplete AVCodecContext.hw_frames_ctx only to diff --git a/libavutil/md5.c b/libavutil/md5.c index 1069ef1efe..31e69925ae 100644 --- a/libavutil/md5.c +++ b/libavutil/md5.c @@ -150,7 +150,11 @@ void av_md5_init(AVMD5 *ctx) ctx->ABCD[3] = 0x67452301; } +#if FF_API_CRYPTO_SIZE_T void av_md5_update(AVMD5 *ctx, const uint8_t *src, int len) +#else +void av_md5_update(AVMD5 *ctx, const uint8_t *src, size_t len) +#endif { const uint8_t *end; int j; @@ -200,7 +204,11 @@ void av_md5_final(AVMD5 *ctx, uint8_t *dst) AV_WL32(dst + 4 * i, ctx->ABCD[3 - i]); } +#if FF_API_CRYPTO_SIZE_T void av_md5_sum(uint8_t *dst, const uint8_t *src, const int len) +#else +void av_md5_sum(uint8_t *dst, const uint8_t *src, size_t len) +#endif { AVMD5 ctx; diff --git a/libavutil/md5.h b/libavutil/md5.h index 9571c1fa46..ca72ccbf83 100644 --- a/libavutil/md5.h +++ b/libavutil/md5.h @@ -27,6 +27,7 @@ #ifndef AVUTIL_MD5_H #define AVUTIL_MD5_H +#include #include #include "attributes.h" @@ -63,7 +64,11 @@ void av_md5_init(struct AVMD5 *ctx); * @param src input data to update hash with * @param len input data length */ +#if FF_API_CRYPTO_SIZE_T void av_md5_update(struct AVMD5 *ctx, const uint8_t *src, int len); +#else +void av_md5_update(struct AVMD5 *ctx, const uint8_t *src, size_t len); +#endif /** * Finish hashing and output digest value. @@ -80,7 +85,11 @@ void av_md5_final(struct AVMD5 *ctx, uint8_t *dst); * @param src The data to hash * @param len The length of the data, in bytes */ +#if FF_API_CRYPTO_SIZE_T void av_md5_sum(uint8_t *dst, const uint8_t *src, const int len); +#else +void av_md5_sum(uint8_t *dst, const uint8_t *src, size_t len); +#endif /** * @} diff --git a/libavutil/sha.c b/libavutil/sha.c index 5b42ccf1b2..ef6fa44227 100644 --- a/libavutil/sha.c +++ b/libavutil/sha.c @@ -311,7 +311,11 @@ av_cold int av_sha_init(AVSHA *ctx, int bits) return 0; } -void av_sha_update(AVSHA* ctx, const uint8_t* data, unsigned int len) +#if FF_API_CRYPTO_SIZE_T +void av_sha_update(struct AVSHA *ctx, const uint8_t *data, unsigned int len) +#else +void av_sha_update(struct AVSHA *ctx, const uint8_t *data, size_t len) +#endif { unsigned int i, j; diff --git a/libavutil/sha.h b/libavutil/sha.h index c7558a8964..c0180e5729 100644 --- a/libavutil/sha.h +++ b/libavutil/sha.h @@ -27,6 +27,7 @@ #ifndef AVUTIL_SHA_H #define AVUTIL_SHA_H +#include #include #include "attributes.h" @@ -69,11 +70,15 @@ int av_sha_init(struct AVSHA* context, int bits); /** * Update hash value. * - * @param context hash function context + * @param ctx hash function context * @param data input data to update hash with * @param len input data length */ -void av_sha_update(struct AVSHA* context, const uint8_t* data, unsigned int len); +#if FF_API_CRYPTO_SIZE_T +void av_sha_update(struct AVSHA *ctx, const uint8_t *data, unsigned int len); +#else +void av_sha_update(struct AVSHA *ctx, const uint8_t *data, size_t len); +#endif /** * Finish hashing and output digest value. diff --git a/libavutil/version.h b/libavutil/version.h index bba39e0180..e7a657971f 100644 --- a/libavutil/version.h +++ b/libavutil/version.h @@ -135,6 +135,9 @@ #ifndef FF_API_PKT_PTS #define FF_API_PKT_PTS (LIBAVUTIL_VERSION_MAJOR < 56) #endif +#ifndef FF_API_CRYPTO_SIZE_T +#define FF_API_CRYPTO_SIZE_T (LIBAVUTIL_VERSION_MAJOR < 56) +#endif /**