xref: /freebsd/share/man/man4/snp.4 (revision 25ecdc7d52770caf1c9b44b5ec11f468f6b636f3)
1.\"
2.\" $FreeBSD$
3.\"
4.Dd November 5, 2008
5.Dt SNP 4
6.Os
7.Sh NAME
8.Nm snp
9.Nd tty snoop interface
10.Sh SYNOPSIS
11.In sys/snoop.h
12.Ft int
13.Fn ioctl fd SNPSTTY &dev
14.Ft int
15.Fn ioctl fd SNPGTTY &dev
16.Ft int
17.Fn ioctl fd FIONREAD &result
18.Sh DESCRIPTION
19.Pa /dev/snp
20is a snoop device which allows users to attach to any tty
21and watch activities on it.
22The kernel must be compiled with
23.Cd "device snp" ,
24or the
25.Nm
26module must be loaded,
27for these devices to be available.
28.Pp
29To associate a given
30.Nm
31device with a tty to be observed, open the
32.Nm
33device and a tty device, and then issue the
34.Dv SNPSTTY
35ioctl on
36.Nm
37device.
38The argument passed to the
39.Xr ioctl 2
40is the address of a variable of type
41.Vt int ,
42holding the file descriptor of a tty device.
43To detach the
44.Nm
45device from a tty use a pointer to a value of
46\-1.
47.Pp
48The
49.Dv SNPGTTY
50ioctl returns information about the current tty attached to
51the open
52.Nm
53device.
54.Pp
55The
56.Dv FIONREAD
57ioctl returns a positive value equal to the number of characters
58in a read buffer.
59Special values defined are:
60.Bl -tag -width ".Dv SNP_TTYCLOSE"
61.It Dv SNP_OFLOW
62device overflow occurred, device detached.
63.It Dv SNP_TTYCLOSE
64tty not attached.
65.It Dv SNP_DETACH
66.Nm
67device has been detached by user or tty device has been closed
68and detached.
69.El
70.Sh SEE ALSO
71.Xr pty 4 ,
72.Xr kldload 8 ,
73.Xr watch 8
74.Sh HISTORY
75The
76.Nm
77device first appeared in
78.Fx 2.1 .
79In
80.Fx 8.0
81the
82.Nm
83driver was rewritten to work with the replaced TTY subsystem.
84.Sh AUTHORS
85.An -nosplit
86The author of the current implementation is
87.An \&Ed Schouten Aq Mt ed@FreeBSD.org .
88Previous versions of
89.Nm
90were based on code written by
91.An Ugen J.S. Antsilevich Aq Mt ugen@NetVision.net.il .
92.Sh BUGS
93This version of
94.Nm
95does not return proper error codes when calling
96.Dv FIONREAD .
97It also does not allow
98.Dv SNPSTTY
99to detach itself from the TTY.
100