/sgio

golang library for SCSI commands using SG_IO ioctl

Primary LanguageGoMIT LicenseMIT

sgio

golang library for issuing SCSI commands with SG_IO ioctl

godoc

See TestUnitReady() for example function using SG_IO

example:

f, err := OpenScsiDevice("/dev/sg0")
if err != nil {
	log.Fatalln(err)
}
defer f.Close()

Fill out SgIoHdr for SCSI command

ioHdr := &SgIoHdr{...}
err := SgioSyscall(f, ioHdr)
if err != nil {
	log.Fatalln(err)
}

err = CheckSense(ioHdr, &senseBuf)
if err != nil {
	log.Fatalln(err)
}