--- a/dasdfmt/dasdfmt.h
+++ b/dasdfmt/dasdfmt.h
@@ -69,13 +69,13 @@
 	"is in invalid format\n",prog_name);}
 
 typedef struct bootstrap1 {
-	u_int32_t key;
-	u_int32_t data[6];
+	uint32_t key;
+	uint32_t data[6];
 } __attribute__ ((packed)) bootstrap1_t;
 
 typedef struct bootstrap2 {
-	u_int32_t key;
-	u_int32_t data[36];
+	uint32_t key;
+	uint32_t data[36];
 } __attribute__ ((packed)) bootstrap2_t;
 
 
diff --git a/dasdview/dasdview.c b/dasdview/dasdview.c
index 0c1581a..8515fb6 100644
--- a/dasdview/dasdview.c
+++ b/dasdview/dasdview.c
@@ -630,7 +630,7 @@
 	volume_label_t vlabel;
 	format1_label_t tmp;
 	unsigned long maxblk, pos;
-	u_int64_t vtocblk;
+	uint64_t vtocblk;
 	int i;
 
 	pos = info->dasd_info.label_block * info->blksize;
@@ -647,7 +647,7 @@
 		exit(EXIT_FAILURE);
 	}
 
-	vtocblk = (u_int64_t)vtoc_get_cyl_from_cchhb(&vlabel.vtoc) *
+	vtocblk = (uint64_t)vtoc_get_cyl_from_cchhb(&vlabel.vtoc) *
 		info->geo.heads * info->geo.sectors +
 		vtoc_get_head_from_cchhb(&vlabel.vtoc) * info->geo.sectors +
 		vlabel.vtoc.b;
