comparison cfb_setiv.c @ 15:6362d3854bb4 libtomcrypt-orig

0.96 release of LibTomCrypt
author Matt Johnston <matt@ucc.asn.au>
date Tue, 15 Jun 2004 14:07:21 +0000
parents
children
comparison
equal deleted inserted replaced
3:7faae8f46238 15:6362d3854bb4
1 /* LibTomCrypt, modular cryptographic library -- Tom St Denis
2 *
3 * LibTomCrypt is a library that provides various cryptographic
4 * algorithms in a highly modular and flexible manner.
5 *
6 * The library is free for all purposes without any express
7 * guarantee it works.
8 *
9 * Tom St Denis, [email protected], http://libtomcrypt.org
10 */
11
12 #include "mycrypt.h"
13
14 #ifdef CFB
15
16 int cfb_setiv(const unsigned char *IV, unsigned long len, symmetric_CFB *cfb)
17 {
18 int err;
19
20 _ARGCHK(IV != NULL);
21 _ARGCHK(cfb != NULL);
22
23 if ((err = cipher_is_valid(cfb->cipher)) != CRYPT_OK) {
24 return err;
25 }
26
27 if (len != (unsigned long)cfb->blocklen) {
28 return CRYPT_INVALID_ARG;
29 }
30
31 /* force next block */
32 cfb->padlen = 0;
33 cipher_descriptor[cfb->cipher].ecb_encrypt(IV, cfb->IV, &cfb->key);
34
35 return CRYPT_OK;
36 }
37
38 #endif
39