route/tc: add internal rtnl_tc_data_peek() function

Signed-off-by: Thomas Haller <thaller@redhat.com>
This commit is contained in:
Thomas Haller 2015-03-04 14:15:34 +01:00
parent 4ff512b054
commit e89aec9bc1
2 changed files with 14 additions and 0 deletions

View file

@ -114,6 +114,7 @@ extern int rtnl_tc_compare(struct nl_object *,
struct nl_object *,
uint32_t, int);
void * rtnl_tc_data_peek(struct rtnl_tc *tc);
extern void * rtnl_tc_data(struct rtnl_tc *);
extern void * rtnl_tc_data_check(struct rtnl_tc *,
struct rtnl_tc_ops *, int *);

View file

@ -1025,6 +1025,19 @@ void rtnl_tc_unregister(struct rtnl_tc_ops *ops)
nl_list_del(&ops->to_list);
}
/**
* Returns the private data of the traffic control object.
* Contrary to rtnl_tc_data(), this returns NULL if the data is
* not yet allocated
* @arg tc traffic control object
*
* @return pointer to the private data or NULL if not allocated.
*/
void *rtnl_tc_data_peek(struct rtnl_tc *tc)
{
return tc->tc_subdata ? nl_data_get(tc->tc_subdata) : NULL;
}
/**
* Return pointer to private data of traffic control object
* @arg tc traffic control object