blob: 177dc6f936d5c576ba8c22af4249d6b585b10d05 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
#ifndef HASH_FORMAT_H
#define HASH_FORMAT_H
struct hash_format;
/* Initialize formatting hash. Format can contain text with %{sha1} style
variables. Each hash hash can be also truncated by specifying the number
of bits to truncate to, such as %{sha1:80}. */
int hash_format_init(const char *format_string, struct hash_format **format_r,
const char **error_r);
/* Add more data to hash. */
void hash_format_loop(struct hash_format *format,
const void *data, size_t size);
/* Finish the hash and write it into given string. */
void hash_format_write(struct hash_format *format, string_t *dest);
/* Reset hash to initial state. */
void hash_format_reset(struct hash_format *format);
/* Write the hash into given string and free used memory. */
void hash_format_deinit(struct hash_format **format, string_t *dest);
/* Free used memory without writing to string. */
void hash_format_deinit_free(struct hash_format **format);
#endif
|