FD.io VPP  v20.01-48-g3e0dafb74
Vector Packet Processing
igmp_pkt.h
Go to the documentation of this file.
1 /*
2  *------------------------------------------------------------------
3  * Copyright (c) 2017 Cisco and/or its affiliates.
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at:
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  *------------------------------------------------------------------
16  */
17 
18 #ifndef __IGMP_PKT_H__
19 #define __IGMP_PKT_H__
20 
21 #include <igmp/igmp.h>
22 
23 typedef struct igmp_pkt_build_t_
24 {
30 
32 {
37 
40 
42  const ip46_address_t * grp,
43  const ip46_address_t * srcs,
45  type);
46 
48  const igmp_group_t * group,
50  type);
51 
53 
54 
56 {
60 
63 
65  const igmp_group_t * group,
66  const ip46_address_t * srcs);
67 
69 
70 #endif
71 
72 /*
73  * fd.io coding-style-patch-verification: ON
74  *
75  * Local Variables:
76  * eval: (c-set-style "gnu")
77  * End:
78  */
igmp_pkt_build_t base
Definition: igmp_pkt.h:33
void igmp_pkt_report_v3_add_report(igmp_pkt_build_report_t *br, const ip46_address_t *grp, const ip46_address_t *srcs, igmp_membership_group_v3_type_t type)
Definition: igmp_pkt.c:309
void igmp_pkt_report_v3_add_group(igmp_pkt_build_report_t *br, const igmp_group_t *group, igmp_membership_group_v3_type_t type)
Definition: igmp_pkt.c:349
struct igmp_pkt_build_t_ igmp_pkt_build_t
void igmp_pkt_report_v3_send(igmp_pkt_build_report_t *br)
Definition: igmp_pkt.c:208
igmp_membership_group_v3_type_t
Definition: igmp_packet.h:140
void igmp_pkt_build_report_init(igmp_pkt_build_report_t *br, u32 sw_if_index)
Definition: igmp_pkt.c:400
struct igmp_pkt_build_report_t_ igmp_pkt_build_report_t
unsigned int u32
Definition: types.h:88
igmp_pkt_build_t base
Definition: igmp_pkt.h:57
vl_api_fib_path_type_t type
Definition: fib_types.api:123
unsigned short u16
Definition: types.h:57
void igmp_pkt_query_v3_add_group(igmp_pkt_build_query_t *bq, const igmp_group_t *group, const ip46_address_t *srcs)
Definition: igmp_pkt.c:448
struct igmp_pkt_build_query_t_ igmp_pkt_build_query_t
IGMP group A multicast group address for which reception has been requested.
Definition: igmp_group.h:56
void igmp_pkt_query_v3_send(igmp_pkt_build_query_t *bq)
Definition: igmp_pkt.c:513
void igmp_pkt_build_query_init(igmp_pkt_build_query_t *bq, u32 sw_if_index)
Definition: igmp_pkt.c:523