Lines Matching refs:rsa
183 struct rx_sa *rsa;
186 hash_for_each_possible_rcu(ipsec->rx_sa_list, rsa, hlist,
188 if (spi == rsa->xs->id.spi &&
189 ((ip4 && *daddr == rsa->xs->id.daddr.a4) ||
190 (!ip4 && !memcmp(daddr, &rsa->xs->id.daddr.a6,
191 sizeof(rsa->xs->id.daddr.a6)))) &&
192 proto == rsa->xs->id.proto) {
193 ret = rsa->xs;
290 struct rx_sa rsa;
305 memset(&rsa, 0, sizeof(rsa));
306 rsa.used = true;
307 rsa.xs = xs;
309 if (rsa.xs->id.proto & IPPROTO_ESP)
310 rsa.decrypt = xs->ealg || xs->aead;
313 ret = ixgbevf_ipsec_parse_proto_keys(xs, rsa.key, &rsa.salt);
321 memcpy(rsa.ipaddr, &xs->id.daddr.a6, 16);
323 memcpy(&rsa.ipaddr[3], &xs->id.daddr.a4, 4);
325 rsa.mode = IXGBE_RXMOD_VALID;
326 if (rsa.xs->id.proto & IPPROTO_ESP)
327 rsa.mode |= IXGBE_RXMOD_PROTO_ESP;
328 if (rsa.decrypt)
329 rsa.mode |= IXGBE_RXMOD_DECRYPT;
330 if (rsa.xs->props.family == AF_INET6)
331 rsa.mode |= IXGBE_RXMOD_IPV6;
336 rsa.pfsa = ret;
339 memcpy(&ipsec->rx_tbl[sa_idx], &rsa, sizeof(rsa));
347 (__force u32)rsa.xs->id.spi);