On 03/07/2024 23:27, Sabrina Dubroca wrote:
2024-06-27, 15:08:24 +0200, Antonio Quartulli wrote:
quoted
int ovpn_nl_new_iface_doit(struct sk_buff *skb, struct genl_info *info)
{
[...]
quoted
+ msg = nlmsg_new(NLMSG_DEFAULT_SIZE, GFP_KERNEL);
+ if (!msg)
+ return -ENOMEM;
+
+ hdr = genlmsg_iput(msg, info);
+ if (!hdr) {
+ nlmsg_free(msg);
+ return -ENOBUFS;
+ }
+
+ if (nla_put_string(msg, OVPN_A_IFNAME, dev->name)) {
+ genlmsg_cancel(msg, hdr);
+ nlmsg_free(msg);
+ return -EMSGSIZE;
+ }
Maybe the ifindex as well? The notifications in later patches use that
rather than the name, but I don't know how the client handles this reply.
Userspace will just throw the name in if_nametoindex().
However passing both doesn't hurt anybody, and actually spares the
conversion in userspace.
will add ifindex too.
Thanks!
quoted
+ genlmsg_end(msg, hdr);
+
+ return genlmsg_reply(msg, info);
}
--
Antonio Quartulli
OpenVPN Inc.