summaryrefslogtreecommitdiff
path: root/debian/ucspi-tcp-man/recordio.1
blob: 6a7a5864e941cdbc829de889cc467fdf108f9870 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
.TH recordio 1
.SH NAME
recordio \- records the input and output of a program.
.SH SYNOPSIS
.B recordio
.I prog
.SH DESCRIPTION
.B recordio
runs
.IR prog .
It prints lines to descriptor 2 showing the input and output of
.IR prog .

At the beginning of each line on descriptor 2,
.B recordio
inserts the
.I prog
process ID, along with < for input or > for output. At the end of each line
it inserts +, a space, or [EOF]; a space indicates that there was a new line
in the input or output, and [EOF] indicates the end of input or output.

.B recordio
prints every packet of input and output immediately. It does not attempt to
combine packets into coherent lines. For example,
.IP
recordio sh -c 'cat /dev/fd/8 2>&1' > /dev/null
.P
could produce 

     5135 > cat: /dev/fd/8: Bad file descriptor 
     5135 > [EOF]

or 

     5135 > cat: +
     5135 > /dev/fd/8+
     5135 > : +
     5135 > Bad file descriptor 
     5135 > [EOF]

if the cat program prints several packets. 

.B recordio
uses several lines for long packets to guarantee that each line is printed
atomically. 

.B recordio
runs as a child process of
.IR prog .
It exits when it sees the end of
.IR prog 's
output.
.SH SEE ALSO
tcpserver(1),
tcprules(1),
tcprulescheck(1),
argv0(1),
fixcrio(1),
rblsmtpd(1),
tcpclient(1),
who@(1),
date@(1),
finger@(1),
http@(1),
tcpcat(1),
mconnect(1),
tcp-environ(5)

http://cr.yp.to/ucspi-tcp.html