Lines Matching refs:peer

83 			    struct lowpan_peer *peer)  in peer_add()  argument
85 list_add_rcu(&peer->list, &dev->peers); in peer_add()
90 struct lowpan_peer *peer) in peer_del() argument
92 list_del_rcu(&peer->list); in peer_del()
93 kfree_rcu(peer, rcu); in peer_del()
108 struct lowpan_peer *peer; in peer_lookup_ba() local
115 list_for_each_entry_rcu(peer, &dev->peers, list) { in peer_lookup_ba()
117 &peer->chan->dst, peer->chan->dst_type); in peer_lookup_ba()
119 if (bacmp(&peer->chan->dst, ba)) in peer_lookup_ba()
122 if (type == peer->chan->dst_type) { in peer_lookup_ba()
124 return peer; in peer_lookup_ba()
136 struct lowpan_peer *peer; in __peer_lookup_chan() local
138 list_for_each_entry_rcu(peer, &dev->peers, list) { in __peer_lookup_chan()
139 if (peer->chan == chan) in __peer_lookup_chan()
140 return peer; in __peer_lookup_chan()
149 struct lowpan_peer *peer; in __peer_lookup_conn() local
151 list_for_each_entry_rcu(peer, &dev->peers, list) { in __peer_lookup_conn()
152 if (peer->chan->conn == conn) in __peer_lookup_conn()
153 return peer; in __peer_lookup_conn()
166 struct lowpan_peer *peer; in peer_lookup_dst() local
196 list_for_each_entry_rcu(peer, &dev->peers, list) { in peer_lookup_dst()
198 &peer->chan->dst, peer->chan->dst_type, in peer_lookup_dst()
199 &peer->peer_addr); in peer_lookup_dst()
201 if (!ipv6_addr_cmp(&peer->peer_addr, nexthop)) { in peer_lookup_dst()
203 return peer; in peer_lookup_dst()
211 list_for_each_entry_rcu(peer, &dev->peers, list) { in peer_lookup_dst()
212 if (!memcmp(neigh->ha, peer->lladdr, ETH_ALEN)) { in peer_lookup_dst()
215 return peer; in peer_lookup_dst()
229 struct lowpan_peer *peer = NULL; in lookup_peer() local
234 peer = __peer_lookup_conn(entry, conn); in lookup_peer()
235 if (peer) in lookup_peer()
241 return peer; in lookup_peer()
275 struct lowpan_peer *peer) in iphc_decompress() argument
279 saddr = peer->lladdr; in iphc_decompress()
285 struct lowpan_peer *peer) in recv_pkt() argument
338 ret = iphc_decompress(local_skb, dev, peer); in recv_pkt()
375 struct lowpan_peer *peer; in chan_recv_cb() local
378 peer = lookup_peer(chan->conn); in chan_recv_cb()
379 if (!peer) in chan_recv_cb()
386 err = recv_pkt(skb, dev->netdev, peer); in chan_recv_cb()
401 struct lowpan_peer *peer; in setup_header() local
422 peer = peer_lookup_dst(dev, &ipv6_daddr, skb); in setup_header()
423 if (!peer) { in setup_header()
428 daddr = peer->lladdr; in setup_header()
429 *peer_addr = peer->chan->dst; in setup_header()
430 *peer_addr_type = peer->chan->dst_type; in setup_header()
431 lowpan_cb(skb)->chan = peer->chan; in setup_header()
657 struct lowpan_peer *peer; in add_peer_chan() local
659 peer = kzalloc(sizeof(*peer), GFP_ATOMIC); in add_peer_chan()
660 if (!peer) in add_peer_chan()
663 peer->chan = chan; in add_peer_chan()
664 memset(&peer->peer_addr, 0, sizeof(struct in6_addr)); in add_peer_chan()
666 baswap((void *)peer->lladdr, &chan->dst); in add_peer_chan()
668 lowpan_iphc_uncompress_eui48_lladdr(&peer->peer_addr, peer->lladdr); in add_peer_chan()
671 INIT_LIST_HEAD(&peer->list); in add_peer_chan()
672 peer_add(dev, peer); in add_peer_chan()
680 return peer->chan; in add_peer_chan()
786 struct lowpan_peer *peer; in chan_close_cb() local
806 peer = __peer_lookup_chan(dev, chan); in chan_close_cb()
807 if (peer) { in chan_close_cb()
808 last = peer_del(dev, peer); in chan_close_cb()
812 last ? "last " : "1 ", peer); in chan_close_cb()
935 struct lowpan_peer *peer; in bt_6lowpan_disconnect() local
939 peer = lookup_peer(conn); in bt_6lowpan_disconnect()
940 if (!peer) in bt_6lowpan_disconnect()
943 BT_DBG("peer %p chan %p", peer, peer->chan); in bt_6lowpan_disconnect()
945 l2cap_chan_close(peer->chan, ENOENT); in bt_6lowpan_disconnect()
1018 struct lowpan_peer *peer, *tmp_peer, *new_peer; in disconnect_all_peers() local
1031 list_for_each_entry_rcu(peer, &entry->peers, list) { in disconnect_all_peers()
1036 new_peer->chan = peer->chan; in disconnect_all_peers()
1046 list_for_each_entry_safe(peer, tmp_peer, &peers, list) { in disconnect_all_peers()
1047 l2cap_chan_close(peer->chan, ENOENT); in disconnect_all_peers()
1049 list_del_rcu(&peer->list); in disconnect_all_peers()
1050 kfree_rcu(peer, rcu); in disconnect_all_peers()
1137 struct lowpan_peer *peer; in lowpan_control_write() local
1142 peer = lookup_peer(conn); in lowpan_control_write()
1143 if (peer) { in lowpan_control_write()
1178 struct lowpan_peer *peer; in lowpan_control_show() local
1183 list_for_each_entry(peer, &entry->peers, list) in lowpan_control_show()
1185 &peer->chan->dst, peer->chan->dst_type); in lowpan_control_show()