]> git.proxmox.com Git - mirror_frr.git/blob - pimd/pim_igmp_stats.h
Merge pull request #12798 from donaldsharp/rib_match_multicast
[mirror_frr.git] / pimd / pim_igmp_stats.h
1 // SPDX-License-Identifier: GPL-2.0-or-later
2 /*
3 * PIM for FRRouting
4 * Copyright (C) 2018 Mladen Sablic
5 */
6
7 #ifndef PIM_IGMP_STATS_H
8 #define PIM_IGMP_STATS_H
9
10 #include <zebra.h>
11
12 struct igmp_stats {
13 uint32_t query_v1;
14 uint32_t query_v2;
15 uint32_t query_v3;
16 uint32_t report_v1;
17 uint32_t report_v2;
18 uint32_t report_v3;
19 uint32_t leave_v2;
20 uint32_t mtrace_rsp;
21 uint32_t mtrace_req;
22 uint32_t unsupported;
23 uint32_t peak_groups;
24 uint32_t total_groups;
25 uint32_t total_source_groups;
26 uint32_t joins_sent;
27 uint32_t joins_failed;
28 uint32_t general_queries_sent;
29 uint32_t group_queries_sent;
30 uint32_t total_recv_messages;
31 };
32
33 #if PIM_IPV == 4
34 void igmp_stats_init(struct igmp_stats *stats);
35 void igmp_stats_add(struct igmp_stats *a, struct igmp_stats *b);
36 #else
37 static inline void igmp_stats_init(struct igmp_stats *stats)
38 {
39 }
40
41 static inline void igmp_stats_add(struct igmp_stats *a, struct igmp_stats *b)
42 {
43 }
44 #endif
45
46 #endif /* PIM_IGMP_STATS_H */