Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Fields
hash_state Struct Reference

#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
 

Detailed Description

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.

Field Documentation

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.

u32 csr[52]

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.

struct uint64 length

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.


The documentation for this struct was generated from the following file: