1.\" Copyright (c) 1983, 1991, 1993 2.\" The Regents of the University of California. All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. 9.\" 2. Redistributions in binary form must reproduce the above copyright 10.\" notice, this list of conditions and the following disclaimer in the 11.\" documentation and/or other materials provided with the distribution. 12.\" 3. Neither the name of the University nor the names of its contributors 13.\" may be used to endorse or promote products derived from this software 14.\" without specific prior written permission. 15.\" 16.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 17.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 18.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 19.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 20.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 21.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 22.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 23.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 24.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 25.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 26.\" SUCH DAMAGE. 27.\" 28.\" @(#)rmt.8 8.3 (Berkeley) 6/1/94 29.\" 30.Dd June 1, 1994 31.Dt RMT 8 32.Os 33.Sh NAME 34.Nm rmt 35.Nd remote magtape protocol module 36.Sh SYNOPSIS 37.Nm 38.Sh DESCRIPTION 39The 40.Nm 41utility is used by the remote dump and restore programs 42in manipulating a magnetic tape drive through an interprocess 43communication connection. 44It is normally started up with an 45.Xr rcmd 3 46call. 47.Pp 48The 49.Nm 50utility accepts requests specific to the manipulation of 51magnetic tapes, performs the commands, then responds with 52a status indication. 53All responses are in 54.Tn ASCII 55and in 56one of two forms. 57Successful commands have responses of: 58.Bd -ragged -offset indent 59.Sm off 60.Sy A Ar number No \en 61.Sm on 62.Ed 63.Pp 64.Ar Number 65is an 66.Tn ASCII 67representation of a decimal number. 68Unsuccessful commands are responded to with: 69.Bd -ragged -offset indent 70.Sm off 71.Xo Sy E Ar error-number 72.No \en Ar error-message 73.No \en 74.Xc 75.Sm on 76.Ed 77.Pp 78.Ar Error-number 79is one of the possible error 80numbers described in 81.Xr intro 2 82and 83.Ar error-message 84is the corresponding error string as printed 85from a call to 86.Xr perror 3 . 87The protocol is comprised of the 88following commands, which are sent as indicated - no spaces are supplied 89between the command and its arguments, or between its arguments, and 90.Ql \en 91indicates that a newline should be supplied: 92.Bl -tag -width Ds 93.Sm off 94.It Xo Sy \&O Ar device 95.No \en Ar mode No \en 96.Xc 97.Sm on 98Open the specified 99.Ar device 100using the indicated 101.Ar mode . 102.Ar Device 103is a full pathname and 104.Ar mode 105is an 106.Tn ASCII 107representation of a decimal 108number suitable for passing to 109.Xr open 2 . 110If a device had already been opened, it is 111closed before a new open is performed. 112.Sm off 113.It Xo Sy C Ar device No \en 114.Xc 115.Sm on 116Close the currently open device. 117The 118.Ar device 119specified is ignored. 120.Sm off 121.It Xo Sy L 122.Ar whence No \en 123.Ar offset No \en 124.Xc 125.Sm on 126Perform an 127.Xr lseek 2 128operation using the specified parameters. 129The response value is that returned from the 130.Xr lseek 2 131call. 132.Sm off 133.It Sy W Ar count No \en 134.Sm on 135Write data onto the open device. 136The 137.Nm 138utility reads 139.Ar count 140bytes from the connection, aborting if 141a premature end-of-file is encountered. 142The response value is that returned from 143the 144.Xr write 2 145call. 146.Sm off 147.It Sy R Ar count No \en 148.Sm on 149Read 150.Ar count 151bytes of data from the open device. 152If 153.Ar count 154exceeds the size of the data buffer (10 kilobytes), it is 155truncated to the data buffer size. 156The 157.Nm 158utility then performs the requested 159.Xr read 2 160and responds with 161.Sm off 162.Sy A Ar count-read No \en 163.Sm on 164if the read was 165successful; otherwise an error in the 166standard format is returned. 167If the read 168was successful, the data read is then sent. 169.Sm off 170.It Xo Sy I Ar operation 171.No \en Ar count No \en 172.Xc 173.Sm on 174Perform a 175.Dv MTIOCOP 176.Xr ioctl 2 177command using the specified parameters. 178The parameters are interpreted as the 179.Tn ASCII 180representations of the decimal values 181to place in the 182.Ar mt_op 183and 184.Ar mt_count 185fields of the structure used in the 186.Xr ioctl 2 187call. 188The return value is the 189.Ar count 190parameter when the operation is successful. 191.It Sy S 192Return the status of the open device, as 193obtained with a 194.Dv MTIOCGET 195.Xr ioctl 2 196call. 197If the operation was successful, 198an ``ack'' is sent with the size of the 199status buffer, then the status buffer is 200sent (in binary). 201.El 202.Pp 203Any other command causes 204.Nm 205to exit. 206.Sh DIAGNOSTICS 207All responses are of the form described above. 208.Sh SEE ALSO 209.Xr rcmd 3 , 210.Xr mtio 4 , 211.Xr rdump 8 , 212.Xr rrestore 8 213.Sh HISTORY 214The 215.Nm 216utility appeared in 217.Bx 4.2 . 218.Sh BUGS 219People should be discouraged from using this for a remote 220file access protocol. 221