Lines Matching +full:0 +full:ns

6 static int nsim_macsec_find_secy(struct netdevsim *ns, sci_t sci)  in nsim_macsec_find_secy()  argument
10 for (i = 0; i < NSIM_MACSEC_MAX_SECY_COUNT; i++) { in nsim_macsec_find_secy()
11 if (ns->macsec.nsim_secy[i].sci == sci) in nsim_macsec_find_secy()
22 for (i = 0; i < NSIM_MACSEC_MAX_RXSC_COUNT; i++) { in nsim_macsec_find_rxsc()
32 struct netdevsim *ns = netdev_priv(ctx->netdev); in nsim_macsec_add_secy() local
35 if (ns->macsec.nsim_secy_count == NSIM_MACSEC_MAX_SECY_COUNT) in nsim_macsec_add_secy()
38 for (idx = 0; idx < NSIM_MACSEC_MAX_SECY_COUNT; idx++) { in nsim_macsec_add_secy()
39 if (!ns->macsec.nsim_secy[idx].used) in nsim_macsec_add_secy()
51 ns->macsec.nsim_secy[idx].used = true; in nsim_macsec_add_secy()
52 ns->macsec.nsim_secy[idx].nsim_rxsc_count = 0; in nsim_macsec_add_secy()
53 ns->macsec.nsim_secy[idx].sci = ctx->secy->sci; in nsim_macsec_add_secy()
54 ns->macsec.nsim_secy_count++; in nsim_macsec_add_secy()
56 return 0; in nsim_macsec_add_secy()
61 struct netdevsim *ns = netdev_priv(ctx->netdev); in nsim_macsec_upd_secy() local
64 idx = nsim_macsec_find_secy(ns, ctx->secy->sci); in nsim_macsec_upd_secy()
65 if (idx < 0) { in nsim_macsec_upd_secy()
74 return 0; in nsim_macsec_upd_secy()
79 struct netdevsim *ns = netdev_priv(ctx->netdev); in nsim_macsec_del_secy() local
82 idx = nsim_macsec_find_secy(ns, ctx->secy->sci); in nsim_macsec_del_secy()
83 if (idx < 0) { in nsim_macsec_del_secy()
92 ns->macsec.nsim_secy[idx].used = false; in nsim_macsec_del_secy()
93 memset(&ns->macsec.nsim_secy[idx], 0, sizeof(ns->macsec.nsim_secy[idx])); in nsim_macsec_del_secy()
94 ns->macsec.nsim_secy_count--; in nsim_macsec_del_secy()
96 return 0; in nsim_macsec_del_secy()
101 struct netdevsim *ns = netdev_priv(ctx->netdev); in nsim_macsec_add_rxsc() local
105 idx = nsim_macsec_find_secy(ns, ctx->secy->sci); in nsim_macsec_add_rxsc()
106 if (idx < 0) { in nsim_macsec_add_rxsc()
111 secy = &ns->macsec.nsim_secy[idx]; in nsim_macsec_add_rxsc()
116 for (idx = 0; idx < NSIM_MACSEC_MAX_RXSC_COUNT; idx++) { in nsim_macsec_add_rxsc()
131 return 0; in nsim_macsec_add_rxsc()
136 struct netdevsim *ns = netdev_priv(ctx->netdev); in nsim_macsec_upd_rxsc() local
140 idx = nsim_macsec_find_secy(ns, ctx->secy->sci); in nsim_macsec_upd_rxsc()
141 if (idx < 0) { in nsim_macsec_upd_rxsc()
146 secy = &ns->macsec.nsim_secy[idx]; in nsim_macsec_upd_rxsc()
149 if (idx < 0) { in nsim_macsec_upd_rxsc()
158 return 0; in nsim_macsec_upd_rxsc()
163 struct netdevsim *ns = netdev_priv(ctx->netdev); in nsim_macsec_del_rxsc() local
167 idx = nsim_macsec_find_secy(ns, ctx->secy->sci); in nsim_macsec_del_rxsc()
168 if (idx < 0) { in nsim_macsec_del_rxsc()
173 secy = &ns->macsec.nsim_secy[idx]; in nsim_macsec_del_rxsc()
176 if (idx < 0) { in nsim_macsec_del_rxsc()
186 memset(&secy->nsim_rxsc[idx], 0, sizeof(secy->nsim_rxsc[idx])); in nsim_macsec_del_rxsc()
189 return 0; in nsim_macsec_del_rxsc()
194 struct netdevsim *ns = netdev_priv(ctx->netdev); in nsim_macsec_add_rxsa() local
198 idx = nsim_macsec_find_secy(ns, ctx->secy->sci); in nsim_macsec_add_rxsa()
199 if (idx < 0) { in nsim_macsec_add_rxsa()
204 secy = &ns->macsec.nsim_secy[idx]; in nsim_macsec_add_rxsa()
207 if (idx < 0) { in nsim_macsec_add_rxsa()
216 return 0; in nsim_macsec_add_rxsa()
221 struct netdevsim *ns = netdev_priv(ctx->netdev); in nsim_macsec_upd_rxsa() local
225 idx = nsim_macsec_find_secy(ns, ctx->secy->sci); in nsim_macsec_upd_rxsa()
226 if (idx < 0) { in nsim_macsec_upd_rxsa()
231 secy = &ns->macsec.nsim_secy[idx]; in nsim_macsec_upd_rxsa()
234 if (idx < 0) { in nsim_macsec_upd_rxsa()
243 return 0; in nsim_macsec_upd_rxsa()
248 struct netdevsim *ns = netdev_priv(ctx->netdev); in nsim_macsec_del_rxsa() local
252 idx = nsim_macsec_find_secy(ns, ctx->secy->sci); in nsim_macsec_del_rxsa()
253 if (idx < 0) { in nsim_macsec_del_rxsa()
258 secy = &ns->macsec.nsim_secy[idx]; in nsim_macsec_del_rxsa()
261 if (idx < 0) { in nsim_macsec_del_rxsa()
270 return 0; in nsim_macsec_del_rxsa()
275 struct netdevsim *ns = netdev_priv(ctx->netdev); in nsim_macsec_add_txsa() local
278 idx = nsim_macsec_find_secy(ns, ctx->secy->sci); in nsim_macsec_add_txsa()
279 if (idx < 0) { in nsim_macsec_add_txsa()
288 return 0; in nsim_macsec_add_txsa()
293 struct netdevsim *ns = netdev_priv(ctx->netdev); in nsim_macsec_upd_txsa() local
296 idx = nsim_macsec_find_secy(ns, ctx->secy->sci); in nsim_macsec_upd_txsa()
297 if (idx < 0) { in nsim_macsec_upd_txsa()
306 return 0; in nsim_macsec_upd_txsa()
311 struct netdevsim *ns = netdev_priv(ctx->netdev); in nsim_macsec_del_txsa() local
314 idx = nsim_macsec_find_secy(ns, ctx->secy->sci); in nsim_macsec_del_txsa()
315 if (idx < 0) { in nsim_macsec_del_txsa()
324 return 0; in nsim_macsec_del_txsa()
342 void nsim_macsec_init(struct netdevsim *ns) in nsim_macsec_init() argument
344 ns->netdev->macsec_ops = &nsim_macsec_ops; in nsim_macsec_init()
345 ns->netdev->features |= NETIF_F_HW_MACSEC; in nsim_macsec_init()
346 memset(&ns->macsec, 0, sizeof(ns->macsec)); in nsim_macsec_init()
349 void nsim_macsec_teardown(struct netdevsim *ns) in nsim_macsec_teardown() argument