diff --git a/distrib/sets/lists/minix/mi b/distrib/sets/lists/minix/mi index 66f9b556a..a5bedfbc0 100644 --- a/distrib/sets/lists/minix/mi +++ b/distrib/sets/lists/minix/mi @@ -309,7 +309,7 @@ ./usr/bin/dhrystone minix-sys ./usr/bin/diff minix-sys ./usr/bin/dirname minix-sys -./usr/bin/diskctl minix-sys +./usr/bin/diskctl minix-sys obsolete ./usr/bin/dosdir minix-sys ./usr/bin/dosread minix-sys ./usr/bin/doswrite minix-sys @@ -5311,6 +5311,7 @@ ./usr/sbin/btrace minix-sys ./usr/sbin/chown minix-sys ./usr/sbin/chroot minix-sys +./usr/sbin/diskctl minix-sys ./usr/sbin/group minix-sys ./usr/sbin/groupadd minix-sys ./usr/sbin/groupdel minix-sys diff --git a/minix/commands/Makefile b/minix/commands/Makefile index b8093d8d8..6cc5e6081 100644 --- a/minix/commands/Makefile +++ b/minix/commands/Makefile @@ -7,7 +7,7 @@ SUBDIR= add_route arp at backup \ ci cleantmp co \ compress crc cron crontab \ decomp16 DESCRIBE devmand devsize dhcpd \ - dhrystone diskctl \ + dhrystone \ eject fbdctl \ fix format fsck.mfs \ gcov-pull host \ diff --git a/minix/man/man8/Makefile b/minix/man/man8/Makefile index 4cdb186d2..0adc6e22f 100644 --- a/minix/man/man8/Makefile +++ b/minix/man/man8/Makefile @@ -1,6 +1,6 @@ MAN= add_route.8 backup.8 boot.8 \ cdprobe.8 cleantmp.8 config.8 cron.8 \ - dhcpd.8 diskctl.8 fbdctl.8 fdisk.8 \ + dhcpd.8 fbdctl.8 fdisk.8 \ getty.8 halt.8 hgfs.8 httpd.8 ifconfig.8 inet.8 init.8 \ intr.8 irdpd.8 loadramdisk.8 \ netconf.8 newroot.8 nonamed.8 \ diff --git a/minix/usr.sbin/Makefile b/minix/usr.sbin/Makefile index 006b48b20..6d6151cba 100644 --- a/minix/usr.sbin/Makefile +++ b/minix/usr.sbin/Makefile @@ -1,6 +1,7 @@ .include SUBDIR+= btrace +SUBDIR+= diskctl SUBDIR+= mkfs.mfs SUBDIR+= mkproto diff --git a/minix/commands/diskctl/Makefile b/minix/usr.sbin/diskctl/Makefile similarity index 71% rename from minix/commands/diskctl/Makefile rename to minix/usr.sbin/diskctl/Makefile index 7f923d991..96ab5c451 100644 --- a/minix/commands/diskctl/Makefile +++ b/minix/usr.sbin/diskctl/Makefile @@ -1,4 +1,4 @@ PROG= diskctl -MAN= +MAN= diskctl.8 .include diff --git a/minix/man/man8/diskctl.8 b/minix/usr.sbin/diskctl/diskctl.8 similarity index 100% rename from minix/man/man8/diskctl.8 rename to minix/usr.sbin/diskctl/diskctl.8 diff --git a/minix/commands/diskctl/diskctl.c b/minix/usr.sbin/diskctl/diskctl.c similarity index 55% rename from minix/commands/diskctl/diskctl.c rename to minix/usr.sbin/diskctl/diskctl.c index aae8b9bff..849d5b950 100644 --- a/minix/commands/diskctl/diskctl.c +++ b/minix/usr.sbin/diskctl/diskctl.c @@ -1,26 +1,28 @@ /* diskctl - control disk device driver parameters - by D.C. van Moolenbroek */ #include #include +#include #include #include #include -static char *name, *dev; - -static void usage(void) +static void __dead +usage(void) { - fprintf(stderr, "usage: %s [args]\n" - "\n" - "supported commands:\n" - " getwcache return write cache status\n" - " setwcache [on|off] set write cache status\n" - " flush flush write cache\n", - name); + fprintf(stderr, + "usage: %s [args]\n" + "\n" + "supported commands:\n" + " getwcache return write cache status\n" + " setwcache [on|off] set write cache status\n" + " flush flush write cache\n", + getprogname()); exit(EXIT_FAILURE); } -static int open_dev(int flags) +static int +open_dev(const char * dev, int flags) { int fd; @@ -35,20 +37,19 @@ static int open_dev(int flags) return fd; } -int main(int argc, char **argv) +int +main(int argc, char ** argv) { int fd, val; - name = argv[0]; + setprogname(argv[0]); if (argc < 3) usage(); - dev = argv[1]; - if (!strcasecmp(argv[2], "getwcache")) { if (argc != 3) usage(); - fd = open_dev(O_RDONLY); + fd = open_dev(argv[1], O_RDONLY); if (ioctl(fd, DIOCGETWC, &val) != 0) { perror("ioctl"); @@ -59,15 +60,18 @@ int main(int argc, char **argv) close(fd); printf("write cache is %s\n", val ? "on" : "off"); - } - else if (!strcasecmp(argv[2], "setwcache")) { + + } else if (!strcasecmp(argv[2], "setwcache")) { if (argc != 4) usage(); - fd = open_dev(O_WRONLY); + if (!strcasecmp(argv[3], "on")) + val = 1; + else if (!strcasecmp(argv[3], "off")) + val = 0; + else + usage(); - if (!strcasecmp(argv[3], "on")) val = 1; - else if (!strcasecmp(argv[3], "off")) val = 0; - else usage(); + fd = open_dev(argv[1], O_WRONLY); if (ioctl(fd, DIOCSETWC, &val) != 0) { perror("ioctl"); @@ -78,11 +82,11 @@ int main(int argc, char **argv) close(fd); printf("write cache %sabled\n", val ? "en" : "dis"); - } - else if (!strcasecmp(argv[2], "flush")) { + + } else if (!strcasecmp(argv[2], "flush")) { if (argc != 3) usage(); - fd = open_dev(O_WRONLY); + fd = open_dev(argv[1], O_WRONLY); if (ioctl(fd, DIOCFLUSH, NULL) != 0) { perror("ioctl"); @@ -93,8 +97,9 @@ int main(int argc, char **argv) close(fd); printf("write cache flushed\n"); - } - else usage(); + + } else + usage(); return EXIT_SUCCESS; }