genl: Update mt_id of cache ops when resolving genl id
The cache layer uses the message type array stored in the cache ops to lookup which cache a message belongs to. Update to the the message array with the resolved generic netlink id to make it compatible with the caching API. Allows to use nl_cache_refill() and others for generic netlink based caches with dynamic generic netlink ids. Signed-off-by: Thomas Graf <tgraf@suug.ch>
This commit is contained in:
parent
aad041c46f
commit
ad545f2854
1 changed files with 4 additions and 0 deletions
|
@ -295,6 +295,10 @@ static int __genl_ops_resolve(struct nl_cache *ctrl, struct genl_ops *ops)
|
|||
family = genl_ctrl_search_by_name(ctrl, ops->o_name);
|
||||
if (family != NULL) {
|
||||
ops->o_id = genl_family_get_id(family);
|
||||
|
||||
if (ops->o_cache_ops)
|
||||
ops->o_cache_ops->co_msgtypes[0].mt_id = ops->o_id;
|
||||
|
||||
genl_family_put(family);
|
||||
|
||||
return 0;
|
||||
|
|
Loading…
Add table
Reference in a new issue