1 /* LibTomCrypt, modular cryptographic library -- Tom St Denis */
2 /* SPDX-License-Identifier: Unlicense */
3 #include "tomcrypt_private.h"
4 
5 #ifdef LTC_CCM_MODE
6 
7 /**
8   Reset a CCM state to as if you just called ccm_init().  This saves the initialization time.
9   @param ccm   The CCM state to reset
10   @return CRYPT_OK on success
11 */
ccm_reset(ccm_state * ccm)12 int ccm_reset(ccm_state *ccm)
13 {
14    LTC_ARGCHK(ccm != NULL);
15    zeromem(ccm->PAD, sizeof(ccm->PAD));
16    zeromem(ccm->ctr, sizeof(ccm->ctr));
17    zeromem(ccm->CTRPAD, sizeof(ccm->CTRPAD));
18    ccm->CTRlen = 0;
19    ccm->current_ptlen = 0;
20    ccm->current_aadlen = 0;
21 
22    return CRYPT_OK;
23 }
24 
25 #endif
26