From a126d66b5835280c995657c8348f2a4fa7b9cb8c Mon Sep 17 00:00:00 2001 From: Cong Wang Date: Wed, 12 Mar 2014 16:42:39 -0700 Subject: [PATCH] fill prio and protocol attr bits when parsing cls message Otherwise, the filter we get from a cls cache can't be used for removal. Cc: Thomas Haller Signed-off-by: Cong Wang Acked-by: Thomas Graf Signed-off-by: Thomas Haller --- lib/route/cls.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/route/cls.c b/lib/route/cls.c index 7a809bb..b7860c3 100644 --- a/lib/route/cls.c +++ b/lib/route/cls.c @@ -368,7 +368,11 @@ static int cls_msg_parser(struct nl_cache_ops *ops, struct sockaddr_nl *who, goto errout; cls->c_prio = TC_H_MAJ(cls->c_info) >> 16; + if (cls->c_prio) + cls->ce_mask |= CLS_ATTR_PRIO; cls->c_protocol = ntohs(TC_H_MIN(cls->c_info)); + if (cls->c_protocol) + cls->ce_mask |= CLS_ATTR_PROTOCOL; err = pp->pp_cb(OBJ_CAST(cls), pp); errout: