|
@@ -223,12 +223,12 @@ struct batadv_orig_bat_iv {
|
|
* @orig: originator ethernet address
|
|
* @orig: originator ethernet address
|
|
* @ifinfo_list: list for routers per outgoing interface
|
|
* @ifinfo_list: list for routers per outgoing interface
|
|
* @last_bonding_candidate: pointer to last ifinfo of last used router
|
|
* @last_bonding_candidate: pointer to last ifinfo of last used router
|
|
- * @batadv_dat_addr_t: address of the orig node in the distributed hash
|
|
|
|
|
|
+ * @dat_addr: address of the orig node in the distributed hash
|
|
* @last_seen: time when last packet from this node was received
|
|
* @last_seen: time when last packet from this node was received
|
|
* @bcast_seqno_reset: time when the broadcast seqno window was reset
|
|
* @bcast_seqno_reset: time when the broadcast seqno window was reset
|
|
* @mcast_handler_lock: synchronizes mcast-capability and -flag changes
|
|
* @mcast_handler_lock: synchronizes mcast-capability and -flag changes
|
|
* @mcast_flags: multicast flags announced by the orig node
|
|
* @mcast_flags: multicast flags announced by the orig node
|
|
- * @mcast_want_all_unsnoop_node: a list node for the
|
|
|
|
|
|
+ * @mcast_want_all_unsnoopables_node: a list node for the
|
|
* mcast.want_all_unsnoopables list
|
|
* mcast.want_all_unsnoopables list
|
|
* @mcast_want_all_ipv4_node: a list node for the mcast.want_all_ipv4 list
|
|
* @mcast_want_all_ipv4_node: a list node for the mcast.want_all_ipv4 list
|
|
* @mcast_want_all_ipv6_node: a list node for the mcast.want_all_ipv6 list
|
|
* @mcast_want_all_ipv6_node: a list node for the mcast.want_all_ipv6 list
|
|
@@ -371,9 +371,8 @@ struct batadv_hardif_neigh_node {
|
|
* @ifinfo_lock: lock protecting private ifinfo members and list
|
|
* @ifinfo_lock: lock protecting private ifinfo members and list
|
|
* @if_incoming: pointer to incoming hard interface
|
|
* @if_incoming: pointer to incoming hard interface
|
|
* @last_seen: when last packet via this neighbor was received
|
|
* @last_seen: when last packet via this neighbor was received
|
|
- * @last_ttl: last received ttl from this neigh node
|
|
|
|
|
|
+ * @refcount: number of contexts the object is used
|
|
* @rcu: struct used for freeing in an RCU-safe manner
|
|
* @rcu: struct used for freeing in an RCU-safe manner
|
|
- * @bat_iv: B.A.T.M.A.N. IV private structure
|
|
|
|
*/
|
|
*/
|
|
struct batadv_neigh_node {
|
|
struct batadv_neigh_node {
|
|
struct hlist_node list;
|
|
struct hlist_node list;
|
|
@@ -423,13 +422,14 @@ struct batadv_neigh_ifinfo {
|
|
struct rcu_head rcu;
|
|
struct rcu_head rcu;
|
|
};
|
|
};
|
|
|
|
|
|
|
|
+#ifdef CONFIG_BATMAN_ADV_BLA
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* struct batadv_bcast_duplist_entry - structure for LAN broadcast suppression
|
|
* struct batadv_bcast_duplist_entry - structure for LAN broadcast suppression
|
|
- * @orig[ETH_ALEN]: mac address of orig node orginating the broadcast
|
|
|
|
|
|
+ * @orig: mac address of orig node orginating the broadcast
|
|
* @crc: crc32 checksum of broadcast payload
|
|
* @crc: crc32 checksum of broadcast payload
|
|
* @entrytime: time when the broadcast packet was received
|
|
* @entrytime: time when the broadcast packet was received
|
|
*/
|
|
*/
|
|
-#ifdef CONFIG_BATMAN_ADV_BLA
|
|
|
|
struct batadv_bcast_duplist_entry {
|
|
struct batadv_bcast_duplist_entry {
|
|
u8 orig[ETH_ALEN];
|
|
u8 orig[ETH_ALEN];
|
|
__be32 crc;
|
|
__be32 crc;
|
|
@@ -571,9 +571,11 @@ struct batadv_priv_tt {
|
|
struct delayed_work work;
|
|
struct delayed_work work;
|
|
};
|
|
};
|
|
|
|
|
|
|
|
+#ifdef CONFIG_BATMAN_ADV_BLA
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* struct batadv_priv_bla - per mesh interface bridge loope avoidance data
|
|
* struct batadv_priv_bla - per mesh interface bridge loope avoidance data
|
|
- * @num_requests; number of bla requests in flight
|
|
|
|
|
|
+ * @num_requests: number of bla requests in flight
|
|
* @claim_hash: hash table containing mesh nodes this host has claimed
|
|
* @claim_hash: hash table containing mesh nodes this host has claimed
|
|
* @backbone_hash: hash table containing all detected backbone gateways
|
|
* @backbone_hash: hash table containing all detected backbone gateways
|
|
* @bcast_duplist: recently received broadcast packets array (for broadcast
|
|
* @bcast_duplist: recently received broadcast packets array (for broadcast
|
|
@@ -583,7 +585,6 @@ struct batadv_priv_tt {
|
|
* @claim_dest: local claim data (e.g. claim group)
|
|
* @claim_dest: local claim data (e.g. claim group)
|
|
* @work: work queue callback item for cleanups & bla announcements
|
|
* @work: work queue callback item for cleanups & bla announcements
|
|
*/
|
|
*/
|
|
-#ifdef CONFIG_BATMAN_ADV_BLA
|
|
|
|
struct batadv_priv_bla {
|
|
struct batadv_priv_bla {
|
|
atomic_t num_requests;
|
|
atomic_t num_requests;
|
|
struct batadv_hashtable *claim_hash;
|
|
struct batadv_hashtable *claim_hash;
|
|
@@ -597,6 +598,8 @@ struct batadv_priv_bla {
|
|
};
|
|
};
|
|
#endif
|
|
#endif
|
|
|
|
|
|
|
|
+#ifdef CONFIG_BATMAN_ADV_DEBUG
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* struct batadv_priv_debug_log - debug logging data
|
|
* struct batadv_priv_debug_log - debug logging data
|
|
* @log_buff: buffer holding the logs (ring bufer)
|
|
* @log_buff: buffer holding the logs (ring bufer)
|
|
@@ -605,7 +608,6 @@ struct batadv_priv_bla {
|
|
* @lock: lock protecting log_buff, log_start & log_end
|
|
* @lock: lock protecting log_buff, log_start & log_end
|
|
* @queue_wait: log reader's wait queue
|
|
* @queue_wait: log reader's wait queue
|
|
*/
|
|
*/
|
|
-#ifdef CONFIG_BATMAN_ADV_DEBUG
|
|
|
|
struct batadv_priv_debug_log {
|
|
struct batadv_priv_debug_log {
|
|
char log_buff[BATADV_LOG_BUF_LEN];
|
|
char log_buff[BATADV_LOG_BUF_LEN];
|
|
unsigned long log_start;
|
|
unsigned long log_start;
|
|
@@ -647,13 +649,14 @@ struct batadv_priv_tvlv {
|
|
spinlock_t handler_list_lock; /* protects handler_list */
|
|
spinlock_t handler_list_lock; /* protects handler_list */
|
|
};
|
|
};
|
|
|
|
|
|
|
|
+#ifdef CONFIG_BATMAN_ADV_DAT
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* struct batadv_priv_dat - per mesh interface DAT private data
|
|
* struct batadv_priv_dat - per mesh interface DAT private data
|
|
* @addr: node DAT address
|
|
* @addr: node DAT address
|
|
* @hash: hashtable representing the local ARP cache
|
|
* @hash: hashtable representing the local ARP cache
|
|
* @work: work queue callback item for cache purging
|
|
* @work: work queue callback item for cache purging
|
|
*/
|
|
*/
|
|
-#ifdef CONFIG_BATMAN_ADV_DAT
|
|
|
|
struct batadv_priv_dat {
|
|
struct batadv_priv_dat {
|
|
batadv_dat_addr_t addr;
|
|
batadv_dat_addr_t addr;
|
|
struct batadv_hashtable *hash;
|
|
struct batadv_hashtable *hash;
|
|
@@ -795,7 +798,7 @@ struct batadv_softif_vlan {
|
|
* @dat: distributed arp table data
|
|
* @dat: distributed arp table data
|
|
* @mcast: multicast data
|
|
* @mcast: multicast data
|
|
* @network_coding: bool indicating whether network coding is enabled
|
|
* @network_coding: bool indicating whether network coding is enabled
|
|
- * @batadv_priv_nc: network coding data
|
|
|
|
|
|
+ * @nc: network coding data
|
|
*/
|
|
*/
|
|
struct batadv_priv {
|
|
struct batadv_priv {
|
|
atomic_t mesh_state;
|
|
atomic_t mesh_state;
|
|
@@ -893,6 +896,8 @@ struct batadv_socket_packet {
|
|
u8 icmp_packet[BATADV_ICMP_MAX_PACKET_SIZE];
|
|
u8 icmp_packet[BATADV_ICMP_MAX_PACKET_SIZE];
|
|
};
|
|
};
|
|
|
|
|
|
|
|
+#ifdef CONFIG_BATMAN_ADV_BLA
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* struct batadv_bla_backbone_gw - batman-adv gateway bridged into the LAN
|
|
* struct batadv_bla_backbone_gw - batman-adv gateway bridged into the LAN
|
|
* @orig: originator address of backbone node (mac address of primary iface)
|
|
* @orig: originator address of backbone node (mac address of primary iface)
|
|
@@ -910,7 +915,6 @@ struct batadv_socket_packet {
|
|
* @refcount: number of contexts the object is used
|
|
* @refcount: number of contexts the object is used
|
|
* @rcu: struct used for freeing in an RCU-safe manner
|
|
* @rcu: struct used for freeing in an RCU-safe manner
|
|
*/
|
|
*/
|
|
-#ifdef CONFIG_BATMAN_ADV_BLA
|
|
|
|
struct batadv_bla_backbone_gw {
|
|
struct batadv_bla_backbone_gw {
|
|
u8 orig[ETH_ALEN];
|
|
u8 orig[ETH_ALEN];
|
|
unsigned short vid;
|
|
unsigned short vid;
|
|
@@ -929,7 +933,7 @@ struct batadv_bla_backbone_gw {
|
|
* struct batadv_bla_claim - claimed non-mesh client structure
|
|
* struct batadv_bla_claim - claimed non-mesh client structure
|
|
* @addr: mac address of claimed non-mesh client
|
|
* @addr: mac address of claimed non-mesh client
|
|
* @vid: vlan id this client was detected on
|
|
* @vid: vlan id this client was detected on
|
|
- * @batadv_bla_backbone_gw: pointer to backbone gw claiming this client
|
|
|
|
|
|
+ * @backbone_gw: pointer to backbone gw claiming this client
|
|
* @lasttime: last time we heard of claim (locals only)
|
|
* @lasttime: last time we heard of claim (locals only)
|
|
* @hash_entry: hlist node for batadv_priv_bla::claim_hash
|
|
* @hash_entry: hlist node for batadv_priv_bla::claim_hash
|
|
* @refcount: number of contexts the object is used
|
|
* @refcount: number of contexts the object is used
|
|
@@ -1252,8 +1256,6 @@ struct batadv_dat_candidate {
|
|
* struct batadv_tvlv_container - container for tvlv appended to OGMs
|
|
* struct batadv_tvlv_container - container for tvlv appended to OGMs
|
|
* @list: hlist node for batadv_priv_tvlv::container_list
|
|
* @list: hlist node for batadv_priv_tvlv::container_list
|
|
* @tvlv_hdr: tvlv header information needed to construct the tvlv
|
|
* @tvlv_hdr: tvlv header information needed to construct the tvlv
|
|
- * @value_len: length of the buffer following this struct which contains
|
|
|
|
- * the actual tvlv payload
|
|
|
|
* @refcount: number of contexts the object is used
|
|
* @refcount: number of contexts the object is used
|
|
*/
|
|
*/
|
|
struct batadv_tvlv_container {
|
|
struct batadv_tvlv_container {
|