summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2022-06-16 20:30:07 +0200
committerThomas Haller <thaller@redhat.com>2022-06-17 19:38:57 +0200
commit4a22abdda1595224dcad1b9b101e07d93e4a6637 (patch)
treea8ec4c5f9cf9a782c77c4ff91fbd855d022ccf22
parent612528af89a223692df187370235ad4125925651 (diff)
downloadNetworkManager-4a22abdda1595224dcad1b9b101e07d93e4a6637.tar.gz
platform/netlink: add nm_auto_nlsock cleanup macro
-rw-r--r--src/libnm-platform/nm-netlink.h9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/libnm-platform/nm-netlink.h b/src/libnm-platform/nm-netlink.h
index bb1e41eed5..2ac8511393 100644
--- a/src/libnm-platform/nm-netlink.h
+++ b/src/libnm-platform/nm-netlink.h
@@ -413,11 +413,7 @@ void nlmsg_set_src(struct nl_msg *msg, struct sockaddr_nl *addr);
struct ucred *nlmsg_get_creds(struct nl_msg *msg);
void nlmsg_set_creds(struct nl_msg *msg, struct ucred *creds);
-static inline void
-_nm_auto_nl_msg_cleanup(struct nl_msg **ptr)
-{
- nlmsg_free(*ptr);
-}
+NM_AUTO_DEFINE_FCN0(struct nl_msg *, _nm_auto_nl_msg_cleanup, nlmsg_free);
#define nm_auto_nlmsg nm_auto(_nm_auto_nl_msg_cleanup)
static inline void *
@@ -496,6 +492,9 @@ struct nl_sock *nl_socket_alloc(void);
void nl_socket_free(struct nl_sock *sk);
+NM_AUTO_DEFINE_FCN0(struct nl_sock *, _nm_auto_nlsock, nl_socket_free);
+#define nm_auto_nlsock nm_auto(_nm_auto_nlsock)
+
int nl_socket_get_fd(const struct nl_sock *sk);
struct sockaddr_nl *nlmsg_get_dst(struct nl_msg *msg);