aboutsummaryrefslogtreecommitdiff
path: root/src/sha256.h
blob: c7c93672d935101dd19f47c70a52ae6999846930 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#ifndef NEOVIM_SHA256_H
#define NEOVIM_SHA256_H

typedef struct {
  UINT32_T total[2];
  UINT32_T state[8];
  char_u buffer[64];
} context_sha256_T;

void sha256_start(context_sha256_T *ctx);
void sha256_update(context_sha256_T *ctx, char_u *input,
                   UINT32_T length);
void sha256_finish(context_sha256_T *ctx, char_u digest[32]);
char_u *sha256_bytes(char_u *buf, int buf_len, char_u *salt,
                     int salt_len);
char_u *sha256_key(char_u *buf, char_u *salt, int salt_len);
int sha256_self_test(void);
void sha2_seed(char_u *header, int header_len, char_u *salt,
               int salt_len);
/* vim: set ft=c : */
#endif /* NEOVIM_SHA256_H */