Lines Matching refs:ccgw
146 struct can_can_gw ccgw; member
443 return can_rx_register(gwj->src.dev, gwj->ccgw.filter.can_id, in cgw_register_filter()
444 gwj->ccgw.filter.can_mask, can_can_gw_rcv, in cgw_register_filter()
450 can_rx_unregister(gwj->src.dev, gwj->ccgw.filter.can_id, in cgw_unregister_filter()
451 gwj->ccgw.filter.can_mask, can_can_gw_rcv, gwj); in cgw_unregister_filter()
571 if (gwj->ccgw.filter.can_id || gwj->ccgw.filter.can_mask) { in cgw_put_job()
573 &gwj->ccgw.filter) < 0) in cgw_put_job()
577 if (nla_put_u32(skb, CGW_SRC_IF, gwj->ccgw.src_idx) < 0) in cgw_put_job()
580 if (nla_put_u32(skb, CGW_DST_IF, gwj->ccgw.dst_idx) < 0) in cgw_put_job()
781 struct can_can_gw *ccgw = (struct can_can_gw *)gwtypeattr; in cgw_parse_attr() local
782 memset(ccgw, 0, sizeof(*ccgw)); in cgw_parse_attr()
786 nla_memcpy(&ccgw->filter, tb[CGW_FILTER], in cgw_parse_attr()
795 ccgw->src_idx = nla_get_u32(tb[CGW_SRC_IF]); in cgw_parse_attr()
796 ccgw->dst_idx = nla_get_u32(tb[CGW_DST_IF]); in cgw_parse_attr()
799 if (!ccgw->src_idx && !ccgw->dst_idx) in cgw_parse_attr()
803 if (!ccgw->src_idx || !ccgw->dst_idx) in cgw_parse_attr()
817 struct can_can_gw ccgw; in cgw_create_job() local
835 err = cgw_parse_attr(nlh, &mod, CGW_TYPE_CAN_CAN, &ccgw, &limhops); in cgw_create_job()
850 if (memcmp(&gwj->ccgw, &ccgw, sizeof(ccgw))) in cgw_create_job()
862 if (!ccgw.src_idx || !ccgw.dst_idx) in cgw_create_job()
878 memcpy(&gwj->ccgw, &ccgw, sizeof(ccgw)); in cgw_create_job()
882 gwj->src.dev = __dev_get_by_index(&init_net, gwj->ccgw.src_idx); in cgw_create_job()
890 gwj->dst.dev = __dev_get_by_index(&init_net, gwj->ccgw.dst_idx); in cgw_create_job()
930 struct can_can_gw ccgw; in cgw_remove_job() local
948 err = cgw_parse_attr(nlh, &mod, CGW_TYPE_CAN_CAN, &ccgw, &limhops); in cgw_remove_job()
953 if (!ccgw.src_idx && !ccgw.dst_idx) { in cgw_remove_job()
982 if (memcmp(&gwj->ccgw, &ccgw, sizeof(ccgw))) in cgw_remove_job()