Add AV_HASH_MAX_SIZE.
authorReimar Döffinger <Reimar.Doeffinger@gmx.de>
Tue, 14 May 2013 20:15:45 +0000 (22:15 +0200)
committerReimar Döffinger <Reimar.Doeffinger@gmx.de>
Wed, 29 May 2013 20:31:16 +0000 (22:31 +0200)
Makes it easier to use static allocation for the result buffer.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
libavutil/hash.h

index 7ecb3e7..5dd8712 100644 (file)
@@ -49,6 +49,18 @@ const char *av_hash_names(int i);
 const char *av_hash_get_name(const struct AVHashContext *ctx);
 
 /**
+ * Maximum value that av_hash_get_size will currently return.
+ *
+ * You can use this if you absolutely want or need to use static allocation
+ * and are fine with not supporting hashes newly added to libavutil without
+ * recompilation.
+ * Note that you still need to check against av_hash_get_size, adding new hashes
+ * with larger sizes will not be considered an ABI change and should not cause
+ * your code to overflow a buffer.
+ */
+#define AV_HASH_MAX_SIZE 32
+
+/**
  * Get the size of the resulting hash value in bytes.
  *
  * The pointer passed to av_hash_final have space for at least this many bytes.