@@ -2067,7 +2067,7 @@ static void dasdview_print_raw_track(char *trackdata,
 {
 	struct eckd_count *ecount;
 	char *data;
-	u_int32_t record;
+	uint32_t record;
 
 	record = 0;
 	data = trackdata;
@@ -2092,8 +2092,8 @@ static void dasdview_print_raw_track(char *trackdata,
 
 static void dasdview_view_raw(dasdview_info_t *info)
 {
-	u_int64_t residual, trckstart, trckend, track, trckbuffsize;
-	u_int64_t tracks_to_read, trckcount, i;
+	uint64_t residual, trckstart, trckend, track, trckbuffsize;
+	uint64_t tracks_to_read, trckcount, i;
 	char *trackdata;
 	char *data;
 	int rc;
diff --git a/dasdview/dasdview.h b/dasdview/dasdview.h
index cc72e0a..8e34a10 100644
--- a/dasdview/dasdview.h
+++ b/dasdview/dasdview.h
@@ -68,7 +68,7 @@
 	int dasd_info_version;
 	unsigned int blksize;
 	struct hd_geometry geo;
-	u_int32_t hw_cylinders;
+	uint32_t hw_cylinders;
 
 	unsigned long long begin;
 	unsigned long long size;
diff --git a/fdasd/fdasd.c b/fdasd/fdasd.c
index 7c1a1a7..0898fb9 100644
--- a/fdasd/fdasd.c
+++ b/fdasd/fdasd.c
@@ -211,9 +211,9 @@ static void setpos(fdasd_anchor_t *anc, int dsn, int pos)
 	anc->partno[dsn] = pos;
 }
 
-static u_int32_t get_usable_cylinders(fdasd_anchor_t *anc)
+static uint32_t get_usable_cylinders(fdasd_anchor_t *anc)
 {
-	u_int32_t cyl;
+	uint32_t cyl;
 
 	/* large volume */
 	if (anc->f4->DS4DEVCT.DS4DSCYL == LV_COMPAT_CYL &&
@@ -221,7 +221,7 @@ static u_int32_t get_usable_cylinders(fdasd_anchor_t *anc)
 		return anc->f4->DS4DCYL;
 	/* normal volume */
 	if (anc->f4->DS4DEVCT.DS4DEVFG & ALTERNATE_CYLINDERS_USED)
-		cyl = anc->f4->DS4DEVCT.DS4DSCYL - (u_int16_t)anc->f4->DS4DEVAC;
+		cyl = anc->f4->DS4DEVCT.DS4DSCYL - (uint16_t)anc->f4->DS4DEVAC;
 	else
 		cyl = anc->f4->DS4DEVCT.DS4DSCYL;
 
@@ -230,7 +230,7 @@ static u_int32_t get_usable_cylinders(fdasd_anchor_t *anc)
 
 static void get_addr_of_highest_f1_f8_label(fdasd_anchor_t *anc, cchhb_t *addr)
 {
-	u_int8_t record;
+	uint8_t record;
 	/* We have to count the following labels:
 	 * one format 4
 	 * one format 5
@@ -2468,9 +2468,9 @@ static int fdasd_get_partition_data(fdasd_anchor_t *anc, extent_t *part_extent,
 	unsigned long start, stop, limit;
 	partition_info_t *part_tmp;
 	cchh_t llimit, ulimit;
-	u_int16_t hh, head;
-	u_int32_t cc, cyl;
-	u_int8_t b1, b2;
+	uint16_t hh, head;
+	uint32_t cc, cyl;
+	uint8_t b1, b2;
 	char mesg[48];
 
 	start = FIRST_USABLE_TRK;
@@ -2775,8 +2775,8 @@ static void fdasd_auto_partition(fdasd_anchor_t *anc)
 {
 	partition_info_t *part_info = anc->first;
 	cchh_t llimit, ulimit;
-	u_int16_t head;
-	u_int32_t cyl;
+	uint16_t head;
+	uint32_t cyl;
 	extent_t ext;
 	cchhb_t hf1;
 
diff --git a/fdasd/fdasd.h b/fdasd/fdasd.h
index f22444e..39ea480 100644
--- a/fdasd/fdasd.h
+++ b/fdasd/fdasd.h
@@ -67,7 +67,7 @@ static struct fdasd_options options = {
 };
 
 typedef struct partition_info {
-	u_int8_t	   used;
+	uint8_t	   used;
 	unsigned long	   start_trk;
 	unsigned long	   end_trk;
 	unsigned long	   len_trk;
@@ -100,7 +100,7 @@
 	int option_reuse;
 	int option_recreate;
 	int partno[USABLE_PARTITIONS];
-	u_int16_t dev_type;
+	uint16_t dev_type;
 	unsigned int used_partitions;
 	unsigned long label_pos;
 	unsigned int  blksize;
@@ -113,8 +113,8 @@
 	partition_info_t *last;
 	volume_label_t	 *vlabel;
 	config_data_t confdata[USABLE_PARTITIONS];
-	u_int32_t hw_cylinders;
-	u_int32_t formatted_cylinders;
+	uint32_t hw_cylinders;
+	uint32_t formatted_cylinders;
 } fdasd_anchor_t;
 
 enum offset {lower, upper};
diff --git a/include/lib/vtoc.h b/include/lib/vtoc.h
index ea5b1c2..592200c 100644
--- a/include/lib/vtoc.h
+++ b/include/lib/vtoc.h
@@ -18,6 +18,7 @@
 #include <sys/stat.h>
 #include <time.h>
 #include <unistd.h>
+#include <stdint.h>
 
 #include "lib/dasd_base.h"
 
@@ -43,27 +44,27 @@
 
 typedef struct ttr 
 {
-        u_int16_t tt;
-        u_int8_t  r;
+        uint16_t tt;
+        uint8_t  r;
 } __attribute__ ((packed)) ttr_t;
 
 typedef struct cchhb 
 {
-        u_int16_t cc;
-        u_int16_t hh;
-        u_int8_t b;
+        uint16_t cc;
+        uint16_t hh;
+        uint8_t b;
 } __attribute__ ((packed)) cchhb_t;
 
 typedef struct cchh 
 {
-        u_int16_t cc;
-        u_int16_t hh;
+        uint16_t cc;
+        uint16_t hh;
 } __attribute__ ((packed)) cchh_t;
 
 typedef struct labeldate 
 {
-        u_int8_t  year;
-        u_int16_t day;
+        uint8_t  year;
+        uint16_t day;
 } __attribute__ ((packed)) labeldate_t;
 
 /*
@@ -83,7 +84,7 @@
         char volkey[4];         /* volume key = volume label                 */
 	char vollbl[4];	        /* volume label                              */
 	char volid[6];	        /* volume identifier                         */
-	u_int8_t security;	        /* security byte                             */
+	uint8_t security;	        /* security byte                             */
 	cchhb_t vtoc;           /* VTOC address                              */
 	char res1[5];	        /* reserved                                  */
         char cisize[4];	        /* CI-size for FBA,...                       */
@@ -99,8 +100,8 @@ typedef struct volume_label
 
 typedef struct extent 
 {
-        u_int8_t  typeind;          /* extent type indicator                     */
-        u_int8_t  seqno;            /* extent sequence number                    */
+        uint8_t  typeind;          /* extent type indicator                     */
+        uint8_t  seqno;            /* extent sequence number                    */
         cchh_t llimit;          /* starting point of this extent             */
         cchh_t ulimit;          /* ending point of this extent               */
 } __attribute__ ((packed)) extent_t;
@@ -108,16 +109,16 @@ typedef struct extent
 
 typedef struct dev_const 
 {
-        u_int16_t DS4DSCYL;           /* number of logical cyls                  */
-        u_int16_t DS4DSTRK;           /* number of tracks in a logical cylinder  */
-        u_int16_t DS4DEVTK;           /* device track length                     */
-        u_int8_t  DS4DEVI;            /* non-last keyed record overhead          */
-        u_int8_t  DS4DEVL;            /* last keyed record overhead              */
-        u_int8_t  DS4DEVK;            /* non-keyed record overhead differential  */
-        u_int8_t  DS4DEVFG;           /* flag byte                               */
-        u_int16_t DS4DEVTL;           /* device tolerance                        */
-        u_int8_t  DS4DEVDT;           /* number of DSCB's per track              */
-        u_int8_t  DS4DEVDB;           /* number of directory blocks per track    */
+        uint16_t DS4DSCYL;           /* number of logical cyls                  */
+        uint16_t DS4DSTRK;           /* number of tracks in a logical cylinder  */
+        uint16_t DS4DEVTK;           /* device track length                     */
+        uint8_t  DS4DEVI;            /* non-last keyed record overhead          */
+        uint8_t  DS4DEVL;            /* last keyed record overhead              */
+        uint8_t  DS4DEVK;            /* non-keyed record overhead differential  */
+        uint8_t  DS4DEVFG;           /* flag byte                               */
+        uint16_t DS4DEVTL;           /* device tolerance                        */
+        uint8_t  DS4DEVDT;           /* number of DSCB's per track              */
+        uint8_t  DS4DEVDB;           /* number of directory blocks per track    */
 } __attribute__ ((packed)) dev_const_t;
 
 /*
@@ -127,33 +128,33 @@ typedef struct dev_const
 typedef struct format1_label
 {
 	char  DS1DSNAM[44];       /* data set name                           */
-	u_int8_t  DS1FMTID;       /* format identifier                       */
+	uint8_t  DS1FMTID;       /* format identifier                       */
 	unsigned char  DS1DSSN[6];/* data set serial number                  */
-	u_int16_t DS1VOLSQ;           /* volume sequence number                  */
+	uint16_t DS1VOLSQ;           /* volume sequence number                  */
 	labeldate_t DS1CREDT;     /* creation date: ydd                      */
 	labeldate_t DS1EXPDT;     /* expiration date                         */
-	u_int8_t  DS1NOEPV;           /* number of extents on volume             */
-	u_int8_t  DS1NOBDB;           /* no. of bytes used in last direction blk */
-	u_int8_t  DS1FLAG1;           /* flag 1                                  */
+	uint8_t  DS1NOEPV;           /* number of extents on volume             */
+	uint8_t  DS1NOBDB;           /* no. of bytes used in last direction blk */
+	uint8_t  DS1FLAG1;           /* flag 1                                  */
 	unsigned char  DS1SYSCD[13];  /* system code                         */
 	labeldate_t DS1REFD;      /* date last referenced                    */
-	u_int8_t  DS1SMSFG;           /* system managed storage indicators       */
-	u_int8_t  DS1SCXTF;           /* sec. space extension flag byte          */
-	u_int16_t DS1SCXTV;           /* secondary space extension value         */
-	u_int8_t  DS1DSRG1;           /* data set organisation byte 1            */
-	u_int8_t  DS1DSRG2;           /* data set organisation byte 2            */
-	u_int8_t  DS1RECFM;           /* record format                           */
-	u_int8_t  DS1OPTCD;           /* option code                             */
-	u_int16_t DS1BLKL;            /* block length                            */
-	u_int16_t DS1LRECL;           /* record length                           */
-	u_int8_t  DS1KEYL;            /* key length                              */
-	u_int16_t DS1RKP;             /* relative key position                   */
-	u_int8_t  DS1DSIND;           /* data set indicators                     */
-	u_int8_t  DS1SCAL1;           /* secondary allocation flag byte          */
+	uint8_t  DS1SMSFG;           /* system managed storage indicators       */
+	uint8_t  DS1SCXTF;           /* sec. space extension flag byte          */
+	uint16_t DS1SCXTV;           /* secondary space extension value         */
+	uint8_t  DS1DSRG1;           /* data set organisation byte 1            */
+	uint8_t  DS1DSRG2;           /* data set organisation byte 2            */
+	uint8_t  DS1RECFM;           /* record format                           */
+	uint8_t  DS1OPTCD;           /* option code                             */
+	uint16_t DS1BLKL;            /* block length                            */
+	uint16_t DS1LRECL;           /* record length                           */
+	uint8_t  DS1KEYL;            /* key length                              */
+	uint16_t DS1RKP;             /* relative key position                   */
+	uint8_t  DS1DSIND;           /* data set indicators                     */
+	uint8_t  DS1SCAL1;           /* secondary allocation flag byte          */
 	char DS1SCAL3[3];         /* secondary allocation quantity           */
 	ttr_t DS1LSTAR;           /* last used track and block on track      */
-	u_int16_t DS1TRBAL;           /* space remaining on last used track      */
-	u_int16_t res1;               /* reserved                                */
+	uint16_t DS1TRBAL;           /* space remaining on last used track      */
+	uint16_t res1;               /* reserved                                */
 	extent_t DS1EXT1;         /* first extent description                */
 	extent_t DS1EXT2;         /* second extent description               */
 	extent_t DS1EXT3;         /* third extent description                */
@@ -165,7 +166,7 @@ typedef struct format3_label
 {
 	char DS3KEYID[4];         /* key identifier                          */
 	extent_t DS3EXTNT[4];     /* first 4 extent descriptions             */
-	u_int8_t DS3FMTID;        /* format identifier                       */
+	uint8_t DS3FMTID;        /* format identifier                       */
 	extent_t DS3ADEXT[9];     /* last 9 extent description               */
 	cchhb_t  DS3PTRDS;        /* pointer to next format3 DSCB            */
 } __attribute__ ((packed)) format3_label_t;
@@ -174,15 +175,15 @@ typedef struct format3_label
 typedef struct format4_label 
 {
 	char  DS4KEYCD[44];       /* key code for VTOC labels: 44 times 0x04 */
-        u_int8_t  DS4IDFMT;           /* format identifier                       */
+        uint8_t  DS4IDFMT;           /* format identifier                       */
 	cchhb_t DS4HPCHR;         /* highest address of a format 1 DSCB      */
-        u_int16_t DS4DSREC;           /* number of available DSCB's              */
+        uint16_t DS4DSREC;           /* number of available DSCB's              */
         cchh_t DS4HCCHH;          /* CCHH of next available alternate track  */
-        u_int16_t DS4NOATK;           /* number of remaining alternate tracks    */
-        u_int8_t  DS4VTOCI;           /* VTOC indicators                         */
-        u_int8_t  DS4NOEXT;           /* number of extents in VTOC               */
-        u_int8_t  DS4SMSFG;           /* system managed storage indicators       */
-        u_int8_t  DS4DEVAC;           /* number of alternate cylinders. 
+        uint16_t DS4NOATK;           /* number of remaining alternate tracks    */
+        uint8_t  DS4VTOCI;           /* VTOC indicators                         */
+        uint8_t  DS4NOEXT;           /* number of extents in VTOC               */
+        uint8_t  DS4SMSFG;           /* system managed storage indicators       */
+        uint8_t  DS4DEVAC;           /* number of alternate cylinders. 
                                      Subtract from first two bytes of 
                                      DS4DEVSZ to get number of usable
 				     cylinders. can be zero. valid
@@ -195,21 +196,21 @@ typedef struct format4_label
         char DS4F6PTR[5];         /* pointer to first format 6 DSCB          */
         extent_t DS4VTOCE;        /* VTOC extent description                 */
         char res2[10];            /* reserved                                */
-        u_int8_t DS4EFLVL;        /* extended free-space management level    */
+        uint8_t DS4EFLVL;        /* extended free-space management level    */
         cchhb_t DS4EFPTR;         /* pointer to extended free-space info     */
 	char res3;		  /* reserved */
-	u_int32_t DS4DCYL;	  /* number of logical cyls */
+	uint32_t DS4DCYL;	  /* number of logical cyls */
 	char res4[2];		  /* reserved */
-        u_int8_t DS4DEVF2;        /* device flags */
+        uint8_t DS4DEVF2;        /* device flags */
 	char res5;		  /* reserved */
 } __attribute__ ((packed)) format4_label_t;
 
 
 typedef struct ds5ext 
 {
-	u_int16_t t;                  /* RTA of the first track of free extent   */
-	u_int16_t fc;                 /* number of whole cylinders in free ext.  */
-	u_int8_t  ft;                 /* number of remaining free tracks         */
+	uint16_t t;                  /* RTA of the first track of free extent   */
+	uint16_t fc;                 /* number of whole cylinders in free ext.  */
+	uint8_t  ft;                 /* number of remaining free tracks         */
 } __attribute__ ((packed)) ds5ext_t;
 
 
@@ -218,7 +219,7 @@ typedef struct format5_label
 	char DS5KEYID[4];         /* key identifier                          */
 	ds5ext_t DS5AVEXT;        /* first available (free-space) extent.    */
 	ds5ext_t DS5EXTAV[7];     /* seven available extents                 */
-	u_int8_t DS5FMTID;            /* format identifier                       */
+	uint8_t DS5FMTID;            /* format identifier                       */
 	ds5ext_t DS5MAVET[18];    /* eighteen available extents              */
 	cchhb_t DS5PTRDS;         /* pointer to next format5 DSCB            */
 } __attribute__ ((packed)) format5_label_t;
@@ -226,8 +227,8 @@ typedef struct format5_label
 
 typedef struct ds7ext 
 {
-	u_int32_t a;                  /* starting RTA value                      */
-	u_int32_t b;                  /* ending RTA value + 1                    */
+	uint32_t a;                  /* starting RTA value                      */
+	uint32_t b;                  /* ending RTA value + 1                    */
 } __attribute__ ((packed)) ds7ext_t;
 
 
@@ -235,7 +236,7 @@ typedef struct format7_label
 {
 	char DS7KEYID[4];         /* key identifier                          */
 	ds7ext_t DS7EXTNT[5];     /* space for 5 extent descriptions         */
-	u_int8_t DS7FMTID;            /* format identifier                       */
+	uint8_t DS7FMTID;            /* format identifier                       */
 	ds7ext_t DS7ADEXT[11];    /* space for 11 extent descriptions        */
 	char res1[2];             /* reserved                                */
 	cchhb_t DS7PTRDS;         /* pointer to next FMT7 DSCB               */
@@ -244,12 +245,12 @@ typedef struct format7_label
 
 typedef struct format9_label
 {
-	u_int8_t  DS9KEYID;       /* key code for format 9 labels (0x09) */
-	u_int8_t  DS9SUBTY;       /* subtype (0x01) */
-	u_int8_t  DS9NUMF9;       /* number of F9 datasets  */
-	u_int8_t  res1[41];       /* reserved  */
-	u_int8_t  DS9FMTID;       /* format identifier  */
-	u_int8_t  res2[90];       /* reserved */
+	uint8_t  DS9KEYID;       /* key code for format 9 labels (0x09) */
+	uint8_t  DS9SUBTY;       /* subtype (0x01) */
+	uint8_t  DS9NUMF9;       /* number of F9 datasets  */
+	uint8_t  res1[41];       /* reserved  */
+	uint8_t  DS9FMTID;       /* format identifier  */
+	uint8_t  res2[90];       /* reserved */
 	cchhb_t   DS9PTRDS;       /* pointer to next DSCB               */
 } __attribute__ ((packed)) format9_label_t;
 
@@ -257,31 +258,31 @@ char * vtoc_ebcdic_enc (char *source, char *target, int l);
 char * vtoc_ebcdic_dec (char *source, char *target, int l);
 void vtoc_set_extent (
         extent_t * ext,
-        u_int8_t typeind,
-        u_int8_t seqno,
+        uint8_t typeind,
+        uint8_t seqno,
         cchh_t * lower,
         cchh_t * upper);
 void vtoc_set_cchh (
         cchh_t * addr,
-	u_int32_t cc,
-	u_int16_t hh);
-u_int32_t vtoc_get_cyl_from_cchh(cchh_t *addr);
-u_int16_t vtoc_get_head_from_cchh(cchh_t *addr);
+	uint32_t cc,
+	uint16_t hh);
+uint32_t vtoc_get_cyl_from_cchh(cchh_t *addr);
+uint16_t vtoc_get_head_from_cchh(cchh_t *addr);
 void vtoc_set_cchhb (
         cchhb_t * addr,
-        u_int32_t cc,
-        u_int16_t hh,
-        u_int8_t b);
-u_int32_t vtoc_get_cyl_from_cchhb(cchhb_t *addr);
-u_int16_t vtoc_get_head_from_cchhb(cchhb_t *addr);
-u_int64_t cchhb2blk(cchhb_t *p, struct hd_geometry *geo);
-u_int64_t cchh2blk (cchh_t *p, struct hd_geometry *geo);
-u_int32_t cchh2trk (cchh_t *p, struct hd_geometry *geo);
+        uint32_t cc,
+        uint16_t hh,
+        uint8_t b);
+uint32_t vtoc_get_cyl_from_cchhb(cchhb_t *addr);
+uint16_t vtoc_get_head_from_cchhb(cchhb_t *addr);
+uint64_t cchhb2blk(cchhb_t *p, struct hd_geometry *geo);
+uint64_t cchh2blk (cchh_t *p, struct hd_geometry *geo);
+uint32_t cchh2trk (cchh_t *p, struct hd_geometry *geo);
 
 void vtoc_set_date (
         labeldate_t * d,
-        u_int8_t year,
-        u_int16_t day);
+        uint8_t year,
+        uint16_t day);
 
 void vtoc_volume_label_init (
 	volume_label_t *vlabel);
@@ -346,12 +347,12 @@ void vtoc_init_format4_label (
 	unsigned int tracks,
 	unsigned int blocks,
 	unsigned int blksize,
-	u_int16_t dev_type);
+	uint16_t dev_type);
 
 void vtoc_update_format4_label (
 	format4_label_t *f4,
 	cchhb_t *highest_f1,
-	u_int16_t unused_update);
+	uint16_t unused_update);
 
 void vtoc_init_format5_label (
 	format5_label_t *f5);
@@ -360,17 +361,17 @@ void vtoc_update_format5_label_add (
 	format5_label_t *f5,
 	int verbose,
 	int trk,
-	u_int16_t a, 
-	u_int16_t b, 
-	u_int8_t c);
+	uint16_t a, 
+	uint16_t b, 
+	uint8_t c);
 
 void vtoc_update_format5_label_del (
 	format5_label_t *f5,
 	int verbose,
 	int trk,
-	u_int16_t a, 
-	u_int16_t b, 
-	u_int8_t c);
+	uint16_t a, 
+	uint16_t b, 
+	uint8_t c);
 
 void vtoc_init_format7_label (
 	format7_label_t *f7);
