FFmpeg
4.4.2
libavutil
ripemd.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2007 Michael Niedermayer <michaelni@gmx.at>
3
* Copyright (C) 2013 James Almer <jamrial@gmail.com>
4
*
5
* This file is part of FFmpeg.
6
*
7
* FFmpeg is free software; you can redistribute it and/or
8
* modify it under the terms of the GNU Lesser General Public
9
* License as published by the Free Software Foundation; either
10
* version 2.1 of the License, or (at your option) any later version.
11
*
12
* FFmpeg is distributed in the hope that it will be useful,
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15
* Lesser General Public License for more details.
16
*
17
* You should have received a copy of the GNU Lesser General Public
18
* License along with FFmpeg; if not, write to the Free Software
19
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20
*/
21
22
/**
23
* @file
24
* @ingroup lavu_ripemd
25
* Public header for RIPEMD hash function implementation.
26
*/
27
28
#ifndef AVUTIL_RIPEMD_H
29
#define AVUTIL_RIPEMD_H
30
31
#include <stddef.h>
32
#include <stdint.h>
33
34
#include "
attributes.h
"
35
#include "
version.h
"
36
37
/**
38
* @defgroup lavu_ripemd RIPEMD
39
* @ingroup lavu_hash
40
* RIPEMD hash function implementation.
41
*
42
* @{
43
*/
44
45
extern
const
int
av_ripemd_size
;
46
47
struct
AVRIPEMD;
48
49
/**
50
* Allocate an AVRIPEMD context.
51
*/
52
struct
AVRIPEMD *
av_ripemd_alloc
(
void
);
53
54
/**
55
* Initialize RIPEMD hashing.
56
*
57
* @param context pointer to the function context (of size av_ripemd_size)
58
* @param bits number of bits in digest (128, 160, 256 or 320 bits)
59
* @return zero if initialization succeeded, -1 otherwise
60
*/
61
int
av_ripemd_init
(
struct
AVRIPEMD* context,
int
bits);
62
63
/**
64
* Update hash value.
65
*
66
* @param context hash function context
67
* @param data input data to update hash with
68
* @param len input data length
69
*/
70
#if FF_API_CRYPTO_SIZE_T
71
void
av_ripemd_update
(
struct
AVRIPEMD* context,
const
uint8_t* data,
unsigned
int
len);
72
#else
73
void
av_ripemd_update
(
struct
AVRIPEMD* context,
const
uint8_t* data,
size_t
len);
74
#endif
75
76
/**
77
* Finish hashing and output digest value.
78
*
79
* @param context hash function context
80
* @param digest buffer where output digest value is stored
81
*/
82
void
av_ripemd_final
(
struct
AVRIPEMD* context, uint8_t *digest);
83
84
/**
85
* @}
86
*/
87
88
#endif
/* AVUTIL_RIPEMD_H */
av_ripemd_alloc
struct AVRIPEMD * av_ripemd_alloc(void)
Allocate an AVRIPEMD context.
av_ripemd_update
void av_ripemd_update(struct AVRIPEMD *context, const uint8_t *data, unsigned int len)
Update hash value.
av_ripemd_init
int av_ripemd_init(struct AVRIPEMD *context, int bits)
Initialize RIPEMD hashing.
av_ripemd_final
void av_ripemd_final(struct AVRIPEMD *context, uint8_t *digest)
Finish hashing and output digest value.
attributes.h
version.h
av_ripemd_size
const int av_ripemd_size
Generated by
1.8.17