]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - include/net/sch_generic.h
net: Make qdisc_skb_cb upper size bound explicit.
[karo-tx-linux.git] / include / net / sch_generic.h
index f6bb08b73ca4c81a923a2d575801c5a38940efa4..55ce96b53b092e3ca04db6eaa7d6888fb9f478bc 100644 (file)
@@ -220,9 +220,16 @@ struct tcf_proto {
 
 struct qdisc_skb_cb {
        unsigned int            pkt_len;
-       long                    data[];
+       unsigned char           data[24];
 };
 
+static inline void qdisc_cb_private_validate(const struct sk_buff *skb, int sz)
+{
+       struct qdisc_skb_cb *qcb;
+       BUILD_BUG_ON(sizeof(skb->cb) < sizeof(unsigned int) + sz);
+       BUILD_BUG_ON(sizeof(qcb->data) < sz);
+}
+
 static inline int qdisc_qlen(const struct Qdisc *q)
 {
        return q->q.qlen;