@@ -378,14 +379,14 @@ void vtoc_init_format7_label (
 void vtoc_update_format7_label_add (
 	format7_label_t *f7,
 	int verbose,
-	u_int32_t a, 
-	u_int32_t b);
+	uint32_t a, 
+	uint32_t b);
 
 void vtoc_update_format7_label_del (
 	format7_label_t *f7, 
 	int verbose,
-	u_int32_t a, 
-	u_int32_t b);
+	uint32_t a, 
+	uint32_t b);
 
 void vtoc_init_format8_label (
         unsigned int blksize,
@@ -405,9 +406,9 @@
 	format7_label_t *f7,
 	char ch,
 	int verbose,
-	u_int32_t start,
-	u_int32_t stop,
-	u_int32_t cyl,
-	u_int32_t trk);
+	uint32_t start,
+	uint32_t stop,
+	uint32_t cyl,
+	uint32_t trk);
 
 #endif /* LIB_VTOC_H */
diff --git a/libvtoc/vtoc.c b/libvtoc/vtoc.c
index 048587b..9763f2e 100644
--- a/libvtoc/vtoc.c
+++ b/libvtoc/vtoc.c
@@ -198,7 +198,7 @@ char * vtoc_ebcdic_dec (char *source, char *target, int l)
 /*
  *
  */
