diff options
Diffstat (limited to 'daemon/zero.c')
-rw-r--r-- | daemon/zero.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/daemon/zero.c b/daemon/zero.c index 398f8440..00badd23 100644 --- a/daemon/zero.c +++ b/daemon/zero.c @@ -73,6 +73,30 @@ do_zero (const char *device) } int +optgroup_wipefs_available (void) +{ + return prog_exists ("wipefs"); +} + +int +do_wipefs (const char *device) +{ + int r; + char *err = NULL; + + const char *wipefs[] = {"wipefs", "-a", device, NULL}; + r = commandv (NULL, &err, wipefs); + if (r == -1) { + reply_with_error ("%s", err); + free (err); + return -1; + } + + free (err); + return 0; +} + +int do_zero_device (const char *device) { int64_t ssize = do_blockdev_getsize64 (device); |