Lines Matching refs:cbc
29 int cbc_encrypt(const unsigned char *pt, unsigned char *ct, unsigned long len, symmetric_CBC *cbc) in cbc_encrypt() argument
35 LTC_ARGCHK(cbc != NULL); in cbc_encrypt()
37 if ((err = cipher_is_valid(cbc->cipher)) != CRYPT_OK) { in cbc_encrypt()
42 if (cbc->blocklen < 1 || cbc->blocklen > (int)sizeof(cbc->IV)) { in cbc_encrypt()
46 if (len % cbc->blocklen) { in cbc_encrypt()
50 if (cbc->blocklen % sizeof(LTC_FAST_TYPE)) { in cbc_encrypt()
55 if (cipher_descriptor[cbc->cipher].accel_cbc_encrypt != NULL) { in cbc_encrypt()
56 …return cipher_descriptor[cbc->cipher].accel_cbc_encrypt(pt, ct, len / cbc->blocklen, cbc->IV, &cbc… in cbc_encrypt()
61 for (x = 0; x < cbc->blocklen; x += sizeof(LTC_FAST_TYPE)) { in cbc_encrypt()
62 … *((LTC_FAST_TYPE*)((unsigned char *)cbc->IV + x)) ^= *((LTC_FAST_TYPE*)((unsigned char *)pt + x)); in cbc_encrypt()
65 for (x = 0; x < cbc->blocklen; x++) { in cbc_encrypt()
66 cbc->IV[x] ^= pt[x]; in cbc_encrypt()
71 … if ((err = cipher_descriptor[cbc->cipher].ecb_encrypt(cbc->IV, ct, &cbc->key)) != CRYPT_OK) { in cbc_encrypt()
77 for (x = 0; x < cbc->blocklen; x += sizeof(LTC_FAST_TYPE)) { in cbc_encrypt()
78 … *((LTC_FAST_TYPE*)((unsigned char *)cbc->IV + x)) = *((LTC_FAST_TYPE*)((unsigned char *)ct + x)); in cbc_encrypt()
81 for (x = 0; x < cbc->blocklen; x++) { in cbc_encrypt()
82 cbc->IV[x] = ct[x]; in cbc_encrypt()
86 ct += cbc->blocklen; in cbc_encrypt()
87 pt += cbc->blocklen; in cbc_encrypt()
88 len -= cbc->blocklen; in cbc_encrypt()