Lines Matching full:sa

33 		       "SA count=%u tx=%u\n",  in nsim_dbg_netdev_ops_read()
37 struct nsim_sa *sap = &ipsec->sa[i]; in nsim_dbg_netdev_ops_read()
43 "sa[%i] %cx ipaddr=0x%08x %08x %08x %08x\n", in nsim_dbg_netdev_ops_read()
47 "sa[%i] spi=0x%08x proto=0x%x salt=0x%08x crypt=%d\n", in nsim_dbg_netdev_ops_read()
51 "sa[%i] key=0x%08x %08x %08x %08x\n", in nsim_dbg_netdev_ops_read()
75 /* search sa table */ in nsim_ipsec_find_empty_idx()
77 if (!ipsec->sa[i].used) in nsim_ipsec_find_empty_idx()
134 struct nsim_sa sa; in nsim_ipsec_add_sa() local
160 NL_SET_ERR_MSG_MOD(extack, "No space for SA in Rx table!"); in nsim_ipsec_add_sa()
165 memset(&sa, 0, sizeof(sa)); in nsim_ipsec_add_sa()
166 sa.used = true; in nsim_ipsec_add_sa()
167 sa.xs = xs; in nsim_ipsec_add_sa()
169 if (sa.xs->id.proto & IPPROTO_ESP) in nsim_ipsec_add_sa()
170 sa.crypt = xs->ealg || xs->aead; in nsim_ipsec_add_sa()
173 ret = nsim_ipsec_parse_proto_keys(xs, sa.key, &sa.salt); in nsim_ipsec_add_sa()
175 NL_SET_ERR_MSG_MOD(extack, "Failed to get key data for SA table"); in nsim_ipsec_add_sa()
180 sa.rx = true; in nsim_ipsec_add_sa()
183 memcpy(sa.ipaddr, &xs->id.daddr.a6, 16); in nsim_ipsec_add_sa()
185 memcpy(&sa.ipaddr[3], &xs->id.daddr.a4, 4); in nsim_ipsec_add_sa()
189 memcpy(&ipsec->sa[sa_idx], &sa, sizeof(sa)); in nsim_ipsec_add_sa()
207 if (!ipsec->sa[sa_idx].used) { in nsim_ipsec_del_sa()
208 netdev_err(ns->netdev, "Invalid SA for delete sa_idx=%d\n", in nsim_ipsec_del_sa()
213 memset(&ipsec->sa[sa_idx], 0, sizeof(struct nsim_sa)); in nsim_ipsec_del_sa()
264 tsa = &ipsec->sa[sa_idx]; in nsim_ipsec_tx()