1 /* LibTomCrypt, modular cryptographic library -- Tom St Denis */
2 /* SPDX-License-Identifier: Unlicense */
3 #include "tomcrypt_private.h"
4 
5 /**
6    @file cbc_done.c
7    CBC implementation, finish chain, Tom St Denis
8 */
9 
10 #ifdef LTC_CBC_MODE
11 
12 /** Terminate the chain
13   @param cbc    The CBC chain to terminate
14   @return CRYPT_OK on success
15 */
cbc_done(symmetric_CBC * cbc)16 int cbc_done(symmetric_CBC *cbc)
17 {
18    int err;
19    LTC_ARGCHK(cbc != NULL);
20 
21    if ((err = cipher_is_valid(cbc->cipher)) != CRYPT_OK) {
22       return err;
23    }
24    cipher_descriptor[cbc->cipher]->done(&cbc->key);
25    return CRYPT_OK;
26 }
27 
28 
29 
30 #endif
31