MirOS Manual: opendisk(3)

OPENDISK(3)                BSD Programmer's Manual                 OPENDISK(3)

NAME

     opendisk - open a disk's "raw" partition

LIBRARY

     libutil

SYNOPSIS

     #include <sys/types.h>
     #include <util.h>

     int
     opendisk(const char *path, int flags, char *buf, size_t buflen,
             int iscooked);

DESCRIPTION

     opendisk() opens path, for reading and/or writing as specified by the ar-
     gument flags using open(2), and the file descriptor is returned to the
     caller. buf is used to store the resultant filename. buflen is the size,
     in bytes, of the array referenced by buf (usually MAXPATHLEN bytes). If
     iscooked is non zero, the "cooked" partition (block device) is opened,
     rather than the "raw" partition (character device).

     opendisk() attempts to open the following variations of path, in order:

     path         The pathname as given.

     pathX        path with a suffix of 'X', where 'X' represents the raw par-
                  tition of the device, as determined by getrawpartition(3),
                  usually "c".

     If iscooked is zero, then the following two variations are attempted:

     /dev/rpath   path with a prefix of "/dev/r".

     /dev/rpathX  path with a prefix of "/dev/r" and a suffix of 'X' (q.v.).

     Otherwise (i.e., iscooked is non-zero), the following variations are at-
     tempted:

     /dev/path    path with a prefix of "/dev/".

     /dev/pathX   path with a prefix of "/dev/" and a suffix of 'X' (q.v.).

RETURN VALUES

     An open file descriptor, or -1 if the open(2) failed.

ERRORS

     opendisk() may set errno to one of the following values:

     [EINVAL]      O_CREAT was set in flags, or getrawpartition(3) didn't re-
                   turn a valid partition.

     [EFAULT]      buf was the NULL pointer.

     The opendisk() function may also set errno to any value specified by the
     open(2) function.

SEE ALSO

     open(2), getrawpartition(3)

HISTORY

     The opendisk() function first appeared in NetBSD 1.3.

MirOS BSD #10-current         September 22, 1997                             1

Generated on 2014-07-04 21:17:45 by $MirOS: src/scripts/roff2htm,v 1.79 2014/02/10 00:36:11 tg Exp $

These manual pages and other documentation are copyrighted by their respective writers; their source is available at our CVSweb, AnonCVS, and other mirrors. The rest is Copyright © 2002‒2014 The MirOS Project, Germany.
This product includes material provided by Thorsten Glaser.

This manual page’s HTML representation is supposed to be valid XHTML/1.1; if not, please send a bug report – diffs preferred.