[−][src]Crate scsi
A crate for both interacting with SCSI devices as a host and for writing new SCSI device software/firmware.
Currently the main focus of this crate is Bulk Only USB Mass Storage Device compatibility, since that comprises a significant chunk of use cases. However, more functionality can be requested and/or PRed as necessary or desired.
Modules
scsi | Contains implementations for the different SCSI commands and responses, as well as helper utilities to, for example, treat the SCSI device as a normal block devies. |
Structs
ScsiError | A general error struct for the package. |
Enums
ErrorCause | The cause of a returned error. This is implemented as an enum with a large number of variants to reduce allocations. |
UsbTransferDirection | The direction that the USB transfer was going when it errored. |
Traits
BufferPullable | Allows for a struct to deserialize itself from a raw byte buffer. |
BufferPushable | Allows a struct to serialize itself to a raw byte buffer. |
CommunicationChannel | The trait that all communication devices should implement if they are to be used to transfer SCSI information. |