int
datlib_init(int fd)
	initialisiert interne strukturen usw.
	uebergeben wird ein fd auf das tapedevice
	return 0 fuer success, -1 fuer failure, errno set.

int
datlib_create_partition(int fd,int size,int size_kind)
	kreiert eine zweite partition.
	uebergeben wird fd auf TAPEdevice, size in 'size_kind' einheiten
	SIZE_BYTE,SIZE_KBYTE,SIZE_MBYTE
	return 0 fuer success, -1+errno fuer fehler.

int
datlib_delete_partition(int fd)
	removed die zweite partition
	rest wie oben

int
datlib_switch_active_partition(int fd,int targpart)
	schaltet auf targpart um.
	rest wie oben.
	return neue aktive partition. oder -1+errno fuer fehler

int
datlib_query_active_partition(int fd)
	returned die aktuelle partition oder -1+errno bei fehler

int
datlib_set_compression(int fd,int comptype)
	setzt compression auf comptype. 0 fuer abschalten.

int
datlib_set_decompression(int fd,int decomptype)
	setzt compression auf comptype. 0 fuer abschalten.

int
datlib_query_compression(int fd)
	compression type wird returned, 0 fuer keine comp, -1+errno fehler

int
datlib_query_decompression(int fd)
	decompression type wird returned, 0 fuer keine decomp, -1+errno fehler

int
datlib_get_log_page(int fd,int nr,char*logpage,int logsize)
	returned die logpage in *logpage bis maximal logsize.
	aktuelle laenge wird returned, -1+errno fuer fehler

int
datlib_get_mode_page(int fd,int nr,char *modepage,int modesize)
	returned die modepage in *modepage bis maximal modesize.
	aktuelle laenge wird returned, -1+errno fuer fehler

int
datlib_inquiry(int fd,char *inquirybuf,int inqsize);
	returned das result von inquiry in inquirybuf bis maximal
	inqsize. -1+errno fuer fehler.

int
datlib_set_mode_page(int fd,char *modepage,int modesize)
	returned die modepage in *modepage bis maximal modesize.
	aktuelle laenge wird returned, -1+errno fuer fehler
/*
TODO:
MTWEOF:	zusaetzlich EOM(Medium) marker schreiben

datlib_set_audiomode(int fd,int onoff);
datlib_get_audiopos(int fd,struct audiostruct *aud)
datlib_set_audiopos(int fd,struct audiostruct *aud)
*/
