]>
Commit | Line | Data |
---|---|---|
01d68c9b DS |
1 | /* |
2 | * PIM for Quagga | |
3 | * Copyright (C) 2015 Cumulus Networks, Inc. | |
4 | * Donald Sharp | |
5 | * | |
6 | * This program is free software; you can redistribute it and/or modify | |
7 | * it under the terms of the GNU General Public License as published by | |
8 | * the Free Software Foundation; either version 2 of the License, or | |
9 | * (at your option) any later version. | |
10 | * | |
11 | * This program is distributed in the hope that it will be useful, but | |
12 | * WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
14 | * General Public License for more details. | |
15 | * | |
896014f4 DL |
16 | * You should have received a copy of the GNU General Public License along |
17 | * with this program; see the file COPYING; if not, write to the Free Software | |
18 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | |
01d68c9b DS |
19 | */ |
20 | #ifndef PIM_REGISTER_H | |
21 | #define PIM_REGISTER_H | |
22 | ||
23 | #include <zebra.h> | |
24 | ||
25 | #include "if.h" | |
26 | ||
27 | #define PIM_REGISTER_BORDER_BIT 0x80000000 | |
28 | #define PIM_REGISTER_NR_BIT 0x40000000 | |
29 | ||
998af219 | 30 | #define PIM_MSG_REGISTER_LEN (8) |
86d1f7c4 | 31 | #define PIM_MSG_REGISTER_STOP_LEN (4) |
77e390e5 | 32 | |
b206566b | 33 | int pim_register_stop_recv(struct interface *ifp, uint8_t *buf, int buf_size); |
d62a17ae | 34 | |
35 | int pim_register_recv(struct interface *ifp, struct in_addr dest_addr, | |
36 | struct in_addr src_addr, uint8_t *tlv_buf, | |
37 | int tlv_buf_size); | |
38 | ||
39 | void pim_register_send(const uint8_t *buf, int buf_size, struct in_addr src, | |
40 | struct pim_rpf *rpg, int null_register, | |
41 | struct pim_upstream *up); | |
42 | void pim_register_stop_send(struct interface *ifp, struct prefix_sg *sg, | |
43 | struct in_addr src, struct in_addr originator); | |
44 | void pim_register_join(struct pim_upstream *up); | |
aea1f845 | 45 | void pim_null_register_send(struct pim_upstream *up); |
46a9ea8b | 46 | void pim_reg_del_on_couldreg_fail(struct interface *ifp); |
998af219 | 47 | |
01d68c9b | 48 | #endif |