On 7/31/15, James Almer <jamr...@gmail.com> wrote: > Signed-off-by: James Almer <jamr...@gmail.com> > --- > doc/APIchanges | 3 +++ > libavutil/blowfish.c | 15 +++++++++++++++ > libavutil/blowfish.h | 10 ++++++++++ > libavutil/version.h | 5 ++++- > 4 files changed, 32 insertions(+), 1 deletion(-) > > diff --git a/doc/APIchanges b/doc/APIchanges > index 29e9da9..d222fc6 100644 > --- a/doc/APIchanges > +++ b/doc/APIchanges > @@ -15,6 +15,9 @@ libavutil: 2014-08-09 > > API changes, most recent first: > > +2015-xx-xx - lavu 54.30.0 > + xxxxxxx - Add av_blowfish_alloc(). > + > 2015-xx-xx - lavc 56.35.0 - avcodec.h > xxxxxxxxx - Rename CODEC_FLAG* defines to AV_CODEC_FLAG*. > xxxxxxxxx - Rename CODEC_CAP_* defines to AV_CODEC_CAP_*. > diff --git a/libavutil/blowfish.c b/libavutil/blowfish.c > index 3821427..4f7e4df 100644 > --- a/libavutil/blowfish.c > +++ b/libavutil/blowfish.c > @@ -24,8 +24,18 @@ > #include "avutil.h" > #include "common.h" > #include "intreadwrite.h" > +#include "mem.h" > #include "blowfish.h" > > +#if !FF_API_CRYPTO_CONTEXT > +#define AV_BF_ROUNDS 16 > + > +struct AVBlowfish { > + uint32_t p[AV_BF_ROUNDS + 2]; > + uint32_t s[4][256]; > +}; > +#endif > + > static const uint32_t orig_p[AV_BF_ROUNDS + 2] = { > 0x243F6A88, 0x85A308D3, 0x13198A2E, 0x03707344, > 0xA4093822, 0x299F31D0, 0x082EFA98, 0xEC4E6C89, > @@ -300,6 +310,11 @@ static const uint32_t orig_s[4][256] = { > + ctx->s[3][ Xl & 0xFF])\ > ^ P; > > +AVBlowfish *av_blowfish_alloc(void) > +{ > + return av_mallocz(sizeof(struct AVBlowfish)); > +} > + > av_cold void av_blowfish_init(AVBlowfish *ctx, const uint8_t *key, int > key_len) > { > uint32_t data, data_l, data_r; > diff --git a/libavutil/blowfish.h b/libavutil/blowfish.h > index 0b00453..d163fd3 100644 > --- a/libavutil/blowfish.h > +++ b/libavutil/blowfish.h > @@ -23,6 +23,7 @@ > #define AVUTIL_BLOWFISH_H > > #include <stdint.h> > +#include "version.h" > > /** > * @defgroup lavu_blowfish Blowfish > @@ -30,12 +31,21 @@ > * @{ > */ > > +#if FF_API_CRYPTO_CONTEXT > #define AV_BF_ROUNDS 16 > > typedef struct AVBlowfish { > uint32_t p[AV_BF_ROUNDS + 2]; > uint32_t s[4][256]; > } AVBlowfish; > +#else > +typedef struct AVBlowfish AVBlowfish; > +#endif > + > +/** > + * Allocate an AVBlowfish context. > + */ > +AVBlowfish *av_blowfish_alloc(void); > > /** > * Initialize an AVBlowfish context. > diff --git a/libavutil/version.h b/libavutil/version.h > index b10f3e1..653f530 100644 > --- a/libavutil/version.h > +++ b/libavutil/version.h > @@ -56,7 +56,7 @@ > */ > > #define LIBAVUTIL_VERSION_MAJOR 54 > -#define LIBAVUTIL_VERSION_MINOR 29 > +#define LIBAVUTIL_VERSION_MINOR 30 > #define LIBAVUTIL_VERSION_MICRO 100 > > #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ > @@ -125,6 +125,9 @@ > #ifndef FF_API_HMAC > #define FF_API_HMAC (LIBAVUTIL_VERSION_MAJOR < 55) > #endif > +#ifndef FF_API_CRYPTO_CONTEXT > +#define FF_API_CRYPTO_CONTEXT (LIBAVUTIL_VERSION_MAJOR < 56) > +#endif > > #ifndef FF_CONST_AVUTIL55 > #if LIBAVUTIL_VERSION_MAJOR >= 55 > -- > 2.5.0 > > _______________________________________________ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > http://ffmpeg.org/mailman/listinfo/ffmpeg-devel >
For what is this useful? _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel