X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=daemon%2Fblockdev.c;h=1afb4b8d13723cc684b8444f0cb4660c111ca557;hp=0745007aa1f54da8bdf37ab58de61ef70ba42082;hb=0d13b052635c24919b1a42d00f20154526c25e96;hpb=84fc760439e82e6b3616abd0d1f9bd7d7eb01ec0 diff --git a/daemon/blockdev.c b/daemon/blockdev.c index 0745007..1afb4b8 100644 --- a/daemon/blockdev.c +++ b/daemon/blockdev.c @@ -32,13 +32,13 @@ * we centralize it in one call. */ static int64_t -call_blockdev (const char *device, char *switc, int extraarg, int prints) +call_blockdev (const char *device, const char *switc, int extraarg, int prints) { int r; int64_t rv; char *out, *err; const char *argv[] = { - "/sbin/blockdev", + "blockdev", switc, NULL, NULL, @@ -68,11 +68,13 @@ call_blockdev (const char *device, char *switc, int extraarg, int prints) if (sscanf (out, "%" SCNi64, &rv) != 1) { reply_with_error ("%s: expected output, but got nothing", argv[0]); free (out); + free (err); return -1; } } free (out); + free (err); return rv; } @@ -111,7 +113,7 @@ int do_blockdev_setbsz (const char *device, int blocksize) { if (blocksize <= 0 /* || blocksize >= what? */) { - reply_with_error ("blockdev_setbsz: blocksize must be > 0"); + reply_with_error ("blocksize must be > 0"); return -1; } return (int) call_blockdev (device, "--setbsz", blocksize, 0);