diff options
Diffstat (limited to 'lib/nettle/gost/gost28147.h')
-rw-r--r-- | lib/nettle/gost/gost28147.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/lib/nettle/gost/gost28147.h b/lib/nettle/gost/gost28147.h index 7329d2ed8b..0e68db34ca 100644 --- a/lib/nettle/gost/gost28147.h +++ b/lib/nettle/gost/gost28147.h @@ -65,6 +65,10 @@ extern "C" { #define gost28147_encrypt_for_cfb _gnutls_gost28147_encrypt_for_cfb #define gost28147_decrypt _gnutls_gost28147_decrypt +#define gost28147_cnt_init _gnutls_gost28147_cnt_init +#define gost28147_cnt_set_iv _gnutls_gost28147_cnt_set_iv +#define gost28147_cnt_crypt _gnutls_gost28147_cnt_crypt + #define GOST28147_KEY_SIZE 32 #define GOST28147_BLOCK_SIZE 8 @@ -115,6 +119,27 @@ gost28147_encrypt_for_cfb(struct gost28147_ctx *ctx, size_t length, uint8_t *dst, const uint8_t *src); +struct gost28147_cnt_ctx { + struct gost28147_ctx ctx; + size_t bytes; + uint32_t iv[2]; + uint8_t buffer[GOST28147_BLOCK_SIZE]; +}; + +void +gost28147_cnt_init(struct gost28147_cnt_ctx *ctx, + const uint8_t *key, + const struct gost28147_param *param); + +void +gost28147_cnt_set_iv(struct gost28147_cnt_ctx *ctx, + const uint8_t *iv); + +void +gost28147_cnt_crypt(struct gost28147_cnt_ctx *ctx, + size_t length, uint8_t *dst, + const uint8_t *src); + #ifdef __cplusplus } #endif |