blob: 682fe4533bfcc90f783bf9137cb4c95afcfdf063 [file] [log] [blame]
Bram Moolenaar8f4ac012014-08-10 13:38:34 +02001/* crypt.c */
Bram Moolenaaref269542016-01-19 13:22:12 +01002int crypt_method_nr_from_name(char_u *name);
3int crypt_method_nr_from_magic(char *ptr, int len);
Christian Brabandtf573c6e2021-06-20 14:02:16 +02004int crypt_works_inplace(cryptstate_T *state);
Bram Moolenaaref269542016-01-19 13:22:12 +01005int crypt_get_method_nr(buf_T *buf);
6int crypt_whole_undofile(int method_nr);
7int crypt_get_header_len(int method_nr);
Christian Brabandt226b28b2021-06-21 21:08:08 +02008int crypt_get_max_header_len(void);
Bram Moolenaaref269542016-01-19 13:22:12 +01009void crypt_set_cm_option(buf_T *buf, int method_nr);
10int crypt_self_test(void);
11cryptstate_T *crypt_create(int method_nr, char_u *key, char_u *salt, int salt_len, char_u *seed, int seed_len);
12cryptstate_T *crypt_create_from_header(int method_nr, char_u *key, char_u *header);
13cryptstate_T *crypt_create_from_file(FILE *fp, char_u *key);
14cryptstate_T *crypt_create_for_writing(int method_nr, char_u *key, char_u **header, int *header_len);
15void crypt_free_state(cryptstate_T *state);
Christian Brabandtf573c6e2021-06-20 14:02:16 +020016long crypt_encode_alloc(cryptstate_T *state, char_u *from, size_t len, char_u **newptr, int last);
17long crypt_decode_alloc(cryptstate_T *state, char_u *ptr, long len, char_u **newptr, int last);
18void crypt_encode(cryptstate_T *state, char_u *from, size_t len, char_u *to, int last);
19void crypt_encode_inplace(cryptstate_T *state, char_u *buf, size_t len, int last);
20void crypt_decode_inplace(cryptstate_T *state, char_u *buf, size_t len, int last);
Bram Moolenaaref269542016-01-19 13:22:12 +010021void crypt_free_key(char_u *key);
22void crypt_check_method(int method);
23void crypt_check_current_method(void);
24char_u *crypt_get_key(int store, int twice);
25void crypt_append_msg(buf_T *buf);
Christian Brabandtf573c6e2021-06-20 14:02:16 +020026int crypt_sodium_init(cryptstate_T *state, char_u *key, char_u *salt, int salt_len, char_u *seed, int seed_len);
Christian Brabandtf573c6e2021-06-20 14:02:16 +020027long crypt_sodium_buffer_encode(cryptstate_T *state, char_u *from, size_t len, char_u **buf_out, int last);
28long crypt_sodium_buffer_decode(cryptstate_T *state, char_u *from, size_t len, char_u **buf_out, int last);
K.Takata1a8825d2022-01-19 13:32:57 +000029int crypt_sodium_munlock(void *const addr, const size_t len);
30void crypt_sodium_randombytes_buf(void *const buf, const size_t size);
Bram Moolenaar8f4ac012014-08-10 13:38:34 +020031/* vim: set ft=c : */