These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git] / kernel / net / ipv6 / netfilter / ip6t_REJECT.c
index 12331ef..db29bbf 100644 (file)
@@ -35,14 +35,12 @@ MODULE_AUTHOR("Yasuyuki KOZAKAI <yasuyuki.kozakai@toshiba.co.jp>");
 MODULE_DESCRIPTION("Xtables: packet \"rejection\" target for IPv6");
 MODULE_LICENSE("GPL");
 
-
 static unsigned int
 reject_tg6(struct sk_buff *skb, const struct xt_action_param *par)
 {
        const struct ip6t_reject_info *reject = par->targinfo;
-       struct net *net = dev_net((par->in != NULL) ? par->in : par->out);
+       struct net *net = par->net;
 
-       pr_debug("%s: medium point\n", __func__);
        switch (reject->with) {
        case IP6T_ICMP6_NO_ROUTE:
                nf_send_unreach6(net, skb, ICMPV6_NOROUTE, par->hooknum);
@@ -65,8 +63,11 @@ reject_tg6(struct sk_buff *skb, const struct xt_action_param *par)
        case IP6T_TCP_RESET:
                nf_send_reset6(net, skb, par->hooknum);
                break;
-       default:
-               net_info_ratelimited("case %u not handled yet\n", reject->with);
+       case IP6T_ICMP6_POLICY_FAIL:
+               nf_send_unreach6(net, skb, ICMPV6_POLICY_FAIL, par->hooknum);
+               break;
+       case IP6T_ICMP6_REJECT_ROUTE:
+               nf_send_unreach6(net, skb, ICMPV6_REJECT_ROUTE, par->hooknum);
                break;
        }