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