flow_dissector: Correctly handle parsing FCoE
[deliverable/linux.git] / net / core / flow_dissector.c
index 8bd745f7273492fb138f582fa1064dc17d19c07f..6288153d7f368382325ffacf04ca92e3f4919169 100644 (file)
@@ -340,8 +340,11 @@ mpls:
        }
 
        case htons(ETH_P_FCOE):
-               key_control->thoff = (u16)(nhoff + FCOE_HEADER_LEN);
-               /* fall through */
+               if ((hlen - nhoff) < FCOE_HEADER_LEN)
+                       goto out_bad;
+
+               nhoff += FCOE_HEADER_LEN;
+               goto out_good;
        default:
                goto out_bad;
        }
This page took 0.026274 seconds and 5 git commands to generate.