| 149 | } |
| 150 | |
| 151 | void av_hash_init(AVHashContext *ctx) |
| 152 | { |
| 153 | switch (ctx->type) { |
| 154 | case MD5: av_md5_init(ctx->ctx); break; |
| 155 | case MURMUR3: av_murmur3_init(ctx->ctx); break; |
| 156 | case RIPEMD128: av_ripemd_init(ctx->ctx, 128); break; |
| 157 | case RIPEMD160: av_ripemd_init(ctx->ctx, 160); break; |
| 158 | case RIPEMD256: av_ripemd_init(ctx->ctx, 256); break; |
| 159 | case RIPEMD320: av_ripemd_init(ctx->ctx, 320); break; |
| 160 | case SHA160: av_sha_init(ctx->ctx, 160); break; |
| 161 | case SHA224: av_sha_init(ctx->ctx, 224); break; |
| 162 | case SHA256: av_sha_init(ctx->ctx, 256); break; |
| 163 | case SHA512_224: av_sha512_init(ctx->ctx, 224); break; |
| 164 | case SHA512_256: av_sha512_init(ctx->ctx, 256); break; |
| 165 | case SHA384: av_sha512_init(ctx->ctx, 384); break; |
| 166 | case SHA512: av_sha512_init(ctx->ctx, 512); break; |
| 167 | case CRC32: ctx->crc = UINT32_MAX; break; |
| 168 | case ADLER32: ctx->crc = 1; break; |
| 169 | } |
| 170 | } |
| 171 | |
| 172 | void av_hash_update(AVHashContext *ctx, const uint8_t *src, size_t len) |
| 173 | { |