FFmpeg
|
#include <stdint.h>
Go to the source code of this file.
Macros | |
#define | AV_HASH_MAX_SIZE 64 |
Maximum value that av_hash_get_size will currently return. | |
Functions | |
int | av_hash_alloc (struct AVHashContext **ctx, const char *name) |
Allocate a hash context for the algorithm specified by name. | |
const char * | av_hash_names (int i) |
Get the names of available hash algorithms. | |
const char * | av_hash_get_name (const struct AVHashContext *ctx) |
Get the name of the algorithm corresponding to the given hash context. | |
int | av_hash_get_size (const struct AVHashContext *ctx) |
Get the size of the resulting hash value in bytes. | |
void | av_hash_init (struct AVHashContext *ctx) |
Initialize or reset a hash context. | |
void | av_hash_update (struct AVHashContext *ctx, const uint8_t *src, int len) |
Update a hash context with additional data. | |
void | av_hash_final (struct AVHashContext *ctx, uint8_t *dst) |
Finalize a hash context and compute the actual hash value. | |
void | av_hash_final_bin (struct AVHashContext *ctx, uint8_t *dst, int size) |
Finalize a hash context and compute the actual hash value. | |
void | av_hash_final_hex (struct AVHashContext *ctx, uint8_t *dst, int size) |
Finalize a hash context and compute the actual hash value as a hex string. | |
void | av_hash_final_b64 (struct AVHashContext *ctx, uint8_t *dst, int size) |
Finalize a hash context and compute the actual hash value as a base64 string. | |
void | av_hash_freep (struct AVHashContext **ctx) |
Free hash context. | |
#define AV_HASH_MAX_SIZE 64 |
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.
Definition at line 61 of file hash.h.
Referenced by av_hash_final_b64(), av_hash_final_bin(), av_hash_final_hex(), finish(), md5_finish(), and writer_print_data_hash().
int av_hash_alloc | ( | struct AVHashContext ** | ctx, |
const char * | name | ||
) |
Allocate a hash context for the algorithm specified by name.
Definition at line 100 of file hash.c.
Referenced by main().
const char* av_hash_names | ( | int | i | ) |
const char* av_hash_get_name | ( | const struct AVHashContext * | ctx | ) |
Get the name of the algorithm corresponding to the given hash context.
int av_hash_get_size | ( | const struct AVHashContext * | ctx | ) |
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.
void av_hash_init | ( | struct AVHashContext * | ctx | ) |
Initialize or reset a hash context.
Definition at line 137 of file hash.c.
Referenced by check(), and writer_print_data_hash().
void av_hash_update | ( | struct AVHashContext * | ctx, |
const uint8_t * | src, | ||
int | len | ||
) |
Update a hash context with additional data.
Definition at line 158 of file hash.c.
Referenced by check(), and writer_print_data_hash().
void av_hash_final | ( | struct AVHashContext * | ctx, |
uint8_t * | dst | ||
) |
Finalize a hash context and compute the actual hash value.
Definition at line 179 of file hash.c.
Referenced by av_hash_final_b64(), av_hash_final_bin(), av_hash_final_hex(), and md5_finish().
void av_hash_final_bin | ( | struct AVHashContext * | ctx, |
uint8_t * | dst, | ||
int | size | ||
) |
void av_hash_final_hex | ( | struct AVHashContext * | ctx, |
uint8_t * | dst, | ||
int | size | ||
) |
Finalize a hash context and compute the actual hash value as a hex string.
The string is always 0-terminated. If size is smaller than 2 * hash_size + 1, the hex string is truncated.
Definition at line 211 of file hash.c.
Referenced by finish(), and writer_print_data_hash().
void av_hash_final_b64 | ( | struct AVHashContext * | ctx, |
uint8_t * | dst, | ||
int | size | ||
) |
Finalize a hash context and compute the actual hash value as a base64 string.
The string is always 0-terminated. If size is smaller than AV_BASE64_SIZE(hash_size), the base64 string is truncated.
Definition at line 221 of file hash.c.
Referenced by finish().
void av_hash_freep | ( | struct AVHashContext ** | ctx | ) |