pmtd(1M) TCP/IP R4.11 pmtd(1M)
NAME
pmtd - start the pseudo magnetic tape device server
SYNOPSIS
pmtd [ -c cachesize ]
DESCRIPTION
Only a user with the appropriate privilege can start the pmtd server
(daemon). For systems supporting the DG/UX Capability Option,
appropriate privilege is defined as having one or more specific
capabilities enabled in the effective capability set of the user.
See cap_defaults(5) for the default capabilities for this command.
On systems without the DG/UX Capability Option, appropriate privilege
means that your process has an effective UID of root. See the
appropriate_privilege(5) man page for more information.
The pmtd server runs on the local machine and starts the execution of
the pseudo magnetic tape device server, a server process which
handles local requests to perform I/O operations on a tape device
hosted by a remote machine.
A local user opens a special file in the directory /dev/pmt. The
DG/UX kernel then communicates with the pmtd server to perform
operations. Across the network, the pmtd server starts the execution
of, and communicates with, another server process rmt(1M), which
performs the operations on the real tape device.
The pmtd server consults two files (which it reads every time a
pmt(7) special file is opened) in providing its service.
/etc/pmttapetab contains the necessary information to access the
remote tape device. While performing I/O, if an error occurs at the
remote end, pmtd will use /etc/pmterrtab in conjunction with
/etc/pmttapetab to provide a semantically equivalent DG/UX errno
value corresponding to the remote error. If pmtd cannot access
/etc/pmterrtab or the remote error does not appear in the table, pmtd
passes the remote error back unchanged unless the value is not a
legal DG/UX errno value. In such cases, EIO will be passed back as a
general catch-all.
The pmtd server has an optional argument, cachesize, which allows the
user to specify the size (in bytes) of the server's internal cache.
This cache is used as a buffer to hold data whenever the
/etc/pmttapetab cache field is set to Y or N.
The pmtd server automatically puts itself in the background.
The protocol used between pmt(7) and pmtd is expressed below in the
following BNF-like specification:
lifetime operation:
<ctrl_pckt[data]reply_pckt[data]>*
The ctrl_pckt and reply_pckt packets have a fixed size of 32
bytes.
ctrl_pckt = <cmd<parm>*null>
cmd = ele of { 'OP','CL','RD','WR','IO' }
reply_pckt = <ok_reply<null>> ||
<err_reply<null>>>
ok_reply = <'OK'parm>
err_reply = <'ER'parm>
parm = <<ele of (sigma - nl)>*nl>
sigma = ele of { isprint()-able chars }
data = char*
nl = newline char
null = null char
ctrl_pckt's:
cmd parm's (nl's not shown) <meaning>
'OP' device_name<open_intent> open
'CL' device_handle close
'RD' byte_cnt read
'WR' byte_cnt<data> write
'IO' cmd<op_code>op_cnt ioctl
ok_reply's:
cmd returns parm's (nl's not shown)
'OP' none
'CL' none
'RD' byte_cnt<data>
'WR' byte_cnt
'IO' <io_code>
err_reply's:
cmd returns parm's (nl's not shown)
'OP' <err_num>
'CL' none
'RD' <err_num>
'WR' <err_num>
'IO' <err_num>
FILES
/etc/pmttapetab Table with information about remote tape
devices.
/etc/pmterrtab Table of equivalent error numbers among
different operating systems.
/usr/include/sys/errno.h File describing DG/UX errno values.
/usr/include/sys/mtio.h File describing DG/UX tape operations.
SEE ALSO
rmt(1M), close(2), ioctl(2), open(2), pmttapetab(4), pmterrtab(4),
appropriate_privilege(5), cap_defaults(5), pmt(7).
CAVEATS
All ioctl(2) calls with the command set to MTIOCTOP supported by the
real tape device, are supported by the pmtd server if the
/etc/pmttapetab entry has the cache field set to N.
For the following, assume that the /etc/pmttapetab entry has the
cache field set to Y.
All BCS required operations are supported so long as the real tape
device conforms to the BCS. An ioctl(2) call with the command set to
MTIOCTOP is currently supported for the operations: MTWEOF, MTFSF,
MTBSF, MTREW, MTOFFL, and MTNOP.
If a system call, other than open(2), fails on a pmt(7) special file,
its state thereafter is not guaranteed until the special file is
closed and reopened.
Licensed material--property of copyright holder(s)