-void vtoc_set_extent (extent_t *ext, u_int8_t typeind, u_int8_t seqno,
+void vtoc_set_extent (extent_t *ext, uint8_t typeind, uint8_t seqno,
 		      cchh_t *lower, cchh_t *upper) 
 { 
         ext->typeind = typeind;
@@ -211,17 +211,17 @@ void vtoc_set_extent (extent_t *ext, u_int8_t typeind, u_int8_t seqno,
 /*
  *
  */
-void vtoc_set_cchh (cchh_t *addr, u_int32_t cc, u_int16_t hh)
+void vtoc_set_cchh (cchh_t *addr, uint32_t cc, uint16_t hh)
 {
-	addr->cc = (u_int16_t) cc;
+	addr->cc = (uint16_t) cc;
 	addr->hh = cc >> 16;
 	addr->hh <<= 4;
 	addr->hh |= hh;
 }
 
-u_int32_t vtoc_get_cyl_from_cchh(cchh_t *addr)
+uint32_t vtoc_get_cyl_from_cchh(cchh_t *addr)
 {
-        u_int32_t cyl;
+        uint32_t cyl;
 
         /*decode cylinder for large volumes */
 	cyl = addr->hh & 0xFFF0;
@@ -230,7 +230,7 @@ u_int32_t vtoc_get_cyl_from_cchh(cchh_t *addr)
 	return cyl;
 }
 
-u_int16_t vtoc_get_head_from_cchh(cchh_t *addr)
+uint16_t vtoc_get_head_from_cchh(cchh_t *addr)
 {
 	/* decode heads for large volumes */
 	return addr->hh & 0x000F;
@@ -239,7 +239,7 @@ u_int16_t vtoc_get_head_from_cchh(cchh_t *addr)
 /*
  *
  */
-static void vtoc_set_ttr (ttr_t *addr, u_int16_t tt, u_int8_t r)
+static void vtoc_set_ttr (ttr_t *addr, uint16_t tt, uint8_t r)
 {
 	addr->tt = tt;
 	addr->r  = r;
@@ -249,18 +249,18 @@ static void vtoc_set_ttr (ttr_t *addr, u_int16_t tt, u_int8_t r)
 /*
  *
  */
-void vtoc_set_cchhb (cchhb_t *addr, u_int32_t cc, u_int16_t hh, u_int8_t b)
+void vtoc_set_cchhb (cchhb_t *addr, uint32_t cc, uint16_t hh, uint8_t b)
 {
-	addr->cc = (u_int16_t) cc;
+	addr->cc = (uint16_t) cc;
 	addr->hh = cc >> 16;
 	addr->hh <<= 4;
 	addr->hh |= hh;
 	addr->b  = b;
 }
 
-u_int32_t vtoc_get_cyl_from_cchhb(cchhb_t *addr)
+uint32_t vtoc_get_cyl_from_cchhb(cchhb_t *addr)
 {
-        u_int32_t cyl;
+        uint32_t cyl;
 
         /* decode cylinder for large volumes */
         cyl = addr->hh & 0xFFF0;
@@ -269,7 +269,7 @@ u_int32_t vtoc_get_cyl_from_cchhb(cchhb_t *addr)
 	return cyl;
 }
 
-u_int16_t vtoc_get_head_from_cchhb(cchhb_t *addr)
+uint16_t vtoc_get_head_from_cchhb(cchhb_t *addr)
 {
 	/* decode heads for large volumes */
 	return addr->hh & 0x000F;
@@ -281,22 +281,22 @@ u_int16_t vtoc_get_head_from_cchhb(cchhb_t *addr)
  * Note: Record zero is special, so first block on a track is
  * in record 1!
  */
-u_int64_t cchhb2blk(cchhb_t *p, struct hd_geometry *geo)
+uint64_t cchhb2blk(cchhb_t *p, struct hd_geometry *geo)
 {
-        return (u_int64_t) vtoc_get_cyl_from_cchhb(p) *
+        return (uint64_t) vtoc_get_cyl_from_cchhb(p) *
 		geo->heads * geo->sectors +
 		vtoc_get_head_from_cchhb(p) * geo->sectors +
 		p->b;
 }
 
-u_int64_t cchh2blk (cchh_t *p, struct hd_geometry *geo) {
+uint64_t cchh2blk (cchh_t *p, struct hd_geometry *geo) {
 
-        return (u_int64_t) vtoc_get_cyl_from_cchh(p) *
+        return (uint64_t) vtoc_get_cyl_from_cchh(p) *
 		geo->heads * geo->sectors +
                 vtoc_get_head_from_cchh(p) * geo->sectors;
 }
 
-u_int32_t cchh2trk (cchh_t *p, struct hd_geometry *geo) {
+uint32_t cchh2trk (cchh_t *p, struct hd_geometry *geo) {
 
 	return  vtoc_get_cyl_from_cchh(p) * geo->heads +
 		vtoc_get_head_from_cchh(p);
@@ -305,7 +305,7 @@ u_int32_t cchh2trk (cchh_t *p, struct hd_geometry *geo) {
 /*
  *
  */
-void vtoc_set_date (labeldate_t * d, u_int8_t year, u_int16_t day) 
+void vtoc_set_date (labeldate_t * d, uint8_t year, uint16_t day) 
 {
         d->year = year;
         d->day  = day;
@@ -625,7 +625,7 @@ vtoc_init_format4_label (
 	unsigned int tracks,
 	unsigned int blocks,
 	unsigned int blksize,
-	u_int16_t dev_type) 
+	uint16_t dev_type) 
 {
 	int i;
 
@@ -748,8 +748,8 @@ static void vtoc_init_format_1_8_label (
 	f1->DS1VOLSQ = 0x0001;
 
 	vtoc_set_date(&f1->DS1CREDT,
-		      (u_int8_t) creatime->tm_year,
-		      (u_int16_t) creatime->tm_yday);
+		      (uint8_t) creatime->tm_year,
+		      (uint16_t) creatime->tm_yday);
 	/* expires never - 99 365 */
 	vtoc_set_date(&f1->DS1EXPDT,
 	              0x63,
@@ -760,8 +760,8 @@
 	vtoc_ebcdic_enc("IBM LINUX    ", str, 13);
 	memcpy((char *)f1->DS1SYSCD, str, 13);
 	vtoc_set_date(&f1->DS1REFD,
-		      (u_int8_t) creatime->tm_year,
-		      (u_int16_t) creatime->tm_yday);
+		      (uint8_t) creatime->tm_year,
+		      (uint16_t) creatime->tm_yday);
 	f1->DS1SMSFG = 0x00;
 	f1->DS1SCXTF = 0x00;
 	f1->DS1SCXTV = 0x0000;
@@ -831,7 +831,7 @@
 vtoc_update_format4_label (
 	format4_label_t *f4,
 	cchhb_t *highest_f1,
-	u_int16_t unused_update) 
+	uint16_t unused_update) 
 {
 	/* update highest address of a format 1 label */
 	memcpy(&f4->DS4HPCHR, highest_f1, sizeof(cchhb_t));
@@ -893,9 +893,9 @@ void
 vtoc_update_format5_label_add (format5_label_t *f5,
 			       int verbose,
 			       int trk,
-			       u_int16_t a, 
-			       u_int16_t b, 
-			       u_int8_t c) 
+			       uint16_t a, 
+			       uint16_t b, 
+			       uint8_t c) 
 {
 	ds5ext_t *ext = NULL, *tmp = NULL;
 	int i;	
@@ -988,9 +988,9 @@ void
 vtoc_update_format5_label_del (format5_label_t *f5,
 			       int verbose,
 			       int trk,
-			       u_int16_t a,
-			       u_int16_t b,
-			       u_int8_t c) 
+			       uint16_t a,
+			       uint16_t b,
+			       uint8_t c) 
 {
 	ds5ext_t *ext;
 	int i, counter=0;
@@ -1058,9 +1058,9 @@ vtoc_update_format5_label_del (format5_label_t *f5,
 			((ext->t + ext->fc*trk + ext->ft) > (a + b*trk + c)))
 		{
 			/* partition devides free space into 2 pieces */
-			u_int16_t x = a + b*trk + c;
-			u_int16_t w,y;
-			u_int8_t z;
+			uint16_t x = a + b*trk + c;
+			uint16_t w,y;
+			uint8_t z;
 
 			w = (ext->t + ext->fc*trk + ext->ft) - (a + b*trk + c);
 			y = w / trk;
@@ -1149,7 +1149,7 @@ vtoc_reorganize_FMT7_extents (format7_label_t *f7)
  * add a free space extent description to the VTOC FMT7 DSCB
  */
 void vtoc_update_format7_label_add (format7_label_t *f7, int verbose, 
-				    u_int32_t a, u_int32_t b) 
+				    uint32_t a, uint32_t b) 
 {
 	ds7ext_t *ext = NULL, *tmp = NULL;
 	int i;	
@@ -1223,7 +1223,7 @@ void vtoc_update_format7_label_add (format7_label_t *f7, int verbose,
  * remove a free space extent description from the VTOC FMT7 DSCB
  */
 void vtoc_update_format7_label_del (format7_label_t *f7, int verbose, 
-				    u_int32_t a, u_int32_t b) 
+				    uint32_t a, uint32_t b) 
 {
 	ds7ext_t *ext;
 	int i, counter=0;
@@ -1294,7 +1294,7 @@ void vtoc_update_format7_label_del (format7_label_t *f7, int verbose,
  */
 void vtoc_set_freespace(format4_label_t *f4, format5_label_t *f5,
 		   format7_label_t *f7, char ch, int verbose,
-		   u_int32_t start, u_int32_t stop, u_int32_t cyl, u_int32_t trk)
+		   uint32_t start, uint32_t stop, uint32_t cyl, uint32_t trk)
 {
 	if ((cyl * trk) > BIG_DISK_SIZE) {
 		if (ch == '+') {
@@ -1317,12 +1317,12 @@ void vtoc_set_freespace(format4_label_t *f4, format5_label_t *f5,
 		f4->DS4EFLVL = 0x07;
 		vtoc_set_cchhb(&f4->DS4EFPTR, 0x0000, 0x0001, 0x03);
 	} else {
-		u_int16_t x,y;
-		u_int8_t  z;
+		uint16_t x,y;
+		uint8_t  z;
 
-		x = (u_int16_t) start;
-		y = (u_int16_t) ((stop - start + 1) / trk);
-		z =  (u_int8_t) ((stop - start + 1) % trk);
+		x = (uint16_t) start;
+		y = (uint16_t) ((stop - start + 1) / trk);
+		z =  (uint8_t) ((stop - start + 1) % trk);
 
 		if (ch == '+') {
 			vtoc_update_format5_label_add(f5, verbose, trk,
diff --git a/vmur/vmur.cpp b/vmur/vmur.cpp
index f2d4a02..9299e7c 100644
--- a/vmur/vmur.cpp
+++ b/vmur/vmur.cpp
@@ -1503,7 +1503,7 @@
 				     struct splink_page *buf)
 {
 	struct splink_record *rec;
-	char netdata_id[5] = {0xc9, 0xd5, 0xd4, 0xd9, 0xf0}; /* EBCDIC: INMR0 */
+	unsigned char netdata_id[5] = {0xc9, 0xd5, 0xd4, 0xd9, 0xf0}; /* EBCDIC: INMR0 */
 	unsigned int i;
 
 	rec = (struct splink_record *) &buf->data;
--- a/include/lib/util_sys.h
+++ b/include/lib/util_sys.h
@@ -14,6 +14,10 @@
 
 #include <stdbool.h>
 
+#ifndef	__dev_t_defined
+#include <sys/types.h>
+#endif /* __dev_t_defined */
+
 int util_sys_get_dev_addr(const char *dev, char *addr);
 bool util_sys_dev_is_partition(dev_t dev);
 int util_sys_get_partnum(dev_t dev);
