|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T r
Length: 4477 (0x117d) Types: TextFile Names: »rmtops.3«
└─⟦a0efdde77⟧ Bits:30001252 EUUGD11 Tape, 1987 Spring Conference Helsinki └─⟦this⟧ »EUUGD11/euug-87hel/sec3/rmtlib/rmtops.3«
... ... $Header: rmtops.3,v 1.2 86/10/09 16:38:02 root Locked $ ... ... $Log: rmtops.3,v $ ... Revision 1.2 86/10/09 16:38:02 root ... Changed to reflect 4.3BSD rcp syntax and better rmt(8) capabilities. ADR. ... ... Revision 1.1 86/10/09 16:18:47 root ... Initial revision ... ... .TH RMTOPS 3 local .SH NAME rmtops \- access tape drives on remote machines .SH SYNOPSIS .nf #include <rmt.h> #include <sys/stat.h> /* MUST come after <rmt.h> */ int isrmt (fd) int fd; int rmtaccess (file, mode) char *file; int mode; int rmtclose (fd) int fd; int rmtcreat (file, mode) char *file; int mode; int rmtdup (fd) int fd; int rmtfcntl (fd, cmd, arg) int fd, cmd, arg; int rmtfstat (fd, buf) int fd; struct stat *buf; int rmtioctl (fd, request, argp) int fd, request; char *argp; int rmtisatty (fd) int fd; long rmtlseek (fd, offset, whence) int fd, whence; long offset; int rmtlstat (file, buf) char *file; struct stat *buf; int rmtopen (file, flags [, mode]) char *file; int flags, mode; int rmtread (fd, buf, nbytes) int fd, nbytes; char *buf; int rmtstat (file, buf) char *file; struct stat *buf; int rmtwrite (fd, buf, nbytes) int fd, nbytes; char *buf; .fi .SH DESCRIPTION .I Rmtops provides a simple means of transparently accessing tape drives on remote machines over the ethernet, via .IR rsh (1) and .IR rmt (8). These routines are used like their corresponding system calls, but allow the user to open up a tape drive on a remote system on which he or she has an account and the appropriate remote permissions. .PP A remote tape drive file name has either of the forms .sp .RS .RI [ user @] system :/dev/??? .RE .sp or .sp .RS .IR system [. user ]:/dev/??? .RE .sp where .I system is the remote system, .I /dev/??? is the particular drive on the remote system (raw, blocked, rewinding, non-rewinding, etc.), and the optional .I user is the login name to be used on the remote system, if different from the current user's login name. The first form corresponds to the remote syntax used by .IR rcp (1) in 4.3BSD, the second form is for compatibility with .IR rcp 's syntax in 4.2BSD. .PP For transparency, the user should include the file .IR <rmt.h> , which has the following defines in it: .PP .nf #define access rmtaccess #define close rmtclose #define creat rmtcreat #define dup rmtdup #define fcntl rmtfcntl #define fstat rmtfstat #define ioctl rmtioctl #define isatty rmtisatty #define lseek rmtlseek #define lstat rmtlstat #define open rmtopen #define read rmtread #define stat rmtstat #define write rmtwrite .fi .PP This allows the programmer to use .IR open , .IR close , .IR read , .IR write , etc. in their normal fashion, with the .I rmtops routines taking care of differentiating between local and remote files. This file should be included .I before including the file .IR <sys/stat.h> , since it redefines the identifier ``stat,'' which is used to declare objects of type struct stat. .PP The routines differentiate between local and remote file descriptors by adding a bias (currently 128) to the file descriptor of the pipe. The programmer, if he must know if a file is remote, should use the .I isrmt function. .SH FILES .TP .B /usr/lib/librmt.a Contains the remote tape library. To include the library with a program, add the flag .B \-lrmt to the .IR cc (1) command line. .SH SEE ALSO .IR rcp (1), .IR rsh (1), .IR rmt (8), and the appropriate system calls in section 2. .SH DIAGNOSTICS Several of these routines will return -1 and set .I errno to EOPNOTSUPP, if they are given a remote file name or a file descriptor on an open remote file (e.g., .IR rmtdup ). .SH BUGS See diagnostics above. It is to be hoped that true remote file systems will eventually appear, and eliminate the need for these routines. .PP There is no way to use remote tape drives with the .IR stdio (3) package, short of recompiling it entirely to use these routines. .PP The .IR rmt (8) protocol is not very capable. In particular, it relies on TCP/IP sockets for error free transmission, and does no data validation of its own. .SH AUTHORS Jeff Lee (gatech!jeff) wrote the original routines for accessing tape drives via .IR rmt (8). .PP Fred Fish (unisoft!fnf) redid them into a general purpose library. .PP Arnold Robbins (formerly gatech!arnold, now emory!arnold) added the ability to specify a user name on the remote system, the .I <rmt.h> include file, this man page, cleaned up the library a little, and made the appropriate changes for 4.3BSD.