Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
arch
s390
crypto
sha.h
Go to the documentation of this file.
1
/*
2
* Cryptographic API.
3
*
4
* s390 generic implementation of the SHA Secure Hash Algorithms.
5
*
6
* Copyright IBM Corp. 2007
7
* Author(s): Jan Glauber (
[email protected]
)
8
*
9
* This program is free software; you can redistribute it and/or modify it
10
* under the terms of the GNU General Public License as published by the Free
11
* Software Foundation; either version 2 of the License, or (at your option)
12
* any later version.
13
*
14
*/
15
#ifndef _CRYPTO_ARCH_S390_SHA_H
16
#define _CRYPTO_ARCH_S390_SHA_H
17
18
#include <
linux/crypto.h
>
19
#include <crypto/sha.h>
20
21
/* must be big enough for the largest SHA variant */
22
#define SHA_MAX_STATE_SIZE 16
23
#define SHA_MAX_BLOCK_SIZE SHA512_BLOCK_SIZE
24
25
struct
s390_sha_ctx
{
26
u64
count
;
/* message length in bytes */
27
u32
state
[
SHA_MAX_STATE_SIZE
];
28
u8
buf
[2 *
SHA_MAX_BLOCK_SIZE
];
29
int
func
;
/* KIMD function to use */
30
};
31
32
struct
shash_desc
;
33
34
int
s390_sha_update
(
struct
shash_desc
*
desc
,
const
u8
*
data
,
unsigned
int
len);
35
int
s390_sha_final
(
struct
shash_desc
*
desc
,
u8
*
out
);
36
37
#endif
Generated on Thu Jan 10 2013 13:16:36 for Linux Kernel by
1.8.2