rscsi - remote generic SCSI transport protocol server
The rscsi command is a remote generic SCSI transport server program. rscsi is a program that is run locally on the machine with SCSI devices, it is used by remote programs like cdrecord(1), cdda2wav(1), readcd(1), and sformat(1) that like to access SCSI devices through an interprocess communication connection via libscg. rscsi is normally started up with an rexec(3) or rcmd(3) call but it may also be connected via an internal pipe to an ssh(1) session that was set up by the remote user.
Any other command causes rscsi to exit.
The rscsi program accepts scg_open, scg_close, scg_cmd and similar requests that are all related to the interface of libscg. rscsi performs the commands and then responds with a status indication.
The rscsi program is prepared to be installed as a user shell in the passwd file to create remote SCSI specific logins and security checking.
All requests are send to the rscsi program in ASCII and thus are byte order and machine independent.
All responses are send back in ASCII and in one of the following two forms.
All successful commands (except for the "S" command that sends SCSI commands) have responses of
|where number is the ASCII representation of a decimal number that usually is the return code of the corresponding system call or function.
All unsuccessful commands are responded to with
|where error-number is one of the possible error numbers described in intro(2), and error-message is the corresponding error string as retrieved by strerror(3), xerror-len is the length of the additional error text xerror-txt and may be 0. In case xerror-len is 0, no xerror-txt is send. Note that a failed SCSI command that returned SCSI sense data counts as a successful command and does not use the default error format.|
|The rscsi protocol implements the following commands:|
|Default values can be set for the following options in /etc/default/rscsi. For example:
ACCESS=rscsi myhost.mydomain.org 1 -1 3 0
All keywords must be on the beginning of a line.
All responses are send to the network connection. They use the form described above.
The possibility to create a debug file by calling rscsifile has been disabled for security reasons. If you like to debug rscsi edit /etc/default/rscsi and insert a DEBUG entry.
The rscsi command has been developed by J..org Schilling in June 2000.
The interfaces provided by rscsi are designed for long term stability. As rscsi depends on interfaces provided by the underlying operating system, the stability of the interfaces offered by rscsi depends on the interface stability of the OS interfaces. Modified interfaces in the OS may enforce modified interfaces in rscsi.