Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 194060
b: refs/heads/master
c: f0ad086
h: refs/heads/master
v: v3
  • Loading branch information
Patrick McHardy authored and David S. Miller committed Apr 13, 2010
1 parent 82fb288 commit fdd5251
Show file tree
Hide file tree
Showing 7 changed files with 362 additions and 63 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 0c12295a741d3186987f96f518cfbdaf01abb087
refs/heads/master: f0ad0860d01e47a3ffd220564c5c653b3afbe962
1 change: 1 addition & 0 deletions trunk/include/linux/fib_rules.h
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
#define FIB_RULES_IPV4 AF_INET
#define FIB_RULES_IPV6 AF_INET6
#define FIB_RULES_DECNET AF_DECnet
#define FIB_RULES_IPMR 128

struct fib_rule_hdr {
__u8 family;
Expand Down
3 changes: 2 additions & 1 deletion trunk/include/linux/mroute.h
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,8 @@
#define MRT_DEL_MFC (MRT_BASE+5) /* Delete a multicast forwarding entry */
#define MRT_VERSION (MRT_BASE+6) /* Get the kernel multicast version */
#define MRT_ASSERT (MRT_BASE+7) /* Activate PIM assert mode */
#define MRT_PIM (MRT_BASE+8) /* enable PIM code */
#define MRT_PIM (MRT_BASE+8) /* enable PIM code */
#define MRT_TABLE (MRT_BASE+9) /* Specify mroute table ID */

#define SIOCGETVIFCNT SIOCPROTOPRIVATE /* IP protocol privates */
#define SIOCGETSGCNT (SIOCPROTOPRIVATE+1)
Expand Down
5 changes: 5 additions & 0 deletions trunk/include/net/netns/ipv4.h
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,12 @@ struct netns_ipv4 {
atomic_t rt_genid;

#ifdef CONFIG_IP_MROUTE
#ifndef CONFIG_IP_MROUTE_MULTIPLE_TABLES
struct mr_table *mrt;
#else
struct list_head mr_tables;
struct fib_rules_ops *mr_rules_ops;
#endif
#endif
};
#endif
1 change: 1 addition & 0 deletions trunk/include/net/raw.h
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@ struct raw_sock {
/* inet_sock has to be the first member */
struct inet_sock inet;
struct icmp_filter filter;
u32 ipmr_table;
};

static inline struct raw_sock *raw_sk(const struct sock *sk)
Expand Down
14 changes: 14 additions & 0 deletions trunk/net/ipv4/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -250,6 +250,20 @@ config IP_MROUTE
<file:Documentation/networking/multicast.txt>. If you haven't heard
about it, you don't need it.

config IP_MROUTE_MULTIPLE_TABLES
bool "IP: multicast policy routing"
depends on IP_ADVANCED_ROUTER
select FIB_RULES
help
Normally, a multicast router runs a userspace daemon and decides
what to do with a multicast packet based on the source and
destination addresses. If you say Y here, the multicast router
will also be able to take interfaces and packet marks into
account and run multiple instances of userspace daemons
simultaneously, each one handling a single table.

If unsure, say N.

config IP_PIMSM_V1
bool "IP: PIM-SM version 1 support"
depends on IP_MROUTE
Expand Down
Loading

0 comments on commit fdd5251

Please sign in to comment.