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