From: Yu Watanabe Date: Thu, 10 Oct 2024 03:43:57 +0000 (+0900) Subject: sd-netlink: shorten sd_netlink_message_read_string_strdup() a bit X-Git-Tag: v257-rc1~266^2~4 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=768237e73ad2e7872c6ad427d8a1c5d97d34293c;p=thirdparty%2Fsystemd.git sd-netlink: shorten sd_netlink_message_read_string_strdup() a bit --- diff --git a/src/libsystemd/sd-netlink/netlink-message.c b/src/libsystemd/sd-netlink/netlink-message.c index f66733414c7..e064c53486e 100644 --- a/src/libsystemd/sd-netlink/netlink-message.c +++ b/src/libsystemd/sd-netlink/netlink-message.c @@ -800,30 +800,16 @@ int sd_netlink_message_read_data(sd_netlink_message *m, uint16_t attr_type, size } int sd_netlink_message_read_string_strdup(sd_netlink_message *m, uint16_t attr_type, char **ret) { - void *attr_data; + const char *s; int r; assert_return(m, -EINVAL); - r = message_attribute_has_type(m, NULL, attr_type, NETLINK_TYPE_STRING); + r = sd_netlink_message_read_string(m, attr_type, &s); if (r < 0) return r; - r = netlink_message_read_internal(m, attr_type, &attr_data, NULL); - if (r < 0) - return r; - - if (ret) { - char *str; - - str = strndup(attr_data, r); - if (!str) - return -ENOMEM; - - *ret = str; - } - - return 0; + return strdup_to(ret, s); } int sd_netlink_message_read_string(sd_netlink_message *m, uint16_t attr_type, const char **ret) {