diff options
author | Theo de Raadt <deraadt@cvs.openbsd.org> | 2010-05-25 19:01:33 +0000 |
---|---|---|
committer | Theo de Raadt <deraadt@cvs.openbsd.org> | 2010-05-25 19:01:33 +0000 |
commit | f6ac47ad9e0e3ec67f903d6deb47bb16de1699bd (patch) | |
tree | a01ed7d11cc908e38f243c19a448f477c6afc539 /sbin | |
parent | 8e58e0338b1f98e090716d223981c9edbf3c1b35 (diff) |
use opendev(), as requested in 6373. document this using text borrowed from
disklabel(8), and while at it, fix the usage code to not be utterly distasteful
ok drahn
Diffstat (limited to 'sbin')
-rw-r--r-- | sbin/pdisk/Makefile | 5 | ||||
-rw-r--r-- | sbin/pdisk/errors.c | 7 | ||||
-rw-r--r-- | sbin/pdisk/file_media.c | 3 | ||||
-rw-r--r-- | sbin/pdisk/pdisk.8 | 57 | ||||
-rw-r--r-- | sbin/pdisk/pdisk.c | 2 |
5 files changed, 30 insertions, 44 deletions
diff --git a/sbin/pdisk/Makefile b/sbin/pdisk/Makefile index 4e88ef16bcd..234ce8b739d 100644 --- a/sbin/pdisk/Makefile +++ b/sbin/pdisk/Makefile @@ -1,8 +1,9 @@ -# $Id: Makefile,v 1.8 2006/05/11 17:20:40 martin Exp $ +# $Id: Makefile,v 1.9 2010/05/25 19:01:32 deraadt Exp $ .if ${MACHINE} == "macppc" || ${MACHINE} == "mac68k" PROG= pdisk - +LDADD= -lutil +DPADD= ${LIBUTIL} CFLAGS+=-Wall SRCS= bitfield.c convert.c deblock_media.c dump.c errors.c \ diff --git a/sbin/pdisk/errors.c b/sbin/pdisk/errors.c index 12e2d84a40c..163f1180527 100644 --- a/sbin/pdisk/errors.c +++ b/sbin/pdisk/errors.c @@ -83,12 +83,7 @@ init_program_name(char **argv) void do_help() { - printf("\t%s [-h]\n", program_name); - printf("\t%s [-v]\n", program_name); - printf("\t%s [-l] name [...]\n", program_name); - printf("\t%s [-r] name ...\n", program_name); - printf("\t%s [-i]\n", program_name); - printf("\t%s name [...]\n", program_name); + printf("usage: %s [-hilrv] disk\n", program_name); /* {"debug", no_argument, 0, 'd'}, {"abbr", no_argument, 0, 'a'}, diff --git a/sbin/pdisk/file_media.c b/sbin/pdisk/file_media.c index 96c71ca4a36..321d7aabe1c 100644 --- a/sbin/pdisk/file_media.c +++ b/sbin/pdisk/file_media.c @@ -40,6 +40,7 @@ #include <sys/ioctl.h> #include <sys/stat.h> +#include <util.h> #include "file_media.h" #include "errors.h" @@ -193,7 +194,7 @@ open_file_as_media(char *file, int oflag) } a = 0; - fd = open(file, oflag); + fd = opendev(file, oflag, OPENDEV_PART, NULL); if (fd >= 0) { a = new_file_media(); if (a != 0) { diff --git a/sbin/pdisk/pdisk.8 b/sbin/pdisk/pdisk.8 index 49d33dfd96e..b845b3afa13 100644 --- a/sbin/pdisk/pdisk.8 +++ b/sbin/pdisk/pdisk.8 @@ -1,4 +1,4 @@ -.\" $OpenBSD: pdisk.8,v 1.14 2007/05/31 19:19:46 jmc Exp $ +.\" $OpenBSD: pdisk.8,v 1.15 2010/05/25 19:01:32 deraadt Exp $ .\" .\" Copyright 1996,1997,1998 by Apple Computer, Inc. .\" All Rights Reserved @@ -19,7 +19,7 @@ .\" NEGLIGENCE, OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION .\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" -.Dd $Mdocdate: May 31 2007 $ +.Dd $Mdocdate: May 25 2010 $ .Dt PDISK 8 .Os .Sh NAME @@ -27,33 +27,14 @@ .Nd HFS(DPME) partition maintenance program .Sh SYNOPSIS .Nm pdisk -.Op Fl h -.Op Fl i -.Op Fl l -.Op Fl r -.Op Fl v -.Ar device +.Op Fl hilrv +.Ar disk .Sh DESCRIPTION .Nm is a menu driven program which partitions disks using the standard Apple disk partitioning scheme described in "Inside Macintosh: Devices". It does not support the Intel/DOS partitioning scheme supported by .Em fdisk . -The -.Ar device -is usually one of the following: -.Pp -.Pa /dev/sd0c -.Pa /dev/sd1c -.Pa /dev/sd2c -.Pa /dev/sd3c -.Pa /dev/sd4c -.Pa /dev/sd5c -.Pa /dev/sd6c -.Pa /dev/wd0c -.Pa /dev/wd1c -.Pa /dev/wd2c -.Pa /dev/wd3c .Pp The options are as follows: .Bl -tag -width Ds @@ -67,20 +48,30 @@ Causes to go into an interactive mode similar to the Mac OS version of the program. .It Fl l List the partition tables for the specified -.Ar devices . +.Ar disk . .It Fl r Prevents .Nm -from writing to the device. +from writing to the disk. .It Fl v Prints version number of the program. +.It Ar disk +Specify the +.Ar disk +to operate on. +It can be specified either by its full pathname or an abbreviated disk form. +In its abbreviated form, the path to the device, the +.Sq r +denoting +.Qq raw device , +and the partition letter, can all be omitted. +For example, the first IDE disk can be specified as either +.Pa /dev/rwd0c , +.Pa /dev/wd0c , +or +.Ar wd0 . .El .Pp -An argument which is simply the name of a -.Ar device -indicates that -.Nm -should edit the partition table of that device. .Sh COMMAND MODE The list of commands and their explanations are given below. .Bl -tag -width "update" @@ -181,9 +172,9 @@ Examples of valid partition types are: Apple_Free, Apple_HFS, and .Pp The .Em i -(initialize) command prompts for the size of the device. +(initialize) command prompts for the size of the disk. This was done to get around a bug in the kernel where it reports the wrong -size for the device. +size for the disk. .Pp The .Em w @@ -192,7 +183,7 @@ but there is currently a bug in the interaction between the disk and the kernel where .Nm disklabel .Fl c -.Ar device +.Ar disk must be issued to cause the kernel to reinterpret the new label. .Sh SEE ALSO .Xr disklabel 8 , diff --git a/sbin/pdisk/pdisk.c b/sbin/pdisk/pdisk.c index 2c16d5704ca..3c594c08ab0 100644 --- a/sbin/pdisk/pdisk.c +++ b/sbin/pdisk/pdisk.c @@ -172,7 +172,6 @@ main(int argc, char **argv) dump(argv[name_index++]); } } else { - usage("no device argument"); do_help(); } } else if (name_index < argc) { @@ -180,7 +179,6 @@ main(int argc, char **argv) edit(argv[name_index++], 0); } } else if (!vflag) { - usage("no device argument"); do_help(); } return 0; |