diff options
-rw-r--r-- | include/linux/Kbuild | 1 | ||||
-rw-r--r-- | include/linux/mroute.h | 22 | ||||
-rw-r--r-- | include/linux/pim.h | 29 |
3 files changed, 31 insertions, 21 deletions
diff --git a/include/linux/Kbuild b/include/linux/Kbuild index 9cdd12a9e843..84736acb4b99 100644 --- a/include/linux/Kbuild +++ b/include/linux/Kbuild | |||
@@ -289,6 +289,7 @@ unifdef-y += parport.h | |||
289 | unifdef-y += patchkey.h | 289 | unifdef-y += patchkey.h |
290 | unifdef-y += pci.h | 290 | unifdef-y += pci.h |
291 | unifdef-y += personality.h | 291 | unifdef-y += personality.h |
292 | unifdef-y += pim.h | ||
292 | unifdef-y += pktcdvd.h | 293 | unifdef-y += pktcdvd.h |
293 | unifdef-y += pmu.h | 294 | unifdef-y += pmu.h |
294 | unifdef-y += poll.h | 295 | unifdef-y += poll.h |
diff --git a/include/linux/mroute.h b/include/linux/mroute.h index 35a8277ec1bd..c41b4217ae3b 100644 --- a/include/linux/mroute.h +++ b/include/linux/mroute.h | |||
@@ -3,6 +3,7 @@ | |||
3 | 3 | ||
4 | #include <linux/sockios.h> | 4 | #include <linux/sockios.h> |
5 | #include <linux/in.h> | 5 | #include <linux/in.h> |
6 | #include <linux/pim.h> | ||
6 | 7 | ||
7 | /* | 8 | /* |
8 | * Based on the MROUTING 3.5 defines primarily to keep | 9 | * Based on the MROUTING 3.5 defines primarily to keep |
@@ -210,27 +211,6 @@ struct mfc_cache | |||
210 | #define IGMPMSG_WHOLEPKT 3 /* For PIM Register processing */ | 211 | #define IGMPMSG_WHOLEPKT 3 /* For PIM Register processing */ |
211 | 212 | ||
212 | #ifdef __KERNEL__ | 213 | #ifdef __KERNEL__ |
213 | |||
214 | #define PIM_V1_VERSION __constant_htonl(0x10000000) | ||
215 | #define PIM_V1_REGISTER 1 | ||
216 | |||
217 | #define PIM_VERSION 2 | ||
218 | #define PIM_REGISTER 1 | ||
219 | |||
220 | #define PIM_NULL_REGISTER __constant_htonl(0x40000000) | ||
221 | |||
222 | /* PIMv2 register message header layout (ietf-draft-idmr-pimvsm-v2-00.ps */ | ||
223 | |||
224 | struct pimreghdr | ||
225 | { | ||
226 | __u8 type; | ||
227 | __u8 reserved; | ||
228 | __be16 csum; | ||
229 | __be32 flags; | ||
230 | }; | ||
231 | |||
232 | extern int pim_rcv_v1(struct sk_buff *); | ||
233 | |||
234 | struct rtmsg; | 214 | struct rtmsg; |
235 | extern int ipmr_get_route(struct sk_buff *skb, struct rtmsg *rtm, int nowait); | 215 | extern int ipmr_get_route(struct sk_buff *skb, struct rtmsg *rtm, int nowait); |
236 | #endif | 216 | #endif |
diff --git a/include/linux/pim.h b/include/linux/pim.h new file mode 100644 index 000000000000..6f689dc85503 --- /dev/null +++ b/include/linux/pim.h | |||
@@ -0,0 +1,29 @@ | |||
1 | #ifndef __LINUX_PIM_H | ||
2 | #define __LINUX_PIM_H | ||
3 | |||
4 | #include <asm/byteorder.h> | ||
5 | |||
6 | /* Message types - V1 */ | ||
7 | #define PIM_V1_VERSION __constant_htonl(0x10000000) | ||
8 | #define PIM_V1_REGISTER 1 | ||
9 | |||
10 | /* Message types - V2 */ | ||
11 | #define PIM_VERSION 2 | ||
12 | #define PIM_REGISTER 1 | ||
13 | |||
14 | #if defined(__KERNEL__) | ||
15 | #define PIM_NULL_REGISTER __constant_htonl(0x40000000) | ||
16 | |||
17 | /* PIMv2 register message header layout (ietf-draft-idmr-pimvsm-v2-00.ps */ | ||
18 | struct pimreghdr | ||
19 | { | ||
20 | __u8 type; | ||
21 | __u8 reserved; | ||
22 | __be16 csum; | ||
23 | __be32 flags; | ||
24 | }; | ||
25 | |||
26 | struct sk_buff; | ||
27 | extern int pim_rcv_v1(struct sk_buff *); | ||
28 | #endif | ||
29 | #endif | ||