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()
44 "sa[%i] %cx ipaddr=%pI6c\n", in nsim_dbg_netdev_ops_read()
48 "sa[%i] %cx ipaddr=%pI4\n", in nsim_dbg_netdev_ops_read()
51 "sa[%i] spi=0x%08x proto=0x%x salt=0x%08x crypt=%d\n", in nsim_dbg_netdev_ops_read()
55 "sa[%i] key=0x%08x %08x %08x %08x\n", in nsim_dbg_netdev_ops_read()
79 /* search sa table */ in nsim_ipsec_find_empty_idx()
81 if (!ipsec->sa[i].used) in nsim_ipsec_find_empty_idx()
138 struct nsim_sa sa; in nsim_ipsec_add_sa() local
164 NL_SET_ERR_MSG_MOD(extack, "No space for SA in Rx table!"); in nsim_ipsec_add_sa()
169 memset(&sa, 0, sizeof(sa)); in nsim_ipsec_add_sa()
170 sa.used = true; in nsim_ipsec_add_sa()
171 sa.xs = xs; in nsim_ipsec_add_sa()
173 if (sa.xs->id.proto & IPPROTO_ESP) in nsim_ipsec_add_sa()
174 sa.crypt = xs->ealg || xs->aead; in nsim_ipsec_add_sa()
177 ret = nsim_ipsec_parse_proto_keys(xs, sa.key, &sa.salt); in nsim_ipsec_add_sa()
179 NL_SET_ERR_MSG_MOD(extack, "Failed to get key data for SA table"); in nsim_ipsec_add_sa()
184 sa.rx = true; in nsim_ipsec_add_sa()
187 memcpy(sa.ipaddr, &xs->id.daddr.a6, 16); in nsim_ipsec_add_sa()
189 memcpy(&sa.ipaddr[3], &xs->id.daddr.a4, 4); in nsim_ipsec_add_sa()
192 memcpy(&ipsec->sa[sa_idx], &sa, sizeof(sa)); in nsim_ipsec_add_sa()
210 if (!ipsec->sa[sa_idx].used) { in nsim_ipsec_del_sa()
211 netdev_err(ns->netdev, "Invalid SA for delete sa_idx=%d\n", in nsim_ipsec_del_sa()
216 memset(&ipsec->sa[sa_idx], 0, sizeof(struct nsim_sa)); in nsim_ipsec_del_sa()
267 tsa = &ipsec->sa[sa_idx]; in nsim_ipsec_tx()