1 .\" Copyright (C) 2003-2004 Cronyx Engineering.
2 .\" Copyright (C) 2003-2004 Roman Kurakin <rik@cronyx.ru>
4 .\" This software is distributed with NO WARRANTIES, not even the implied
5 .\" warranties for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
7 .\" Authors grant any other persons or organisations a permission to use,
8 .\" modify and redistribute this software in source and binary forms,
9 .\" as long as this message is kept with the software, all derivative
10 .\" works or modified versions.
12 .\" Cronyx Id: ng_sppp.4,v 1.1.2.3 2004/03/30 14:28:34 rik Exp $
20 .Nd sppp netgraph node type
22 .In netgraph/ng_sppp.h
28 interface to the original
30 network module for synchronous lines. Currently
32 supports PPP and Cisco HDLC protocol.
35 node could be considered as an alternative kernel mode ppp
39 and as an alternative to
42 While having less features than mpd +
44 it is significantly easier to use in the majority of simple configurations
45 and allows the administrator to not install the mpd port.
48 you don't need any other nodes, not even an
53 node is created, a new interface appears which is accessible via
56 node interfaces are named
60 When a node is shutdown, the corresponding interface is removed
61 and the interface name becomes available for reuse by future
64 New nodes always take the first unused interface.
65 The node itself is assigned the same name as its interface, unless the name
66 already exists, in which case the node remains unnamed.
69 node allows drivers written to the old sppp interface to be rewritten using the
72 interface and still behave in a compatible manner without supporting both
77 node has a single hook named downstream. Usually it is connected directly to
81 nodes support the Berkeley Packet Filter (BPF).
83 This node type supports the following hooks:
85 .Bl -tag -width abcdefghijklmnop
87 The connection to the synchronous line.
90 This node type supports the generic control messages, plus the following:
92 .It Dv NGM_IFACE_GET_IFNAME
93 Returns the name of the interface corresponding to this node in a
94 .Dv "struct ng_iface_ifname" :
95 .Bd -literal -offset 4n
96 struct ng_iface_ifname {
97 char ngif_name[NG_SPPP_IFACE_NAME_MAX + 1];
102 This node shuts down upon receipt of a
104 control message. The associated interface is removed and becomes available
109 Unlike most other node types and like
115 go away when all hooks have been disconnected; rather, and explicit
117 control message is required.
119 For example, if you have
120 .Xr cx 4 device, you could run PPP over it with just one command:
122 ngctl mkpeer cx0: sppp rawdata downstream
124 Now you have sppp0 interface (if this is a first sppp node) which can be
126 .Xr ifconfig 4 as a usual network interface,
128 .Xr spppcontrol 8 as a sppp interface.
141 For complex networking topologies you may want to look at
146 node type was implemented for
148 It was included to the system since
151 .An Copyright (C) 2003-2004 Roman Kurakin Aq rik@cronyx.ru