#ifndef _DISK_H_#define _DISK_H_ 1#if defined(__cplusplus)extern "C" { #endif AUTOLIB(disk) #if 0/* SCSI interface */typedef struct Scsi Scsi;struct Scsi { QLock lk; char* inquire; int rawfd; int nchange; ulong changetime;}; enum { Sread = 0, Swrite, Snone,}; char* scsierror(int, int);int scsicmd(Scsi*, uchar*, int, void*, int, int);int scsi(Scsi*, uchar*, int, void*, int, int);Scsi* openscsi(char*);int scsiready(Scsi*); extern int scsiverbose;#endif /* disk partition interface */typedef struct Disk Disk;struct Disk { char *prefix; char *part; int fd; int wfd; int ctlfd; int rdonly; int type; vlong secs; vlong secsize; vlong size; vlong offset; /* within larger disk, perhaps */ int width; /* of disk size in bytes as decimal string */ int c; int h; int s; int chssrc;}; Disk* opendisk(char*, int, int); enum { Tfile = 0, Tsd, Tfloppy, Gpart = 0, /* partition info source */ Gdisk, Gguess}; /* proto file parsing */typedef void Protoenum(char *new, char *old, Dir *d, void *a);typedef void Protowarn(char *msg, void *a);int rdproto(char*, char*, Protoenum*, Protowarn*, void*); #if defined(__cplusplus)}#endif#endif
#ifndef _DISK_H_
#define _DISK_H_ 1
#if defined(__cplusplus)
extern "C" {
#endif
AUTOLIB(disk)
#if 0
/* SCSI interface */
typedef struct Scsi Scsi;
struct Scsi {
QLock lk;
char* inquire;
int rawfd;
int nchange;
ulong changetime;
};
enum {
Sread = 0,
Swrite,
Snone,
};
char* scsierror(int, int);
int scsicmd(Scsi*, uchar*, int, void*, int, int);
int scsi(Scsi*, uchar*, int, void*, int, int);
Scsi* openscsi(char*);
int scsiready(Scsi*);
extern int scsiverbose;
#endif
/* disk partition interface */
typedef struct Disk Disk;
struct Disk {
char *prefix;
char *part;
int fd;
int wfd;
int ctlfd;
int rdonly;
int type;
vlong secs;
vlong secsize;
vlong size;
vlong offset; /* within larger disk, perhaps */
int width; /* of disk size in bytes as decimal string */
int c;
int h;
int s;
int chssrc;
};
Disk* opendisk(char*, int, int);
enum {
Tfile = 0,
Tsd,
Tfloppy,
Gpart = 0, /* partition info source */
Gdisk,
Gguess
};
/* proto file parsing */
typedef void Protoenum(char *new, char *old, Dir *d, void *a);
typedef void Protowarn(char *msg, void *a);
int rdproto(char*, char*, Protoenum*, Protowarn*, void*);
#if defined(__cplusplus)
}
#endif
#endif