Lines Matching refs:proto
31 struct datalink_proto *proto = NULL, *p; in find_snap_client() local
35 proto = p; in find_snap_client()
39 return proto; in find_snap_client()
49 struct datalink_proto *proto; in snap_rcv() local
58 proto = find_snap_client(skb_transport_header(skb)); in snap_rcv()
59 if (proto) { in snap_rcv()
63 rc = proto->rcvfunc(skb, dev, &snap_packet_type, orig_dev); in snap_rcv()
67 if (unlikely(!proto)) in snap_rcv()
128 struct datalink_proto *proto = NULL; in register_snap_client() local
135 proto = kmalloc(sizeof(*proto), GFP_ATOMIC); in register_snap_client()
136 if (proto) { in register_snap_client()
137 memcpy(proto->type, desc, 5); in register_snap_client()
138 proto->rcvfunc = rcvfunc; in register_snap_client()
139 proto->header_length = 5 + 3; /* snap + 802.2 */ in register_snap_client()
140 proto->request = snap_request; in register_snap_client()
141 list_add_rcu(&proto->node, &snap_list); in register_snap_client()
146 return proto; in register_snap_client()
152 void unregister_snap_client(struct datalink_proto *proto) in unregister_snap_client() argument
155 list_del_rcu(&proto->node); in unregister_snap_client()
160 kfree(proto); in unregister_snap_client()