]> git.ipfire.org Git - thirdparty/systemd.git/blobdiff - src/libsystemd/sd-netlink/netlink-message.c
sd-netlink: allow sd_netlink_message_read() to be used for union types
[thirdparty/systemd.git] / src / libsystemd / sd-netlink / netlink-message.c
index dafc16f258c43af8e6ad3c49af4ce9ee3c289f40..34b4c23bd546732877637222c3840180508a9a83 100644 (file)
@@ -741,11 +741,11 @@ _public_ int sd_netlink_message_read(sd_netlink_message *m, unsigned short type,
         if (r < 0)
                 return r;
 
-        if ((size_t) r < size)
-                return -EIO;
+        if ((size_t) r > size)
+                return -ENOBUFS;
 
         if (data)
-                memcpy(data, attr_data, size);
+                memcpy(data, attr_data, r);
 
         return r;
 }