Lines Matching +full:3 +full:c
2 * cast6.c - Cast6 cipher algorithm [rfc2612].
8 * Copyright (C) 2003 Kartikey Mahendra Bhatt <kartik_me@hotmail.com>.
106 key[3] ^= F1(key[4], Tr[i % 4][3], Tm[i][3]); in W()
107 key[2] ^= F2(key[3], Tr[i % 4][4], Tm[i][4]); in W()
113 int __cast6_setkey(struct cast6_ctx *c, const u8 *in_key, in __cast6_setkey() argument
130 key[2] = be32_to_cpu(p_key[2]); /* C */ in __cast6_setkey()
131 key[3] = be32_to_cpu(p_key[3]); /* D */ in __cast6_setkey()
141 c->Kr[i][0] = key[0] & 0x1f; in __cast6_setkey()
142 c->Kr[i][1] = key[2] & 0x1f; in __cast6_setkey()
143 c->Kr[i][2] = key[4] & 0x1f; in __cast6_setkey()
144 c->Kr[i][3] = key[6] & 0x1f; in __cast6_setkey()
146 c->Km[i][0] = key[7]; in __cast6_setkey()
147 c->Km[i][1] = key[5]; in __cast6_setkey()
148 c->Km[i][2] = key[3]; in __cast6_setkey()
149 c->Km[i][3] = key[1]; in __cast6_setkey()
167 block[2] ^= F1(block[3], Kr[0], Km[0]); in Q()
170 block[3] ^= F1(block[0], Kr[3], Km[3]); in Q()
177 block[3] ^= F1(block[0], Kr[3], Km[3]); in QBAR()
180 block[2] ^= F1(block[3], Kr[0], Km[0]); in QBAR()
183 void __cast6_encrypt(struct cast6_ctx *c, u8 *outbuf, const u8 *inbuf) in __cast6_encrypt() argument
194 block[3] = be32_to_cpu(src[3]); in __cast6_encrypt()
196 Km = c->Km[0]; Kr = c->Kr[0]; Q(block, Kr, Km); in __cast6_encrypt()
197 Km = c->Km[1]; Kr = c->Kr[1]; Q(block, Kr, Km); in __cast6_encrypt()
198 Km = c->Km[2]; Kr = c->Kr[2]; Q(block, Kr, Km); in __cast6_encrypt()
199 Km = c->Km[3]; Kr = c->Kr[3]; Q(block, Kr, Km); in __cast6_encrypt()
200 Km = c->Km[4]; Kr = c->Kr[4]; Q(block, Kr, Km); in __cast6_encrypt()
201 Km = c->Km[5]; Kr = c->Kr[5]; Q(block, Kr, Km); in __cast6_encrypt()
202 Km = c->Km[6]; Kr = c->Kr[6]; QBAR(block, Kr, Km); in __cast6_encrypt()
203 Km = c->Km[7]; Kr = c->Kr[7]; QBAR(block, Kr, Km); in __cast6_encrypt()
204 Km = c->Km[8]; Kr = c->Kr[8]; QBAR(block, Kr, Km); in __cast6_encrypt()
205 Km = c->Km[9]; Kr = c->Kr[9]; QBAR(block, Kr, Km); in __cast6_encrypt()
206 Km = c->Km[10]; Kr = c->Kr[10]; QBAR(block, Kr, Km); in __cast6_encrypt()
207 Km = c->Km[11]; Kr = c->Kr[11]; QBAR(block, Kr, Km); in __cast6_encrypt()
212 dst[3] = cpu_to_be32(block[3]); in __cast6_encrypt()
221 void __cast6_decrypt(struct cast6_ctx *c, u8 *outbuf, const u8 *inbuf) in __cast6_decrypt() argument
232 block[3] = be32_to_cpu(src[3]); in __cast6_decrypt()
234 Km = c->Km[11]; Kr = c->Kr[11]; Q(block, Kr, Km); in __cast6_decrypt()
235 Km = c->Km[10]; Kr = c->Kr[10]; Q(block, Kr, Km); in __cast6_decrypt()
236 Km = c->Km[9]; Kr = c->Kr[9]; Q(block, Kr, Km); in __cast6_decrypt()
237 Km = c->Km[8]; Kr = c->Kr[8]; Q(block, Kr, Km); in __cast6_decrypt()
238 Km = c->Km[7]; Kr = c->Kr[7]; Q(block, Kr, Km); in __cast6_decrypt()
239 Km = c->Km[6]; Kr = c->Kr[6]; Q(block, Kr, Km); in __cast6_decrypt()
240 Km = c->Km[5]; Kr = c->Kr[5]; QBAR(block, Kr, Km); in __cast6_decrypt()
241 Km = c->Km[4]; Kr = c->Kr[4]; QBAR(block, Kr, Km); in __cast6_decrypt()
242 Km = c->Km[3]; Kr = c->Kr[3]; QBAR(block, Kr, Km); in __cast6_decrypt()
243 Km = c->Km[2]; Kr = c->Kr[2]; QBAR(block, Kr, Km); in __cast6_decrypt()
244 Km = c->Km[1]; Kr = c->Kr[1]; QBAR(block, Kr, Km); in __cast6_decrypt()
245 Km = c->Km[0]; Kr = c->Kr[0]; QBAR(block, Kr, Km); in __cast6_decrypt()
250 dst[3] = cpu_to_be32(block[3]); in __cast6_decrypt()
266 .cra_alignmask = 3,