Lines Matching full:dat

99  * batadv_dat_start_timer() - initialise the DAT periodic worker
104 INIT_DELAYED_WORK(&bat_priv->dat.work, batadv_dat_purge); in batadv_dat_start_timer()
105 queue_delayed_work(batadv_event_workqueue, &bat_priv->dat.work, in batadv_dat_start_timer()
149 * __batadv_dat_purge() - delete entries from the DAT local storage
156 * Loops over each entry in the DAT local storage and deletes it if and only if
168 if (!bat_priv->dat.hash) in __batadv_dat_purge()
171 for (i = 0; i < bat_priv->dat.hash->size; i++) { in __batadv_dat_purge()
172 head = &bat_priv->dat.hash->table[i]; in __batadv_dat_purge()
173 list_lock = &bat_priv->dat.hash->list_locks[i]; in __batadv_dat_purge()
193 * DAT hash table
204 bat_priv = container_of(priv_dat, struct batadv_priv, dat); in batadv_dat_purge()
211 * batadv_compare_dat() - comparing function used in the local DAT hash table
290 const struct batadv_dat_entry *dat = data; in batadv_hash_dat() local
295 key = (__force const unsigned char *)&dat->ip; in batadv_hash_dat()
296 for (i = 0; i < sizeof(dat->ip); i++) { in batadv_hash_dat()
302 vid = htons(dat->vid); in batadv_hash_dat()
304 for (i = 0; i < sizeof(dat->vid); i++) { in batadv_hash_dat()
332 struct batadv_hashtable *hash = bat_priv->dat.hash; in batadv_dat_entry_hash_find()
361 * batadv_dat_entry_add() - add a new dat entry or update it if already exists
397 hash_added = batadv_hash_add(bat_priv->dat.hash, batadv_compare_dat, in batadv_dat_entry_add()
521 /* check if orig node candidate is running DAT */ in batadv_is_orig_node_eligible()
635 struct batadv_dat_entry dat; in batadv_dat_select_candidates() local
645 dat.ip = ip_dst; in batadv_dat_select_candidates()
646 dat.vid = vid; in batadv_dat_select_candidates()
647 ip_key = (batadv_dat_addr_t)batadv_hash_dat(&dat, in batadv_dat_select_candidates()
738 * batadv_dat_tvlv_container_update() - update the dat tvlv container after dat
760 * batadv_dat_status_update() - update the dat tvlv container after dat
772 * batadv_dat_tvlv_ogm_handler_v1() - process incoming dat tvlv container
791 * batadv_dat_hash_free() - free the local DAT hash table
796 if (!bat_priv->dat.hash) in batadv_dat_hash_free()
801 batadv_hash_destroy(bat_priv->dat.hash); in batadv_dat_hash_free()
803 bat_priv->dat.hash = NULL; in batadv_dat_hash_free()
807 * batadv_dat_init() - initialise the DAT internals
814 if (bat_priv->dat.hash) in batadv_dat_init()
817 bat_priv->dat.hash = batadv_hash_new(1024); in batadv_dat_init()
819 if (!bat_priv->dat.hash) in batadv_dat_init()
832 * batadv_dat_free() - free the DAT internals
840 cancel_delayed_work_sync(&bat_priv->dat.work); in batadv_dat_free()
846 * batadv_dat_cache_dump_entry() - dump one entry of the DAT cache table to a
888 * batadv_dat_cache_dump_bucket() - dump one bucket of the DAT cache table to
931 * batadv_dat_cache_dump() - dump DAT cache table to a netlink socket
962 hash = bat_priv->dat.hash; in batadv_dat_cache_dump()
1038 /* Check for bad reply/request. If the ARP message is not sane, DAT in batadv_arp_get_type()
1129 * answer using DAT
1173 * client will answer itself. DAT would only generate a in batadv_dat_snoop_outgoing_arp_request()
1177 * additional DAT answer may trigger kernel warnings about in batadv_dat_snoop_outgoing_arp_request()
1226 * answer using the local DAT storage
1337 * local DAT storage only
1342 * Return: true if the packet was snooped and consumed by DAT. False if the
1618 * DAT cache
1626 * Adds given MAC/IP pairs to the local DAT cache and propagates them further
1703 * batadv_dat_snoop_outgoing_dhcp_ack() - snoop DHCPACK and fill DAT with it
1711 * field and DHCP Your IP Address field are added to the local DAT cache and
1736 * batadv_dat_snoop_incoming_dhcp_ack() - snoop DHCPACK and fill DAT cache
1743 * field and DHCP Your IP Address field are added to the local DAT cache.
1784 * dropped (because the node has already obtained the reply via DAT) or not