basic: make BASIC_ATTR_TARGET optional

At least in kernel TCA_BASIC_CLASSID is optional.

Cc: Thomas Haller <thaller@redhat.com>
Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
Signed-off-by: Thomas Haller <thaller@redhat.com>
This commit is contained in:
Cong Wang 2014-02-26 13:35:11 -08:00 committed by Thomas Haller
parent 85ec9c7ad8
commit 20aa7320d8

View file

@ -142,10 +142,8 @@ static int basic_msg_fill(struct rtnl_tc *tc, void *data,
if (!b)
return 0;
if (!(b->b_mask & BASIC_ATTR_TARGET))
return -NLE_MISSING_ATTR;
NLA_PUT_U32(msg, TCA_BASIC_CLASSID, b->b_target);
if (b->b_mask & BASIC_ATTR_TARGET)
NLA_PUT_U32(msg, TCA_BASIC_CLASSID, b->b_target);
if (b->b_mask & BASIC_ATTR_EMATCH &&
rtnl_ematch_fill_attr(msg, TCA_BASIC_EMATCHES, b->b_ematch) < 0)