Lines Matching refs:ctx
141 void av_md5_init(AVMD5 *ctx)
143 ctx->len = 0;
145 ctx->ABCD[0] = 0x10325476;
146 ctx->ABCD[1] = 0x98badcfe;
147 ctx->ABCD[2] = 0xefcdab89;
148 ctx->ABCD[3] = 0x67452301;
151 void av_md5_update(AVMD5 *ctx, const uint8_t *src, size_t len)
156 j = ctx->len & 63;
157 ctx->len += len;
161 memcpy(ctx->block + j, src, cnt);
166 body(ctx->ABCD, ctx->block, 1);
172 memcpy(ctx->block, src, 64);
173 body(ctx->ABCD, ctx->block, 1);
178 body(ctx->ABCD, src, nblocks);
183 memcpy(ctx->block, src, len);
186 void av_md5_final(AVMD5 *ctx, uint8_t *dst)
189 uint64_t finalcount = av_le2ne64(ctx->len << 3);
191 av_md5_update(ctx, "\200", 1);
192 while ((ctx->len & 63) != 56)
193 av_md5_update(ctx, "", 1);
195 av_md5_update(ctx, (uint8_t *) &finalcount, 8);
198 AV_WL32(dst + 4 * i, ctx->ABCD[3 - i]);
203 AVMD5 ctx;
205 av_md5_init(&ctx);
206 av_md5_update(&ctx, src, len);
207 av_md5_final(&ctx, dst);