ipv6: Flow label state ranges
[deliverable/linux.git] / net / ipv6 / ip6_flowlabel.c
index d491125011c4d1c47fd92180efb1cf2e22a85e22..1f9ebe3cbb4ac042edd0b05754d1fc03cdfe73cd 100644 (file)
@@ -595,6 +595,10 @@ int ipv6_flowlabel_opt(struct sock *sk, char __user *optval, int optlen)
                if (freq.flr_label & ~IPV6_FLOWLABEL_MASK)
                        return -EINVAL;
 
+               if (net->ipv6.sysctl.flowlabel_state_ranges &&
+                   (freq.flr_label & IPV6_FLOWLABEL_STATELESS_FLAG))
+                       return -ERANGE;
+
                fl = fl_create(net, sk, &freq, optval, optlen, &err);
                if (!fl)
                        return err;
This page took 0.025749 seconds and 5 git commands to generate.