blob: d98d77a4cc822d2a14bd407f30b58e204fe179a6 [file] [log] [blame]
#ifndef PARTX_H_INCLUDED
#define PARTX_H_INCLUDED
/*
* For each partition type there is a routine that takes
* a block device and a range, and returns the list of
* slices found there in the supplied array SP that can
* hold NS entries. The return value is the number of
* entries stored, or -1 if the appropriate type is not
* present.
*/
/* units: 512 byte sectors */
struct slice {
unsigned int start;
unsigned int size;
};
typedef int (ptreader)(int fd, struct slice all, struct slice *sp, int ns);
extern ptreader read_dos_pt, read_bsd_pt, read_solaris_pt, read_unixware_pt, read_gpt_pt;
unsigned char *getblock(int fd, unsigned int secnr);
static inline int
four2int(unsigned char *p) {
return p[0] + (p[1]<<8) + (p[2]<<16) + (p[3]<<24);
}
#endif /* PARTX_H_INCLUDED */