xref: /freebsd/usr.sbin/nghook/nghook.8 (revision f4b37ed0f8b307b1f3f0f630ca725d68f1dff30d)
1.\" Copyright (c) 1996-1999 Whistle Communications, Inc.
2.\" All rights reserved.
3.\"
4.\" Subject to the following obligations and disclaimer of warranty, use and
5.\" redistribution of this software, in source or object code forms, with or
6.\" without modifications are expressly permitted by Whistle Communications;
7.\" provided, however, that:
8.\" 1. Any and all reproductions of the source or object code must include the
9.\"    copyright notice above and the following disclaimer of warranties; and
10.\" 2. No rights are granted, in any manner or form, to use Whistle
11.\"    Communications, Inc. trademarks, including the mark "WHISTLE
12.\"    COMMUNICATIONS" on advertising, endorsements, or otherwise except as
13.\"    such appears in the above copyright notice or in the software.
14.\"
15.\" THIS SOFTWARE IS BEING PROVIDED BY WHISTLE COMMUNICATIONS "AS IS", AND
16.\" TO THE MAXIMUM EXTENT PERMITTED BY LAW, WHISTLE COMMUNICATIONS MAKES NO
17.\" REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, REGARDING THIS SOFTWARE,
18.\" INCLUDING WITHOUT LIMITATION, ANY AND ALL IMPLIED WARRANTIES OF
19.\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.
20.\" WHISTLE COMMUNICATIONS DOES NOT WARRANT, GUARANTEE, OR MAKE ANY
21.\" REPRESENTATIONS REGARDING THE USE OF, OR THE RESULTS OF THE USE OF THIS
22.\" SOFTWARE IN TERMS OF ITS CORRECTNESS, ACCURACY, RELIABILITY OR OTHERWISE.
23.\" IN NO EVENT SHALL WHISTLE COMMUNICATIONS BE LIABLE FOR ANY DAMAGES
24.\" RESULTING FROM OR ARISING OUT OF ANY USE OF THIS SOFTWARE, INCLUDING
25.\" WITHOUT LIMITATION, ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
26.\" PUNITIVE, OR CONSEQUENTIAL DAMAGES, PROCUREMENT OF SUBSTITUTE GOODS OR
27.\" SERVICES, LOSS OF USE, DATA OR PROFITS, HOWEVER CAUSED AND UNDER ANY
28.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
30.\" THIS SOFTWARE, EVEN IF WHISTLE COMMUNICATIONS IS ADVISED OF THE POSSIBILITY
31.\" OF SUCH DAMAGE.
32.\"
33.\" $FreeBSD$
34.\" $Whistle: nghook.8,v 1.4 1999/01/20 03:19:45 archie Exp $
35.\"
36.Dd October 24, 2003
37.Dt NGHOOK 8
38.Os
39.Sh NAME
40.Nm nghook
41.Nd connect to a
42.Xr netgraph 4
43node
44.Sh SYNOPSIS
45.Nm
46.Op Fl adlnSs
47.Op Fl m Ar msg
48.Ar path
49.Op Ar hookname
50.Nm
51.Fl e
52.Op Fl n
53.Op Fl m Ar msg
54.Ar path
55.Ar hookname
56.Ar program
57.Op Ar args ...
58.Sh DESCRIPTION
59The
60.Nm
61utility creates a
62.Xr ng_socket 4
63socket type node and connects it to hook
64.Ar hookname
65of the node found at
66.Ar path .
67If
68.Ar hookname
69is omitted,
70.Dq Li debug
71is assumed.
72.Pp
73If the
74.Fl e
75option is given, the third argument is interpreted as the path to a program,
76and this program is executed with the remaining arguments as its arguments.
77Before executing, the program Netgraph messages (specified by the
78.Fl m
79option) are sent to the node.
80The program is executed with its standard input (unless closed by
81.Fl n )
82and output connected to the hook.
83.Pp
84If the
85.Fl e
86option is not given, all data written to standard input is sent
87to the node, and all data received from the node is relayed
88to standard output.
89Messages specified with
90.Fl m
91are sent to the node before the loop is entered.
92The
93.Nm
94utility exits when
95.Dv EOF
96is detected on standard input in this case.
97.Pp
98The options are as follows:
99.Bl -tag -width indent
100.It Fl a
101Output each packet read in human-readable decoded
102.Tn ASCII
103form instead of raw binary.
104.It Fl d
105Increase the debugging verbosity level.
106.It Fl e
107Execute the program specified by the third argument.
108.It Fl l
109Loops all received data back to the hook in addition to writing it
110to standard output.
111.It Fl m Ar msg
112Before executing the program (in
113.Fl e
114mode) send the given ASCII control message to the node.
115This option may be given more than once.
116.It Fl n
117Do not attempt to read any data from standard input.
118The
119.Nm
120utility will continue reading from the node until stopped by a signal.
121.It Fl S
122Use file descriptor 0 for output instead of the default 1.
123.It Fl s
124Use file descriptor 1 for input instead of the default 0.
125.El
126.Sh SEE ALSO
127.Xr netgraph 3 ,
128.Xr netgraph 4 ,
129.Xr ngctl 8
130.Sh HISTORY
131The
132.Nm netgraph
133system was designed and first implemented at Whistle Communications, Inc.\&
134in a version of
135.Fx 2.2
136customized for the Whistle InterJet.
137.Sh AUTHORS
138.An Archie Cobbs Aq Mt archie@whistle.com
139.Sh BUGS
140Although all input is read in unbuffered mode,
141there is no way to control the packetization of the input.
142.Pp
143If the node sends a response to a message (specified by
144.Fl m ) ,
145this response is lost.
146