FFmpeg
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
Examples
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
libavutil
sha512.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
#ifndef AVUTIL_SHA512_H
23
#define AVUTIL_SHA512_H
24
25
#include <stdint.h>
26
27
#include "
attributes.h
"
28
#include "
version.h
"
29
30
/**
31
* @defgroup lavu_sha512 SHA512
32
* @ingroup lavu_crypto
33
* @{
34
*/
35
36
extern
const
int
av_sha512_size
;
37
38
struct
AVSHA512
;
39
40
/**
41
* Allocate an AVSHA512 context.
42
*/
43
struct
AVSHA512
*
av_sha512_alloc
(
void
);
44
45
/**
46
* Initialize SHA-2 512 hashing.
47
*
48
* @param context pointer to the function context (of size av_sha512_size)
49
* @param bits number of bits in digest (224, 256, 384 or 512 bits)
50
* @return zero if initialization succeeded, -1 otherwise
51
*/
52
int
av_sha512_init
(
struct
AVSHA512
* context,
int
bits
);
53
54
/**
55
* Update hash value.
56
*
57
* @param context hash function context
58
* @param data input data to update hash with
59
* @param len input data length
60
*/
61
void
av_sha512_update
(
struct
AVSHA512
* context,
const
uint8_t
*
data
,
unsigned
int
len
);
62
63
/**
64
* Finish hashing and output digest value.
65
*
66
* @param context hash function context
67
* @param digest buffer where output digest value is stored
68
*/
69
void
av_sha512_final
(
struct
AVSHA512
* context,
uint8_t
*digest);
70
71
/**
72
* @}
73
*/
74
75
#endif
/* AVUTIL_SHA512_H */
Generated on Sun Jul 20 2014 23:06:08 for FFmpeg by
1.8.2