[BACK]Return to disklabel.h CVS log [TXT][DIR] Up to [local] / sys / dev / sun

Annotation of sys/dev/sun/disklabel.h, Revision 1.1

1.1     ! nbrk        1: /*     $OpenBSD: disklabel.h,v 1.4 2007/05/31 00:30:10 deraadt Exp $   */
        !             2: /*     $NetBSD: disklabel.h,v 1.2 1998/08/22 14:55:28 mrg Exp $ */
        !             3:
        !             4: /*
        !             5:  * Copyright (c) 1992, 1993
        !             6:  *     The Regents of the University of California.  All rights reserved.
        !             7:  *
        !             8:  * This software was developed by the Computer Systems Engineering group
        !             9:  * at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
        !            10:  * contributed to Berkeley.
        !            11:  *
        !            12:  * All advertising materials mentioning features or use of this software
        !            13:  * must display the following acknowledgement:
        !            14:  *     This product includes software developed by the University of
        !            15:  *     California, Lawrence Berkeley Laboratory.
        !            16:  *
        !            17:  * Redistribution and use in source and binary forms, with or without
        !            18:  * modification, are permitted provided that the following conditions
        !            19:  * are met:
        !            20:  * 1. Redistributions of source code must retain the above copyright
        !            21:  *    notice, this list of conditions and the following disclaimer.
        !            22:  * 2. Redistributions in binary form must reproduce the above copyright
        !            23:  *    notice, this list of conditions and the following disclaimer in the
        !            24:  *    documentation and/or other materials provided with the distribution.
        !            25:  * 3. Neither the name of the University nor the names of its contributors
        !            26:  *    may be used to endorse or promote products derived from this software
        !            27:  *    without specific prior written permission.
        !            28:  *
        !            29:  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
        !            30:  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
        !            31:  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
        !            32:  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
        !            33:  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
        !            34:  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
        !            35:  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
        !            36:  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
        !            37:  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
        !            38:  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
        !            39:  * SUCH DAMAGE.
        !            40:  *
        !            41:  *     @(#)sun_disklabel.h     8.1 (Berkeley) 6/11/93
        !            42:  */
        !            43:
        !            44: /*
        !            45:  * SunOS disk label layout (only relevant portions discovered here).
        !            46:  */
        !            47:
        !            48: #define        SUN_DKMAGIC     55998
        !            49:
        !            50: /* partition info */
        !            51: struct sun_dkpart {
        !            52:        int     sdkp_cyloffset;         /* starting cylinder */
        !            53:        int     sdkp_nsectors;          /* number of sectors */
        !            54: };
        !            55:
        !            56: #define        SUNXPART        8
        !            57: #define        SL_XPMAG        (0x199d1fe2+SUNXPART)
        !            58: #define        SL_XPMAGTYP     (0x199d1fe2+SUNXPART+1)         /* contains types */
        !            59:
        !            60: struct sun_disklabel {                 /* total size = 512 bytes */
        !            61:        char            sl_text[128];
        !            62:        u_int           sl_xpsum;               /* additive cksum, [xl_xpmag,sl_xx1) */
        !            63:        u_int           sl_xpmag;               /* "extended" magic number */
        !            64:        struct sun_dkpart sl_xpart[SUNXPART];   /* "extended" partitions, i through p */
        !            65:        u_char          sl_types[MAXPARTITIONS];
        !            66:        u_int8_t        sl_fragblock[MAXPARTITIONS];
        !            67:        u_int16_t       sl_cpg[MAXPARTITIONS];
        !            68:        char            sl_xxx1[292 - sizeof(u_int) - sizeof(u_int) -
        !            69:                            (sizeof(struct sun_dkpart) * SUNXPART) -
        !            70:                            sizeof(u_char) * MAXPARTITIONS -
        !            71:                            sizeof(u_int8_t) * MAXPARTITIONS -
        !            72:                            sizeof(u_int16_t) * MAXPARTITIONS];
        !            73:        u_short sl_rpm;                 /* rotational speed */
        !            74:        u_short sl_pcylinders;          /* number of physical cyls */
        !            75: #define        sl_pcyl  sl_pcylinders          /* XXX: old sun3 */
        !            76:        u_short sl_sparespercyl;        /* spare sectors per cylinder */
        !            77:        char    sl_xxx3[4];
        !            78:        u_short sl_interleave;          /* interleave factor */
        !            79:        u_short sl_ncylinders;          /* data cylinders */
        !            80:        u_short sl_acylinders;          /* alternate cylinders */
        !            81:        u_short sl_ntracks;             /* tracks per cylinder */
        !            82:        u_short sl_nsectors;            /* sectors per track */
        !            83:        char    sl_xxx4[4];
        !            84:        struct sun_dkpart sl_part[8];   /* partition layout */
        !            85:        u_short sl_magic;               /* == SUN_DKMAGIC */
        !            86:        u_short sl_cksum;               /* xor checksum of all shorts */
        !            87: };

CVSweb