Eliminate dependancy on kernel header files. Naughty naughty.

Using linux kernel headers is a Bad Thing(tm) and should be
punished.
This commit is contained in:
Eric Andersen 2002-12-11 03:49:33 +00:00
parent 8882ea53d5
commit acd244af1c

View File

@ -41,15 +41,13 @@
#include <scsi/scsi.h> /* SCSI_IOCTL_GET_IDLUN */ #include <scsi/scsi.h> /* SCSI_IOCTL_GET_IDLUN */
#undef u_char #undef u_char
#ifdef HAVE_blkpg_h
#include <linux/blkpg.h>
#endif
#include <sys/ioctl.h> #include <sys/ioctl.h>
#include <sys/param.h> #include <sys/param.h>
#include <linux/types.h> /* for __u32, __u16, __u8, __s16 */ #include <stdint.h> /* for uint32_t, uint16_t, uint8_t, int16_t, etc */
#include <linux/major.h> /* FLOPPY_MAJOR */
/* Copied from linux/major.h */
#define FLOPPY_MAJOR 2
#include <sys/utsname.h> #include <sys/utsname.h>
@ -497,7 +495,7 @@ check_aix_label( void )
#ifndef BSD_DISKMAGIC #ifndef BSD_DISKMAGIC
#define BSD_DISKMAGIC ((__u32) 0x82564557) #define BSD_DISKMAGIC ((uint32_t) 0x82564557)
#endif #endif
#ifndef BSD_MAXPARTITIONS #ifndef BSD_MAXPARTITIONS
@ -520,31 +518,31 @@ check_aix_label( void )
#define BSD_SBSIZE 8192 /* max size of fs superblock */ #define BSD_SBSIZE 8192 /* max size of fs superblock */
struct xbsd_disklabel { struct xbsd_disklabel {
__u32 d_magic; /* the magic number */ uint32_t d_magic; /* the magic number */
__s16 d_type; /* drive type */ int16_t d_type; /* drive type */
__s16 d_subtype; /* controller/d_type specific */ int16_t d_subtype; /* controller/d_type specific */
char d_typename[16]; /* type name, e.g. "eagle" */ char d_typename[16]; /* type name, e.g. "eagle" */
char d_packname[16]; /* pack identifier */ char d_packname[16]; /* pack identifier */
/* disk geometry: */ /* disk geometry: */
__u32 d_secsize; /* # of bytes per sector */ uint32_t d_secsize; /* # of bytes per sector */
__u32 d_nsectors; /* # of data sectors per track */ uint32_t d_nsectors; /* # of data sectors per track */
__u32 d_ntracks; /* # of tracks per cylinder */ uint32_t d_ntracks; /* # of tracks per cylinder */
__u32 d_ncylinders; /* # of data cylinders per unit */ uint32_t d_ncylinders; /* # of data cylinders per unit */
__u32 d_secpercyl; /* # of data sectors per cylinder */ uint32_t d_secpercyl; /* # of data sectors per cylinder */
__u32 d_secperunit; /* # of data sectors per unit */ uint32_t d_secperunit; /* # of data sectors per unit */
/* /*
* Spares (bad sector replacements) below * Spares (bad sector replacements) below
* are not counted in d_nsectors or d_secpercyl. * are not counted in d_nsectors or d_secpercyl.
* Spare sectors are assumed to be physical sectors * Spare sectors are assumed to be physical sectors
* which occupy space at the end of each track and/or cylinder. * which occupy space at the end of each track and/or cylinder.
*/ */
__u16 d_sparespertrack; /* # of spare sectors per track */ uint16_t d_sparespertrack; /* # of spare sectors per track */
__u16 d_sparespercyl; /* # of spare sectors per cylinder */ uint16_t d_sparespercyl; /* # of spare sectors per cylinder */
/* /*
* Alternate cylinders include maintenance, replacement, * Alternate cylinders include maintenance, replacement,
* configuration description areas, etc. * configuration description areas, etc.
*/ */
__u32 d_acylinders; /* # of alt. cylinders per unit */ uint32_t d_acylinders; /* # of alt. cylinders per unit */
/* hardware characteristics: */ /* hardware characteristics: */
/* /*
@ -563,30 +561,30 @@ struct xbsd_disklabel {
* Finally, d_cylskew is the offset of sector 0 on cylinder N * Finally, d_cylskew is the offset of sector 0 on cylinder N
* relative to sector 0 on cylinder N-1. * relative to sector 0 on cylinder N-1.
*/ */
__u16 d_rpm; /* rotational speed */ uint16_t d_rpm; /* rotational speed */
__u16 d_interleave; /* hardware sector interleave */ uint16_t d_interleave; /* hardware sector interleave */
__u16 d_trackskew; /* sector 0 skew, per track */ uint16_t d_trackskew; /* sector 0 skew, per track */
__u16 d_cylskew; /* sector 0 skew, per cylinder */ uint16_t d_cylskew; /* sector 0 skew, per cylinder */
__u32 d_headswitch; /* head switch time, usec */ uint32_t d_headswitch; /* head switch time, usec */
__u32 d_trkseek; /* track-to-track seek, usec */ uint32_t d_trkseek; /* track-to-track seek, usec */
__u32 d_flags; /* generic flags */ uint32_t d_flags; /* generic flags */
#define NDDATA 5 #define NDDATA 5
__u32 d_drivedata[NDDATA]; /* drive-type specific information */ uint32_t d_drivedata[NDDATA]; /* drive-type specific information */
#define NSPARE 5 #define NSPARE 5
__u32 d_spare[NSPARE]; /* reserved for future use */ uint32_t d_spare[NSPARE]; /* reserved for future use */
__u32 d_magic2; /* the magic number (again) */ uint32_t d_magic2; /* the magic number (again) */
__u16 d_checksum; /* xor of data incl. partitions */ uint16_t d_checksum; /* xor of data incl. partitions */
/* filesystem and partition information: */ /* filesystem and partition information: */
__u16 d_npartitions; /* number of partitions in following */ uint16_t d_npartitions; /* number of partitions in following */
__u32 d_bbsize; /* size of boot area at sn0, bytes */ uint32_t d_bbsize; /* size of boot area at sn0, bytes */
__u32 d_sbsize; /* max size of fs superblock, bytes */ uint32_t d_sbsize; /* max size of fs superblock, bytes */
struct xbsd_partition { /* the partition table */ struct xbsd_partition { /* the partition table */
__u32 p_size; /* number of sectors in partition */ uint32_t p_size; /* number of sectors in partition */
__u32 p_offset; /* starting sector */ uint32_t p_offset; /* starting sector */
__u32 p_fsize; /* filesystem basic fragment size */ uint32_t p_fsize; /* filesystem basic fragment size */
__u8 p_fstype; /* filesystem type, see below */ uint8_t p_fstype; /* filesystem type, see below */
__u8 p_frag; /* filesystem fragments per block */ uint8_t p_frag; /* filesystem fragments per block */
__u16 p_cpg; /* filesystem cylinders per group */ uint16_t p_cpg; /* filesystem cylinders per group */
} d_partitions[BSD_MAXPARTITIONS]; /* actually may be more */ } d_partitions[BSD_MAXPARTITIONS]; /* actually may be more */
}; };
@ -792,9 +790,9 @@ typedef struct {
#define SGI_INFO_MAGIC 0x00072959 #define SGI_INFO_MAGIC 0x00072959
#define SGI_INFO_MAGIC_SWAPPED 0x59290700 #define SGI_INFO_MAGIC_SWAPPED 0x59290700
#define SGI_SSWAP16(x) (sgi_other_endian ? __swap16(x) \ #define SGI_SSWAP16(x) (sgi_other_endian ? __swap16(x) \
: (__u16)(x)) : (uint16_t)(x))
#define SGI_SSWAP32(x) (sgi_other_endian ? __swap32(x) \ #define SGI_SSWAP32(x) (sgi_other_endian ? __swap32(x) \
: (__u32)(x)) : (uint32_t)(x))
#define sgilabel ((sgi_partition *)MBRbuffer) #define sgilabel ((sgi_partition *)MBRbuffer)
#define sgiparam (sgilabel->devparam) #define sgiparam (sgilabel->devparam)
@ -820,8 +818,8 @@ typedef struct {
unsigned short nsect; /* Sectors per track */ unsigned short nsect; /* Sectors per track */
unsigned char spare3[4]; /* Even more magic... */ unsigned char spare3[4]; /* Even more magic... */
struct sun_partition { struct sun_partition {
__u32 start_cylinder; uint32_t start_cylinder;
__u32 num_sectors; uint32_t num_sectors;
} partitions[8]; } partitions[8];
unsigned short magic; /* Magic number */ unsigned short magic; /* Magic number */
unsigned short csum; /* Label xor'd checksum */ unsigned short csum; /* Label xor'd checksum */
@ -831,9 +829,9 @@ typedef struct {
#define SUN_LABEL_MAGIC_SWAPPED 0xBEDA #define SUN_LABEL_MAGIC_SWAPPED 0xBEDA
#define sunlabel ((sun_partition *)MBRbuffer) #define sunlabel ((sun_partition *)MBRbuffer)
#define SUN_SSWAP16(x) (sun_other_endian ? __swap16(x) \ #define SUN_SSWAP16(x) (sun_other_endian ? __swap16(x) \
: (__u16)(x)) : (uint16_t)(x))
#define SUN_SSWAP32(x) (sun_other_endian ? __swap32(x) \ #define SUN_SSWAP32(x) (sun_other_endian ? __swap32(x) \
: (__u32)(x)) : (uint32_t)(x))
/* /*
* llseek.c -- stub calling the llseek system call * llseek.c -- stub calling the llseek system call
@ -855,7 +853,7 @@ typedef struct {
#define my_llseek lseek #define my_llseek lseek
#else #else
#include <linux/unistd.h> /* for __NR__llseek */ #include <asm/unistd.h> /* for __NR__llseek */
static int _llseek (unsigned int, unsigned long, static int _llseek (unsigned int, unsigned long,
unsigned long, ext2_loff_t *, unsigned int); unsigned long, ext2_loff_t *, unsigned int);
@ -1761,12 +1759,12 @@ alpha_bootblock_checksum (char *boot)
#if defined(CONFIG_FEATURE_SGI_LABEL) || defined(CONFIG_FEATURE_SUN_LABEL) #if defined(CONFIG_FEATURE_SGI_LABEL) || defined(CONFIG_FEATURE_SUN_LABEL)
static inline unsigned short static inline unsigned short
__swap16(unsigned short x) { __swap16(unsigned short x) {
return (((__u16)(x) & 0xFF) << 8) | (((__u16)(x) & 0xFF00) >> 8); return (((uint16_t)(x) & 0xFF) << 8) | (((uint16_t)(x) & 0xFF00) >> 8);
} }
static inline __u32 static inline uint32_t
__swap32(__u32 x) { __swap32(uint32_t x) {
return (((__u32)(x) & 0xFF) << 24) | (((__u32)(x) & 0xFF00) << 8) | (((__u32)(x) & 0xFF0000) >> 8) | (((__u32)(x) & 0xFF000000) >> 24); return (((uint32_t)(x) & 0xFF) << 24) | (((uint32_t)(x) & 0xFF00) << 8) | (((uint32_t)(x) & 0xFF0000) >> 8) | (((uint32_t)(x) & 0xFF000000) >> 24);
} }
#endif #endif
@ -1987,8 +1985,8 @@ sgi_list_table( int xtra ) {
w + 1, _("Device")); w + 1, _("Device"));
for (i = 0 ; i < partitions; i++) { for (i = 0 ; i < partitions; i++) {
if( sgi_get_num_sectors(i) || debug ) { if( sgi_get_num_sectors(i) || debug ) {
__u32 start = sgi_get_start_sector(i); uint32_t start = sgi_get_start_sector(i);
__u32 len = sgi_get_num_sectors(i); uint32_t len = sgi_get_num_sectors(i);
kpi++; /* only count nonempty partitions */ kpi++; /* only count nonempty partitions */
printf( printf(
"%2d: %s %4s %9ld %9ld %9ld %2x %s\n", "%2d: %s %4s %9ld %9ld %9ld %2x %s\n",
@ -2011,8 +2009,8 @@ sgi_list_table( int xtra ) {
{ {
if (sgilabel->directory[i].vol_file_size) if (sgilabel->directory[i].vol_file_size)
{ {
__u32 start = SGI_SSWAP32(sgilabel->directory[i].vol_file_start); uint32_t start = SGI_SSWAP32(sgilabel->directory[i].vol_file_start);
__u32 len = SGI_SSWAP32(sgilabel->directory[i].vol_file_size); uint32_t len = SGI_SSWAP32(sgilabel->directory[i].vol_file_size);
char*name = sgilabel->directory[i].vol_file_name; char*name = sgilabel->directory[i].vol_file_name;
printf(_("%2d: %-10s sector%5u size%8u\n"), printf(_("%2d: %-10s sector%5u size%8u\n"),
i, name, (unsigned int) start, (unsigned int) len); i, name, (unsigned int) start, (unsigned int) len);
@ -3222,8 +3220,8 @@ sun_list_table(int xtra) {
w + 1, _("Device")); w + 1, _("Device"));
for (i = 0 ; i < partitions; i++) { for (i = 0 ; i < partitions; i++) {
if (sunlabel->partitions[i].num_sectors) { if (sunlabel->partitions[i].num_sectors) {
__u32 start = SUN_SSWAP32(sunlabel->partitions[i].start_cylinder) * heads * sectors; uint32_t start = SUN_SSWAP32(sunlabel->partitions[i].start_cylinder) * heads * sectors;
__u32 len = SUN_SSWAP32(sunlabel->partitions[i].num_sectors); uint32_t len = SUN_SSWAP32(sunlabel->partitions[i].num_sectors);
printf( printf(
"%s %c%c %9ld %9ld %9ld%c %2x %s\n", "%s %c%c %9ld %9ld %9ld%c %2x %s\n",
/* device */ partname(disk_device, i+1, w), /* device */ partname(disk_device, i+1, w),