]> err.no Git - linux-2.6/blobdiff - net/ipv6/fib6_rules.c
[IPV6] ROUTE: Routing by Traffic Class.
[linux-2.6] / net / ipv6 / fib6_rules.c
index 7b4908cc52b36b361832ff422d7ede2459b46633..91f6233d8efd47955b6aa9da1a0d850bf693075e 100644 (file)
@@ -121,6 +121,9 @@ static int fib6_rule_match(struct fib_rule *rule, struct flowi *fl, int flags)
            !ipv6_prefix_equal(&fl->fl6_src, &r->src.addr, r->src.plen))
                return 0;
 
+       if (r->tclass && r->tclass != ((ntohl(fl->fl6_flowlabel) >> 20) & 0xff))
+               return 0;
+
        return 1;
 }