summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/APIchanges1
-rw-r--r--libavutil/xtea.c12
-rw-r--r--libavutil/xtea.h10
3 files changed, 23 insertions, 0 deletions
diff --git a/doc/APIchanges b/doc/APIchanges
index 5fcbabb9e4..7d1984fce9 100644
--- a/doc/APIchanges
+++ b/doc/APIchanges
@@ -18,6 +18,7 @@ API changes, most recent first:
2015-xx-xx - lavu 54.30.0
xxxxxxx - Add av_blowfish_alloc().
xxxxxxx - Add av_rc4_alloc().
+ xxxxxxx - Add av_xtea_alloc().
2015-xx-xx - lavc 56.35.0 - avcodec.h
xxxxxxxxx - Rename CODEC_FLAG* defines to AV_CODEC_FLAG*.
diff --git a/libavutil/xtea.c b/libavutil/xtea.c
index 1750cbc45a..b95f32239e 100644
--- a/libavutil/xtea.c
+++ b/libavutil/xtea.c
@@ -31,8 +31,20 @@
#include "avutil.h"
#include "common.h"
#include "intreadwrite.h"
+#include "mem.h"
#include "xtea.h"
+#if !FF_API_CRYPTO_CONTEXT
+struct AVXTEA {
+ uint32_t key[16];
+};
+#endif
+
+AVXTEA *av_xtea_alloc(void)
+{
+ return av_mallocz(sizeof(struct AVXTEA));
+}
+
void av_xtea_init(AVXTEA *ctx, const uint8_t key[16])
{
int i;
diff --git a/libavutil/xtea.h b/libavutil/xtea.h
index 6f1e71e345..4281fd8c8f 100644
--- a/libavutil/xtea.h
+++ b/libavutil/xtea.h
@@ -23,6 +23,7 @@
#define AVUTIL_XTEA_H
#include <stdint.h>
+#include "version.h"
/**
* @file
@@ -32,9 +33,18 @@
* @{
*/
+#if FF_API_CRYPTO_CONTEXT
typedef struct AVXTEA {
uint32_t key[16];
} AVXTEA;
+#else
+typedef struct AVXTEA AVXTEA;
+#endif
+
+/**
+ * Allocate an AVXTEA context.
+ */
+AVXTEA *av_xtea_alloc(void);
/**
* Initialize an AVXTEA context.