Lines Matching refs:bat_priv

39 	struct batadv_priv *bat_priv = netdev_priv(hard_iface->soft_iface);
40 struct batadv_hashtable *hash = bat_priv->orig_hash;
57 batadv_bit_get_packet(bat_priv, word, 1, 0);
66 static void _batadv_update_route(struct batadv_priv *bat_priv,
76 batadv_dbg(BATADV_DBG_ROUTES, bat_priv,
78 batadv_tt_global_del_orig(bat_priv, orig_node,
83 batadv_dbg(BATADV_DBG_ROUTES, bat_priv,
88 batadv_dbg(BATADV_DBG_ROUTES, bat_priv,
110 void batadv_update_route(struct batadv_priv *bat_priv,
122 _batadv_update_route(bat_priv, orig_node, neigh_node);
232 int batadv_window_protected(struct batadv_priv *bat_priv, int32_t seq_num_diff,
242 batadv_dbg(BATADV_DBG_BATMAN, bat_priv,
280 static int batadv_recv_my_icmp_packet(struct batadv_priv *bat_priv,
296 primary_if = batadv_primary_if_get_selected(bat_priv);
302 orig_node = batadv_orig_hash_find(bat_priv, icmp_packet->orig);
328 static int batadv_recv_icmp_ttl_exceeded(struct batadv_priv *bat_priv,
345 primary_if = batadv_primary_if_get_selected(bat_priv);
350 orig_node = batadv_orig_hash_find(bat_priv, icmp_packet->orig);
380 struct batadv_priv *bat_priv = netdev_priv(recv_if->soft_iface);
406 if (!batadv_is_my_mac(bat_priv, ethhdr->h_dest))
420 if (batadv_is_my_mac(bat_priv, icmp_packet->dst))
421 return batadv_recv_my_icmp_packet(bat_priv, skb, hdr_size);
425 return batadv_recv_icmp_ttl_exceeded(bat_priv, skb);
428 orig_node = batadv_orig_hash_find(bat_priv, icmp_packet->dst);
554 * @bat_priv: the bat priv with all the soft interface information
563 static int batadv_check_unicast_packet(struct batadv_priv *bat_priv,
583 if (!batadv_is_my_mac(bat_priv, ethhdr->h_dest))
591 struct batadv_priv *bat_priv = netdev_priv(recv_if->soft_iface);
598 if (batadv_check_unicast_packet(bat_priv, skb, hdr_size) < 0)
609 batadv_inc_counter(bat_priv, BATADV_CNT_TT_REQUEST_RX);
614 if (!batadv_send_tt_response(bat_priv, tt_query)) {
620 batadv_dbg(BATADV_DBG_TT, bat_priv,
628 batadv_inc_counter(bat_priv, BATADV_CNT_TT_RESPONSE_RX);
630 if (batadv_is_my_mac(bat_priv, tt_query->dst)) {
647 batadv_handle_tt_response(bat_priv, tt_query);
653 batadv_dbg(BATADV_DBG_TT, bat_priv,
669 struct batadv_priv *bat_priv = netdev_priv(recv_if->soft_iface);
673 if (batadv_check_unicast_packet(bat_priv, skb,
677 batadv_inc_counter(bat_priv, BATADV_CNT_TT_ROAM_ADV_RX);
681 if (!batadv_is_my_mac(bat_priv, roam_adv_packet->dst))
688 if (batadv_bla_is_backbone_gw_orig(bat_priv, roam_adv_packet->src))
691 orig_node = batadv_orig_hash_find(bat_priv, roam_adv_packet->src);
695 batadv_dbg(BATADV_DBG_TT, bat_priv,
699 batadv_tt_global_add(bat_priv, orig_node, roam_adv_packet->client,
714 batadv_find_router(struct batadv_priv *bat_priv,
735 bonding_enabled = atomic_read(&bat_priv->bonding);
760 primary_orig_node = batadv_orig_hash_find(bat_priv,
802 struct batadv_priv *bat_priv = netdev_priv(recv_if->soft_iface);
820 orig_node = batadv_orig_hash_find(bat_priv, unicast_packet->dest);
826 neigh_node = batadv_find_router(bat_priv, orig_node, recv_if);
838 atomic_read(&bat_priv->fragmentation) &&
840 ret = batadv_frag_send_skb(skb, bat_priv,
849 ret = batadv_frag_reassemble_skb(skb, bat_priv, &new_skb);
874 batadv_inc_counter(bat_priv, BATADV_CNT_FORWARD);
875 batadv_add_counter(bat_priv, BATADV_CNT_FORWARD_BYTES,
889 * @bat_priv: the bat priv with all the soft interface information
900 batadv_reroute_unicast_packet(struct batadv_priv *bat_priv,
909 if (batadv_is_my_client(bat_priv, dst_addr)) {
910 primary_if = batadv_primary_if_get_selected(bat_priv);
914 orig_ttvn = (uint8_t)atomic_read(&bat_priv->tt.vn);
916 orig_node = batadv_transtable_search(bat_priv, NULL, dst_addr);
941 static int batadv_check_unicast_ttvn(struct batadv_priv *bat_priv,
966 if (batadv_tt_local_client_is_roaming(bat_priv, ethhdr->h_dest)) {
967 if (batadv_reroute_unicast_packet(bat_priv, unicast_packet,
970 bat_priv,
986 curr_ttvn = (uint8_t)atomic_read(&bat_priv->tt.vn);
987 if (!batadv_is_my_mac(bat_priv, unicast_packet->dest)) {
988 orig_node = batadv_orig_hash_find(bat_priv,
1013 if (batadv_reroute_unicast_packet(bat_priv, unicast_packet,
1015 net_ratelimited_function(batadv_dbg, BATADV_DBG_TT, bat_priv,
1026 if (!batadv_is_my_client(bat_priv, ethhdr->h_dest))
1032 primary_if = batadv_primary_if_get_selected(bat_priv);
1048 struct batadv_priv *bat_priv = netdev_priv(recv_if->soft_iface);
1065 check = batadv_check_unicast_packet(bat_priv, skb, hdr_size);
1071 batadv_nc_skb_store_sniffed_unicast(bat_priv, skb);
1075 if (!batadv_check_unicast_ttvn(bat_priv, skb, hdr_size))
1079 if (batadv_is_my_mac(bat_priv, unicast_packet->dest)) {
1081 batadv_dat_inc_counter(bat_priv,
1084 orig_node = batadv_orig_hash_find(bat_priv, orig_addr);
1087 if (batadv_dat_snoop_incoming_arp_request(bat_priv, skb,
1090 if (batadv_dat_snoop_incoming_arp_reply(bat_priv, skb,
1110 struct batadv_priv *bat_priv = netdev_priv(recv_if->soft_iface);
1116 if (batadv_check_unicast_packet(bat_priv, skb, hdr_size) < 0)
1119 if (!batadv_check_unicast_ttvn(bat_priv, skb, hdr_size))
1125 if (batadv_is_my_mac(bat_priv, unicast_packet->dest)) {
1126 ret = batadv_frag_reassemble_skb(skb, bat_priv, &new_skb);
1135 if (batadv_dat_snoop_incoming_arp_request(bat_priv, new_skb,
1138 if (batadv_dat_snoop_incoming_arp_reply(bat_priv, new_skb,
1156 struct batadv_priv *bat_priv = netdev_priv(recv_if->soft_iface);
1179 if (batadv_is_my_mac(bat_priv, ethhdr->h_source))
1185 if (batadv_is_my_mac(bat_priv, bcast_packet->orig))
1191 orig_node = batadv_orig_hash_find(bat_priv, bcast_packet->orig);
1206 if (batadv_window_protected(bat_priv, seq_diff,
1213 if (batadv_bit_get_packet(bat_priv, orig_node->bcast_bits, seq_diff, 1))
1219 if (batadv_bla_check_bcast_duplist(bat_priv, skb))
1223 batadv_add_bcast_packet_to_list(bat_priv, skb, 1);
1231 if (batadv_dat_snoop_incoming_arp_request(bat_priv, skb, hdr_size))
1233 if (batadv_dat_snoop_incoming_arp_reply(bat_priv, skb, hdr_size))
1257 struct batadv_priv *bat_priv = netdev_priv(recv_if->soft_iface);
1271 if (!batadv_is_my_mac(bat_priv, ethhdr->h_dest))
1275 if (batadv_is_my_mac(bat_priv, vis_packet->vis_orig))
1278 if (batadv_is_my_mac(bat_priv, vis_packet->sender_orig))
1283 batadv_receive_server_sync_packet(bat_priv, vis_packet,
1288 batadv_receive_client_update_packet(bat_priv, vis_packet,