ldns documentation

- Main Page
- Related Pages
- Data Structures
- Files

- File List
- Globals

Data Structures | Macros | Functions
sha1.h File Reference

Go to the source code of this file.

## Data Structures
struct | ldns_sha1_ctx

## Macros
#define | LDNS_SHA1_BLOCK_LENGTH 64
#define | LDNS_SHA1_DIGEST_LENGTH 20

## Functions
void | ldns_sha1_init (ldns_sha1_ctx *context)
void | ldns_sha1_transform (uint32_t state[5], const unsigned char buffer[64])
void | ldns_sha1_update (ldns_sha1_ctx *context, const unsigned char *data, unsigned int len)
void | ldns_sha1_final (unsigned char digest[20], ldns_sha1_ctx *context)
unsigned char * | ldns_sha1 (unsigned char *data, unsigned int data_len, unsigned char *digest)
| Convenience function to digest a fixed block of data at once. More...

## Macro Definition Documentation

#define LDNS_SHA1_BLOCK_LENGTH 64

Definition at line 8 of file sha1.h.

#define LDNS_SHA1_DIGEST_LENGTH 20

Definition at line 9 of file sha1.h.

## Function Documentation

void ldns_sha1_init | ( | ldns_sha1_ctx * | context | ) |

Definition at line 106 of file sha1.c.

References ldns_sha1_ctx::count, and ldns_sha1_ctx::state.

void ldns_sha1_transform | ( | uint32_t | state[5],
|  | const unsigned char | buffer[64]
| ) |  |

Definition at line 47 of file sha1.c.

References LDNS_SHA1_BLOCK_LENGTH, R0, R1, R2, R3, and R4.

void ldns_sha1_update | ( | ldns_sha1_ctx * | context,
|  | const unsigned char * | data,
|  | unsigned int | len
| ) |  |

Definition at line 121 of file sha1.c.

References ldns_sha1_ctx::buffer, ldns_sha1_ctx::count, ldns_sha1_transform(), and ldns_sha1_ctx::state.

void ldns_sha1_final | ( | unsigned char | digest[20],
|  | ldns_sha1_ctx * | context
| ) |  |

Definition at line 144 of file sha1.c.

References ldns_sha1_ctx::buffer, ldns_sha1_ctx::count, LDNS_SHA1_DIGEST_LENGTH, ldns_sha1_transform(), ldns_sha1_update(), and ldns_sha1_ctx::state.

unsigned char* ldns_sha1 | ( | unsigned char * | data,
|  | unsigned int | data_len,
|  | unsigned char * | digest
| ) |  |

Convenience function to digest a fixed block of data at once.

Parameters

  [in] | data | the data to digest
  [in] | data_len | the length of data in bytes
  [out] | digest | the length of data in bytes This pointer MUST have LDNS_SHA1_DIGEST_LENGTH bytes available

Returns
  the SHA1 digest of the given data

Definition at line 170 of file sha1.c.

References ldns_sha1_final(), ldns_sha1_init(), and ldns_sha1_update().