Lines Matching refs:xs

42 		if (sap->xs->props.family == AF_INET6)  in nsim_dbg_netdev_ops_read()
52 i, be32_to_cpu(sap->xs->id.spi), in nsim_dbg_netdev_ops_read()
53 sap->xs->id.proto, sap->salt, sap->crypt); in nsim_dbg_netdev_ops_read()
88 static int nsim_ipsec_parse_proto_keys(struct xfrm_state *xs, in nsim_ipsec_parse_proto_keys() argument
92 struct net_device *dev = xs->xso.real_dev; in nsim_ipsec_parse_proto_keys()
97 if (!xs->aead) { in nsim_ipsec_parse_proto_keys()
102 if (xs->aead->alg_icv_len != NSIM_IPSEC_AUTH_BITS) { in nsim_ipsec_parse_proto_keys()
108 key_data = &xs->aead->alg_key[0]; in nsim_ipsec_parse_proto_keys()
109 key_len = xs->aead->alg_key_len; in nsim_ipsec_parse_proto_keys()
110 alg_name = xs->aead->alg_name; in nsim_ipsec_parse_proto_keys()
132 static int nsim_ipsec_add_sa(struct xfrm_state *xs, in nsim_ipsec_add_sa() argument
142 dev = xs->xso.real_dev; in nsim_ipsec_add_sa()
146 if (xs->id.proto != IPPROTO_ESP && xs->id.proto != IPPROTO_AH) { in nsim_ipsec_add_sa()
151 if (xs->calg) { in nsim_ipsec_add_sa()
156 if (xs->xso.type != XFRM_DEV_OFFLOAD_CRYPTO) { 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()
183 if (xs->xso.dir == XFRM_DEV_OFFLOAD_IN) in nsim_ipsec_add_sa()
186 if (xs->props.family == AF_INET6) 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()
197 xs->xso.offload_handle = sa_idx | NSIM_IPSEC_VALID; in nsim_ipsec_add_sa()
203 static void nsim_ipsec_del_sa(struct xfrm_state *xs) in nsim_ipsec_del_sa() argument
205 struct netdevsim *ns = netdev_priv(xs->xso.real_dev); in nsim_ipsec_del_sa()
209 sa_idx = xs->xso.offload_handle & ~NSIM_IPSEC_VALID; in nsim_ipsec_del_sa()
229 struct xfrm_state *xs; in nsim_ipsec_tx() local
243 xs = xfrm_input_state(skb); in nsim_ipsec_tx()
244 if (unlikely(!xs)) { in nsim_ipsec_tx()
245 netdev_err(ns->netdev, "no xfrm_input_state() xs = %p\n", xs); in nsim_ipsec_tx()
249 sa_idx = xs->xso.offload_handle & ~NSIM_IPSEC_VALID; in nsim_ipsec_tx()
262 if (xs->id.proto != IPPROTO_ESP && xs->id.proto != IPPROTO_AH) { in nsim_ipsec_tx()
263 netdev_err(ns->netdev, "unexpected proto=%d\n", xs->id.proto); in nsim_ipsec_tx()