Lines Matching refs:ch
66 cbc_encrypt(cbc_handle_t *ch, uint8_t *data, size_t datalen,
73 if (!IS_P2ALIGNED(datalen, ch->blocklen)) {
80 for (i = 0; i < datalen; i += ch->blocklen) {
81 cbc_xorblock(lastp, thisp, ch->blocklen);
83 ch->encrypt(ch->ks, thisp);
85 thisp += ch->blocklen;
88 bcopy(lastp, IV, ch->blocklen);
93 cbc_decrypt(cbc_handle_t *ch, uint8_t *data, size_t datalen,
101 if (!IS_P2ALIGNED(datalen, ch->blocklen)) {
108 for (i = 0; i < datalen; i += ch->blocklen) {
111 bcopy(thisp, cbcblock, ch->blocklen);
114 ch->decrypt(ch->ks, thisp);
116 cbc_xorblock(lastp, thisp, ch->blocklen);
119 bcopy(cbcblock, lastp, ch->blocklen);
120 thisp += ch->blocklen;
127 cbc_makehandle(cbc_handle_t *ch, void *cookie, uint32_t keysize,
132 ch->ks = cookie;
133 ch->keylen = keysize;
134 ch->blocklen = blocksize;
135 ch->ivlen = ivsize;
136 ch->encrypt = encrypt;
137 ch->decrypt = decrypt;