Unix/Linux Go Back    

NetBSD 6.1.5 - man page for rmtops (netbsd section 3)

Linux & Unix Commands - Search Man Pages
Man Page or Keyword Search:   man
Select Man Page Set:       apropos Keyword Search (sections above)

RMTOPS(3)			   BSD Library Functions Manual 			RMTOPS(3)

     rmtops -- access tape drives on remote machines

     Remote Magnetic Tape Library (librmt, -lrmt)

     #include <rmt.h>
     #include <sys/stat.h>

     isrmt(int fd);

     rmtaccess(char *file, int mode);

     rmtclose(int fd);

     rmtcreat(char *file, int mode);

     rmtdup(int fd);

     rmtfcntl(int fd, int cmd, int arg);

     rmtfstat(int fd, struct stat *buf);

     rmtioctl(int fd, int request, char *argp);

     rmtisatty(int fd);

     rmtlseek(int fd, long offset, int whence);

     rmtlstat(char *file, struct stat *buf);

     rmtopen(char *file, int flags, int mode);

     rmtread(int fd, char *buf, int nbytes);

     rmtstat(char *file, struct stat *buf);

     rmtwrite(int fd, char *buf, int nbytes);

     The rmtops library provides a simple means of transparently accessing tape drives on remote
     machines via rsh(1) and 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.

     A remote tape drive file name has the form
     where system is the remote system, /dev/??? is the particular drive on the remote system
     (raw, blocked, rewinding, non-rewinding, etc.), and the optional user is the login name to
     be used on the remote system, if different from the current user's login name.

     For transparency, the user should include the file <rmt.h>, which has the following defines
     in it:

     #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

     This allows the programmer to use open(2), close(2), read(2), write(2), etc. in their normal
     fashion, with the rmtops routines taking care of differentiating between local and remote
     files.  This file should be included before including the file <sys/stat.h>, since it rede-
     fines the identifier ``stat'' which is used to declare objects of type struct stat.

     The routines differentiate between local and remote file descriptors by adding a bias (cur-
     rently 128) to the file descriptor of the pipe.  The programmer, if he or she must know if a
     file is remote, should use isrmt().

     The RCMD_CMD environment variable can be set to the name or pathname of a program to use,
     instead of /usr/bin/rsh, and must have the same calling conventions as rsh(1).

     /usr/lib/librmt.a	remote tape library

     Several of these routines will return -1 and set errno to EOPNOTSUPP, if they are given a
     remote file name or a file descriptor on an open remote file (e.g., rmtdup()).

     rcp(1), rsh(1), rmt(8)

     And the appropriate system calls in section 2.

     Jeff Lee wrote the original routines for accessing tape drives via rmt(8).

     Fred Fish redid them into a general purpose library.

     Arnold Robbins added the ability to specify a user name on the remote system, the <rmt.h>
     include file, this man page, cleaned up the library a little, and made the appropriate
     changes for 4.3BSD.

     Dan Kegel contributed the code to use the rexec(3) library routine.

     There is no way to use remote tape drives with stdio(3), short of recompiling it entirely to
     use these routines.

     The 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.

BSD					 October 16, 2001				      BSD
Unix & Linux Commands & Man Pages : ©2000 - 2018 Unix and Linux Forums

All times are GMT -4. The time now is 02:48 PM.