Lines Matching refs:proto
35 struct datalink_proto *proto = NULL, *p; in find_snap_client() local
39 proto = p; in find_snap_client()
43 return proto; in find_snap_client()
53 struct datalink_proto *proto; in snap_rcv() local
62 proto = find_snap_client(skb_transport_header(skb)); in snap_rcv()
63 if (proto) { in snap_rcv()
67 rc = proto->rcvfunc(skb, dev, &snap_packet_type, orig_dev); in snap_rcv()
71 if (unlikely(!proto)) in snap_rcv()
132 struct datalink_proto *proto = NULL; in register_snap_client() local
139 proto = kmalloc(sizeof(*proto), GFP_ATOMIC); in register_snap_client()
140 if (proto) { in register_snap_client()
141 memcpy(proto->type, desc, 5); in register_snap_client()
142 proto->rcvfunc = rcvfunc; in register_snap_client()
143 proto->header_length = 5 + 3; /* snap + 802.2 */ in register_snap_client()
144 proto->request = snap_request; in register_snap_client()
145 list_add_rcu(&proto->node, &snap_list); in register_snap_client()
150 return proto; in register_snap_client()
156 void unregister_snap_client(struct datalink_proto *proto) in unregister_snap_client() argument
159 list_del_rcu(&proto->node); in unregister_snap_client()
164 kfree(proto); in unregister_snap_client()