The libsji program describes the Standard Jukebox Interface (SJI) Library. The location of the SJI library varies from platform to platform.
The SJI library is a public set of interfaces that Backup uses to communicate with jukeboxes. Generally, this library converts SJI commands (as formed by Backup) to the appropriate SCSI commands, but the underlying attachment to the jukebox is irrelevant to the function of this interface.
There are three entry points into the SJI library:
void * sji_open (char * device-name)
The sji_open entry point opens a channel to the SJI-compliant jukebox specified by device-name. A channel token of type void * is returned if successful, otherwise a NULL token is returned. You can express the device name as an ordinal SCSI type (for example, scsidev@b.t.l). The device name can also be a platform-specific style device name (for example, /dev/sjid1u1) for those platforms that do not use SunSoft device drivers.
int sji_cmd (void *token, int cmd, void *arg)
The sji_cmd entry point sends an SJI command to the device opened by sji_open.
void sji_close (void *token)
The sji_close entry point closes a channel to the device opened by the call to sji_open.
The list of all the available commands and their arguments is too large to list here. Send e-mail to sji@legato.com to request more information on these interfaces.