aboutsummaryrefslogtreecommitdiff
path: root/share
diff options
context:
space:
mode:
authorGleb Smirnoff <glebius@FreeBSD.org>2021-10-21 04:08:13 +0000
committerGleb Smirnoff <glebius@FreeBSD.org>2021-10-22 18:41:36 +0000
commit6aae3517ed2500fb963ba0a4264b4756088dd0f4 (patch)
tree908d4029e181694478c80ea53b4eefc11e30b517 /share
parenta23e18ea545675aca7551ef2395f6df40a3acb29 (diff)
downloadsrc-6aae3517ed2500fb963ba0a4264b4756088dd0f4.tar.gz
src-6aae3517ed2500fb963ba0a4264b4756088dd0f4.zip
Retire synchronous PPP kernel driver sppp(4).
The last two drivers that required sppp are cp(4) and ce(4). These devices are still produced and can be purchased at Cronyx <http://cronyx.ru/hardware/wan.html>. Since Roman Kurakin <rik@FreeBSD.org> has quit them, they no longer support FreeBSD officially. Later they have dropped support for Linux drivers to. As of mid-2020 they don't even have a developer to maintain their Windows driver. However, their support verbally told me that they could provide aid to a FreeBSD developer with documentaion in case if there appears a new customer for their devices. These drivers have a feature to not use sppp(4) and create an interface, but instead expose the device as netgraph(4) node. Then, you can attach ng_ppp(4) with help of ports/net/mpd5 on top of the node and get your synchronous PPP. Alternatively you can attach ng_frame_relay(4) or ng_cisco(4) for HDLC. Actually, last time I used cp(4) back in 2004, using netgraph(4) instead of sppp(4) was already the right way to do. Thus, remove the sppp(4) related part of the drivers and enable by default the negraph(4) part. Further maintenance of these drivers in the tree shouldn't be a big deal. While doing that, remove some cruft and enable cp(4) compilation on amd64. The ce(4) for some unknown reason marks its internal DDK functions with __attribute__ fastcall, which most likely is safe to remove, but without hardware I'm not going to do that, so ce(4) remains i386-only. Reviewed by: emaste, imp, donner Differential Revision: https://reviews.freebsd.org/D32590 See also: https://reviews.freebsd.org/D23928
Diffstat (limited to 'share')
-rw-r--r--share/man/man4/Makefile2
-rw-r--r--share/man/man4/man4.i386/ce.444
-rw-r--r--share/man/man4/man4.i386/cp.444
-rw-r--r--share/man/man4/netgraph.41
-rw-r--r--share/man/man4/ng_sppp.4172
-rw-r--r--share/man/man4/sppp.4238
-rw-r--r--share/man/man5/rc.conf.515
7 files changed, 25 insertions, 491 deletions
diff --git a/share/man/man4/Makefile b/share/man/man4/Makefile
index af3ad94c9e2e..e2f68f619f37 100644
--- a/share/man/man4/Makefile
+++ b/share/man/man4/Makefile
@@ -379,7 +379,6 @@ MAN= aac.4 \
ng_socket.4 \
ng_source.4 \
ng_split.4 \
- ng_sppp.4 \
ng_sscfu.4 \
ng_sscop.4 \
ng_tag.4 \
@@ -529,7 +528,6 @@ MAN= aac.4 \
spigen.4 \
${_spkr.4} \
splash.4 \
- sppp.4 \
ste.4 \
stf.4 \
stge.4 \
diff --git a/share/man/man4/man4.i386/ce.4 b/share/man/man4/man4.i386/ce.4
index 531904fd539c..451f9fb22da0 100644
--- a/share/man/man4/man4.i386/ce.4
+++ b/share/man/man4/man4.i386/ce.4
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd January 30, 2006
+.Dd October 22, 2021
.Dt CE 4 i386
.Os
.Sh NAME
@@ -44,29 +44,19 @@ module at boot time, place the following line in
.Bd -literal -offset indent
if_ce_load="YES"
.Ed
-.Pp
-Additional options:
-.Cd "device sppp"
-.Cd "options NETGRAPH"
-.Cd "options NETGRAPH_CRONYX"
.Sh DESCRIPTION
The
.Nm
-driver needs either
-.Xr sppp 4
-or
-.Xr netgraph 4 .
-Which one to use is determined by the
-.Dv NETGRAPH_CRONYX
-option.
-If this option is present in your kernel configuration file, the
-.Nm
-driver will be compiled with
+driver creates a
.Xr netgraph 4
-support.
-Otherwise, it will be compiled with
-.Xr sppp 4
-support.
+node for each device found.
+The node is usually paired with
+.Xr ng_async 4 ,
+.Xr ng_cisco 4 ,
+.Xr ng_frame_relay 4
+or with
+.Xr ng_ppp 4
+under control of net/mpd5 port.
.Pp
Refer to
.Xr sconfig 8
@@ -89,12 +79,8 @@ with 32 HDLC channels.
.El
.Sh SEE ALSO
.Xr cp 4 ,
-.Xr ctau 4 ,
-.Xr cx 4 ,
-.Xr sppp 4 ,
-.Xr ifconfig 8 ,
-.Xr sconfig 8 ,
-.Xr spppcontrol 8
+.Xr netgraph 4 ,
+.Xr sconfig 8
.Sh HISTORY
The
.Nm
@@ -103,9 +89,3 @@ driver was added in
.Fx 5.5
and
.Fx 4.11 .
-The
-.Nm
-driver for previous versions of
-.Fx
-is available from
-.Pa http://www.cronyx.ru/ .
diff --git a/share/man/man4/man4.i386/cp.4 b/share/man/man4/man4.i386/cp.4
index 049bb0829749..2e86e03a7de3 100644
--- a/share/man/man4/man4.i386/cp.4
+++ b/share/man/man4/man4.i386/cp.4
@@ -13,7 +13,7 @@
.\" Cronyx Id: cp.4,v 1.1.2.5 2004/06/21 17:47:40 rik Exp $
.\" $FreeBSD$
.\"
-.Dd July 16, 2005
+.Dd October 22, 2021
.Dt CP 4 i386
.Os
.Sh NAME
@@ -34,28 +34,19 @@ module at boot time, place the following line in
if_cp_load="YES"
.Ed
.Pp
-Additional options:
-.Cd "device sppp"
-.Cd "options NETGRAPH"
-.Cd "options NETGRAPH_CRONYX"
.Sh DESCRIPTION
The
.Nm
-driver needs either
-.Xr sppp 4
-or
-.Xr netgraph 4 .
-Which one to use is determined by the
-.Dv NETGRAPH_CRONYX
-option.
-If this option is present in your kernel configuration file, the
-.Nm
-driver will be compiled with
+driver creates a
.Xr netgraph 4
-support.
-Otherwise, it will be compiled with
-.Xr sppp 4
-support.
+node for each device found.
+The node is usually paired with
+.Xr ng_async 4 ,
+.Xr ng_cisco 4 ,
+.Xr ng_frame_relay 4
+or with
+.Xr ng_ppp 4
+under control of net/mpd5 port.
.Pp
Refer to
.Xr sconfig 8
@@ -92,12 +83,9 @@ T3 interface
STS-1 interface
.El
.Sh SEE ALSO
-.Xr ctau 4 ,
-.Xr cx 4 ,
-.Xr sppp 4 ,
-.Xr ifconfig 8 ,
-.Xr sconfig 8 ,
-.Xr spppcontrol 8
+.Xr ce 4 ,
+.Xr netgraph 4 ,
+.Xr sconfig 8
.Sh HISTORY
The
.Nm
@@ -105,9 +93,3 @@ driver was added in
.Fx 5.3
and
.Fx 4.11 .
-The
-.Nm
-driver for previous versions of
-.Fx
-is available from
-.Pa http://www.cronyx.ru/ .
diff --git a/share/man/man4/netgraph.4 b/share/man/man4/netgraph.4
index bed412193f6b..6d3679041e5c 100644
--- a/share/man/man4/netgraph.4
+++ b/share/man/man4/netgraph.4
@@ -1454,7 +1454,6 @@ common networking problems, solved using
.Xr ng_rfc1490 4 ,
.Xr ng_socket 4 ,
.Xr ng_split 4 ,
-.Xr ng_sppp 4 ,
.Xr ng_sscfu 4 ,
.Xr ng_sscop 4 ,
.Xr ng_tee 4 ,
diff --git a/share/man/man4/ng_sppp.4 b/share/man/man4/ng_sppp.4
deleted file mode 100644
index 685d45f1500e..000000000000
--- a/share/man/man4/ng_sppp.4
+++ /dev/null
@@ -1,172 +0,0 @@
-.\" Copyright (C) 2003-2004 Cronyx Engineering.
-.\" Copyright (C) 2003-2004 Roman Kurakin <rik@cronyx.ru>
-.\"
-.\" This software is distributed with NO WARRANTIES, not even the implied
-.\" warranties for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-.\"
-.\" Authors grant any other persons or organisations a permission to use,
-.\" modify and redistribute this software in source and binary forms,
-.\" as long as this message is kept with the software, all derivative
-.\" works or modified versions.
-.\"
-.\" Cronyx Id: ng_sppp.4,v 1.1.2.3 2004/03/30 14:28:34 rik Exp $
-.\" $FreeBSD$
-.\"
-.Dd February 3, 2005
-.Dt NG_SPPP 4
-.Os
-.Sh NAME
-.Nm ng_sppp
-.Nd sppp netgraph node type
-.Sh SYNOPSIS
-.In netgraph/ng_sppp.h
-.Sh DESCRIPTION
-An
-.Nm sppp
-node is a
-.Xr netgraph 4
-interface to the original
-.Xr sppp 4
-network module for synchronous lines.
-Currently,
-.Xr sppp 4
-supports PPP and Cisco HDLC protocols.
-An
-.Nm sppp
-node could be considered as an alternative kernel mode PPP
-implementation to
-.Pa net/mpd
-port +
-.Xr ng_ppp 4 ,
-and as an alternative to
-.Xr ng_cisco 4
-node.
-While having less features than
-.Pa net/mpd
-+
-.Xr ng_ppp 4 ,
-it is significantly easier to use in the majority of simple configurations,
-and allows the administrator to not install the
-.Pa net/mpd
-port.
-With
-.Nm sppp
-you do not need any other nodes, not even an
-.Xr ng_iface 4
-node.
-When an
-.Nm sppp
-node is created, a new interface appears which is accessible via
-.Xr ifconfig 8 .
-Network interfaces corresponding to
-.Nm sppp
-nodes are named
-.Li sppp0 , sppp1 ,
-etc.
-When a node is shut down, the corresponding interface is removed,
-and the interface name becomes available for reuse by future
-.Nm sppp
-nodes.
-New nodes always take the first unused interface.
-The node itself is assigned the same name as its interface, unless the name
-already exists, in which case the node remains unnamed.
-The
-.Nm sppp
-node allows drivers written to the old
-.Xr sppp 4
-interface to be rewritten using the
-newer more powerful
-.Xr netgraph 4
-interface, and still behave in a compatible manner without supporting both
-network modules.
-.Pp
-An
-.Nm sppp
-node has a single hook named
-.Va downstream .
-Usually it is connected directly to
-a device driver hook.
-.Pp
-The
-.Nm sppp
-nodes support the Berkeley Packet Filter,
-.Xr bpf 4 .
-.Sh HOOKS
-This node type supports the following hooks:
-.Bl -tag -width ".Va downstream"
-.It Va downstream
-The connection to the synchronous line.
-.El
-.Sh CONTROL MESSAGES
-This node type supports the generic control messages, plus the following:
-.Bl -tag -width foo
-.It Dv NGM_SPPP_GET_IFNAME Pq Ic getifname
-Returns the name of the associated interface as a
-.Dv NUL Ns -terminated
-.Tn ASCII
-string.
-Normally this is the same as the name of the node.
-.El
-.Sh SHUTDOWN
-This node shuts down upon receipt of a
-.Dv NGM_SHUTDOWN
-control message.
-The associated interface is removed and becomes available
-for use by future
-.Nm sppp
-nodes.
-.Pp
-Unlike most other node types and like
-.Xr ng_iface 4
-does, an
-.Nm sppp
-node does
-.Em not
-go away when all hooks have been disconnected; rather, an explicit
-.Dv NGM_SHUTDOWN
-control message is required.
-.Sh EXAMPLES
-For example, if you have the
-.Xr cx 4
-device, you could run PPP over it with just one command:
-.Pp
-.Dl "ngctl mkpeer cx0: sppp rawdata downstream"
-.Pp
-Now you have the
-.Li sppp0
-interface (if this was the first
-.Nm sppp
-node) which can be
-accessed via
-.Xr ifconfig 8
-as a normal network interface,
-or via
-.Xr spppcontrol 8
-as an
-.Xr sppp 4
-interface.
-.Sh SEE ALSO
-.Xr bpf 4 ,
-.Xr cx 4 ,
-.Xr netgraph 4 ,
-.Xr ng_cisco 4 ,
-.Xr ng_iface 4 ,
-.Xr ng_ppp 4 ,
-.Xr sppp 4 ,
-.Xr ifconfig 8 ,
-.Xr ngctl 8 ,
-.Xr spppcontrol 8
-.Pp
-For complex networking topologies you may want to look at
-.Pa net/mpd
-port.
-.Sh HISTORY
-The
-.Nm sppp
-node type was implemented for
-.Fx 5.0 .
-It was included to the system since
-.Fx 5.3 .
-.Sh AUTHORS
-Copyright (C) 2003-2004
-.An Roman Kurakin Aq Mt rik@cronyx.ru
diff --git a/share/man/man4/sppp.4 b/share/man/man4/sppp.4
deleted file mode 100644
index 0420bb45ab80..000000000000
--- a/share/man/man4/sppp.4
+++ /dev/null
@@ -1,238 +0,0 @@
-.\"
-.\" Copyright (c) 1997, 2001 Joerg Wunsch
-.\"
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR
-.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
-.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-.\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT,
-.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
-.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-.\"
-.\" $FreeBSD$
-.\"
-.Dd May 25, 2008
-.Dt SPPP 4
-.Os
-.Sh NAME
-.Nm sppp
-.Nd point to point protocol network layer for synchronous lines
-.Sh SYNOPSIS
-.Cd "device sppp"
-.Sh DESCRIPTION
-The
-.Nm
-network layer implements the state machine and the Link Control
-Protocol (LCP) of the
-.Em point to point protocol (PPP)
-as described in RFC 1661.
-Note that this layer does not provide
-network interfaces of its own, it is rather intended to be layered on
-top of drivers providing a synchronous point-to-point connection that
-wish to run a PPP stack over it.
-The corresponding network interfaces
-have to be provided by these hardware drivers.
-.Pp
-The
-.Nm
-layer provides three basic modes of operation.
-The default mode,
-with no special flags to be set, is to create the PPP connection
-(administrative
-.Em Open
-event to the LCP layer) as soon as the interface is taken up with the
-.Xr ifconfig 8
-command.
-Taking the interface down again will terminate the LCP layer
-and thus all other layers on top.
-The link will also terminate itself as
-soon as no Network Control Protocol (NCP) is open anymore, indicating
-that the lower layers are no longer needed.
-.Pp
-Setting the link-level flag
-.Em link0
-with
-.Xr ifconfig 8
-will cause the respective network interface to go into
-.Em passive
-mode.
-This means, the administrative
-.Em Open
-event to the LCP layer will be delayed until after the lower layers
-signals an
-.Em Up
-event (rise of
-.Dq carrier ) .
-This can be used by lower layers to support
-a dialin connection where the physical layer is not available
-immediately at startup, but only after some external event arrives.
-Receipt of a
-.Em Down
-event from the lower layer will not take the interface completely down
-in this case.
-.Pp
-Finally, setting the flag
-.Em link1
-will cause the interface to operate in
-.Em dial-on-demand
-mode.
-This is also only useful if the lower layer supports the notion
-of a carrier.
-Upon configuring the
-respective interface, it will delay the administrative
-.Em Open
-event to the LCP layer until either an outbound network packet
-arrives, or until the lower layer signals an
-.Em Up
-event, indicating an inbound connection.
-As with passive mode, receipt
-of a
-.Em Down
-event (loss of carrier) will not automatically take the interface down,
-thus it remains available for further connections.
-.Pp
-The
-.Nm
-layer supports the
-.Em debug
-interface flag that can be set with
-.Xr ifconfig 8 .
-If this flag is set, the various control protocol packets being
-exchanged as well as the option negotiation between both ends of the
-link will be logged at level
-.Dv LOG_DEBUG .
-This can be helpful to examine configuration problems during the first
-attempts to set up a new configuration.
-Without this flag being set,
-only the major phase transitions will be logged at level
-.Dv LOG_INFO .
-.Pp
-It is possible to leave the local interface IP address open for
-negotiation by setting it to 0.0.0.0.
-This requires that the remote
-peer can correctly supply a value for it based on the identity of the
-caller, or on the remote address supplied by this side.
-Due to the
-way the IPCP option negotiation works, this address is being supplied
-late during the negotiation, which might cause the remote peer to make
-wrong assumptions.
-.Pp
-In a similar spirit the remote address can be set to the magical
-value
-.Li 0.0.0. Ns Em *
-which means that we do not care what address the remote
-side will use, as long as it is not 0.0.0.0.
-This is useful if your ISP has several dial-in
-servers.
-You can of course
-.Nm route Cm add Ar something_or_other 0.0.0. Ns Em *
-and it will do exactly what you would want it to.
-.Pp
-The PAP and CHAP authentication protocols as described in RFC 1334,
-and RFC 1994 resp., are also implemented.
-Their parameters are being
-controlled by the
-.Xr spppcontrol 8
-utility.
-.Pp
-VJ header compression is implemented, and enabled by default.
-It can be
-disabled using
-.Xr spppcontrol 8 .
-.Sh DIAGNOSTICS
-.Bl -diag
-.It <ifname><ifnum>: <proto> illegal <event> in state <statename>
-An event happened that should not happen for the current state
-the respective control protocol is in.
-See RFC 1661 for a description
-of the state automaton.
-.It <ifname><ifnum>: loopback
-The state automaton detected a line loopback (that is, it was talking
-with itself).
-The interface will be temporarily disabled.
-.It <ifname><ifnum>: up
-The LCP layer is running again, after a line loopback had previously
-been detected.
-.It <ifname><ifnum>: down
-The keepalive facility detected the line being unresponsive.
-Keepalive must be explicitly requested by the lower layers in order to
-take place.
-.El
-.Sh SEE ALSO
-.Xr inet 4 ,
-.Xr intro 4 ,
-.Xr ifconfig 8 ,
-.Xr spppcontrol 8
-.Rs
-.%A W. Simpson, Editor
-.%T "The Point-to-Point Protocol (PPP)"
-.%O RFC 1661
-.Re
-.Rs
-.%A G. McGregor
-.%T "The PPP Internet Protocol Control Protocol (IPCP)"
-.%O RFC 1332
-.Re
-.Rs
-.%A B. Lloyd
-.%A W. Simpson
-.%T "PPP Authentication Protocols"
-.%O RFC 1334
-.Re
-.Rs
-.%A W. Simpson
-.%T "PPP Challenge Handshake Authentication Protocol (CHAP)"
-.%O RFC 1994
-.Re
-.Sh AUTHORS
-.An -nosplit
-The original implementation of
-.Nm
-was written in 1994 at Cronyx Ltd., Moscow by
-.An Serge Vakulenko Aq Mt vak@cronyx.ru .
-.An J\(:org Wunsch Aq Mt joerg_wunsch@uriah.heep.sax.de
-rewrote a large part in 1997 in order
-to fully implement the state machine as described in RFC 1661, so it
-could also be used for dialup lines.
-He also wrote this man page.
-Serge later on wrote a basic implementation for PAP and CHAP, which
-served as the base for the current implementation, done again by
-.An J\(:org Wunsch .
-.Sh BUGS
-Many.
-.Pp
-Currently, only the
-.Em IPCP
-control protocol and
-.Xr ip 4
-network protocol is supported.
-More NCPs should be implemented, as well as other control protocols
-for authentication and link quality reporting.
-.Pp
-Negotiation loop avoidance is not fully implemented.
-If the negotiation
-does not converge, this can cause an endless loop.
-.Pp
-The various parameters that should be adjustable per RFC 1661 are
-currently hard-coded into the kernel, and should be made accessible
-through
-.Xr spppcontrol 8 .
-.Pp
-.Em Passive
-mode has not been tested extensively.
-.Pp
-Link-level compression protocols should be supported.
diff --git a/share/man/man5/rc.conf.5 b/share/man/man5/rc.conf.5
index 6cff3f12954a..8f247c480cc7 100644
--- a/share/man/man5/rc.conf.5
+++ b/share/man/man5/rc.conf.5
@@ -1941,21 +1941,6 @@ ifconfig_gif0="inet 10.0.0.1 10.0.0.2 netmask 255.255.255.252"
gifconfig_gif1="inet6 2a00::1 2a01::1"
ifconfig_gif1="inet 10.1.0.1 10.1.0.2 netmask 255.255.255.252"
.Ed
-.It Va sppp_interfaces
-.Pq Vt str
-Set to the list of
-.Xr sppp 4
-interfaces to configure on this host.
-A
-.Va spppconfig_ Ns Aq Ar interface
-variable is assumed to exist for each value of
-.Ar interface .
-Each interface should also be configured by a general
-.Va ifconfig_ Ns Aq Ar interface
-setting.
-Refer to
-.Xr spppcontrol 8
-for more information about available options.
.It Va ppp_enable
.Pq Vt bool
If set to