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 Sep 14 2014 18:56:17 for FFmpeg by
1.8.2