Linux Kernel
3.7.1
|
#include <hash_alg.h>
Data Fields | |
u32 | temp_cr |
u32 | str_reg |
u32 | din_reg |
u32 | csr [52] |
u32 | csfull |
u32 | csdatain |
u32 | buffer [HASH_BLOCK_SIZE/sizeof(u32)] |
struct uint64 | length |
u8 | index |
u8 | bit_index |
struct hash_state - Hash context state. : Temporary HASH Control Register. : HASH Start Register. : HASH Data Input Register. [52]: HASH Context Swap Registers 0-39. : HASH Context Swap Registers 40 ie Status flags. : HASH Context Swap Registers 41 ie Input data. : Working buffer for messages going to the hardware. : Length of the part of message hashed so far (floor(N/64) * 64). : Valid number of bytes in buffer (N % 64). : Valid number of bits in buffer (N % 8).
This structure is used between context switches, i.e. when ongoing jobs are interupted with new jobs. When this happens we need to store intermediate results in software.
WARNING: "index" is the member of the structure, to be sure that "buffer" is aligned on a 4-bytes boundary. This is highly implementation dependent and MUST be checked whenever this code is ported on new platforms.
Definition at line 229 of file hash_alg.h.
u8 bit_index |
Definition at line 239 of file hash_alg.h.
Definition at line 236 of file hash_alg.h.
u32 csdatain |
Definition at line 235 of file hash_alg.h.
u32 csfull |
Definition at line 234 of file hash_alg.h.
Definition at line 233 of file hash_alg.h.
u32 din_reg |
Definition at line 232 of file hash_alg.h.
u8 index |
Definition at line 238 of file hash_alg.h.
Definition at line 237 of file hash_alg.h.
u32 str_reg |
Definition at line 231 of file hash_alg.h.
u32 temp_cr |
Definition at line 230 of file hash_alg.h.