]> git.ipfire.org Git - thirdparty/util-linux.git/commitdiff
libblkid: (drbdmanage) improve version setting code
authorKarel Zak <kzak@redhat.com>
Mon, 31 Aug 2015 09:49:45 +0000 (11:49 +0200)
committerKarel Zak <kzak@redhat.com>
Mon, 31 Aug 2015 09:49:45 +0000 (11:49 +0200)
Signed-off-by: Karel Zak <kzak@redhat.com>
libblkid/src/superblocks/drbdmanage.c

index c8a7d4061b44903680798ef37cf4cdac4a42f040..bfe853ad303596b26ee240a582df5761b1a09379 100644 (file)
@@ -44,9 +44,6 @@ static int probe_drbdmanage(blkid_probe pr,
        struct drbdmanage_hdr *hdr;
        unsigned char *cp;
        struct drbdmanage_pers *prs;
-       char persistence_version[10];
-       int l;
-
 
        hdr = (struct drbdmanage_hdr*)
                blkid_probe_get_buffer(pr, 0, sizeof(*hdr));
@@ -68,12 +65,10 @@ static int probe_drbdmanage(blkid_probe pr,
        if (!prs)
                return errno ? -errno : 1;
 
-       if (memcmp(prs->magic, persistence_magic, sizeof(prs->magic)) == 0) {
-               l = sprintf(persistence_version, "%d",
-                               be32toh(prs->version_le));
-               blkid_probe_set_value(pr, "PERSISTENCE_VERSION",
-                               persistence_version, l);
-       }
+       if (memcmp(prs->magic, persistence_magic, sizeof(prs->magic)) == 0 &&
+           blkid_probe_sprintf_value(pr, "PERSISTENCE_VERSION",
+                                       "%d", be32_to_cpu(prs->version_le)) != 0)
+               return errno ? -errno : 1;
 
        return 0;
 }