# # spec file for package rp-pppoe # # Copyright (c) 2025 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # %define _name pppoe %define _group dialout Name: rp-%{_name} Version: 4.0 Release: 4.3 Summary: A PPP Over Ethernet Redirector for PPPD License: GPL-2.0-or-later URL: https://dianne.skoll.ca/projects/%{name} Source0: https://dianne.skoll.ca/projects/%{name}/download/%{name}-%{version}.tar.gz Source1: %{_name}-connect Source2: %{_name}-setup Source3: %{_name}-start Source4: %{_name}-status Source5: %{_name}-stop Source6: %{_name}.service Source7: %{_name}-server.service Patch0: %{name}-3.14-docdir.patch BuildRequires: pkgconfig BuildRequires: ppp BuildRequires: pkgconfig(systemd) Requires: group(%{_group}) Requires: iproute2 Requires: ppp Requires(post): permissions Requires(pre): group(%{_group}) %description %{name} is a user-space redirector which permits the use of PPPoE (Point-to-Point Protocol Over Ethernet) with Linux. PPPoE is used by many ADSL service providers. %prep %autosetup -p1 %build cd src %configure %make_build %install %make_install -C src mkdir -p %{buildroot}%{_sbindir} %{buildroot}%{_unitdir} install -p %{SOURCE1} %{buildroot}%{_sbindir} install -p %{SOURCE2} %{buildroot}%{_sbindir} install -p %{SOURCE3} %{buildroot}%{_sbindir} install -p %{SOURCE4} %{buildroot}%{_sbindir} install -p %{SOURCE5} %{buildroot}%{_sbindir} install -pm0644 %{SOURCE6} %{buildroot}%{_unitdir}/%{_name}.service install -pm0644 %{SOURCE7} %{buildroot}%{_unitdir}/%{_name}-server.service ln -s %{_name}-stop %{buildroot}%{_sbindir}/adsl-stop ln -s %{_name}-start %{buildroot}%{_sbindir}/adsl-start install -Dpm0644 %{buildroot}%{_sysconfdir}/ppp/plugins/README %{buildroot}%{_defaultdocdir}/%{name}/README.plugins rm -r %{buildroot}%{_sysconfdir}/ppp/plugins \ %{buildroot}%{_defaultdocdir}/%{name}/LICENSE %pre %service_add_pre %{_name}.service %service_add_pre %{_name}-server.service %preun %service_del_preun %{_name}.service %service_del_preun %{_name}-server.service %post %service_add_post %{_name}.service %service_add_post %{_name}-server.service %postun %service_del_postun %{_name}.service %service_del_postun %{_name}-server.service %files %license doc/LICENSE %dir %{_defaultdocdir}/%{name} %doc %{_defaultdocdir}/%{name}/* %attr(0640,root,root) %config(noreplace) %{_sysconfdir}/ppp/%{_name}-server-options %{_sbindir}/%{_name} %{_sbindir}/%{_name}-* %{_mandir}/man?/*%{?ext_man} %{_sbindir}/adsl-st* %{_unitdir}/%{_name}.service %{_unitdir}/%{_name}-server.service %changelog * Wed Jan 15 2025 Илья Индиго - Fixed status script pppoe-status and systemd unit file. * Sun Feb 4 2024 Илья Индиго - Removed rcpppoe and rcpppoe-server rudiments. * Fri Jun 2 2023 Matthias Gerstner - Removed remains of permissions setting for the pppoe-wrapper setuid binary. The major update to 4.0 dropped this. * Mon May 15 2023 Frederic Crozat - Updated to 4.0: * SPDX-License-Identifier: tags added to most source files * rp-pppoe.so plugin: Modified to compile against both pppd >= 2.5.0 and pppd < 2.5.0. * pppoe-server: If -L or -R option is specified as 0.0.0.0, then IP allocation is delegated to pppd. * pppoe-server: New -g option specifies the path of the rp-pppoe.so plugin to use with pppd in kernel-mode PPPoE. * pppoe-server: New -U option specifies a UNIX-domain control socket. This lets you send control commands to the server while it is running; see the pppoe-server man page for details. * All source code: Many cleanups and use of standard types like uint16_t rather than ones we define. * All source code: Support for OSes other than Linux has been dropped. * Documentation: Updated from modern Linux systems. * Cleanup: The following old and obsolete files have been removed: - Old connection scripts scripts/pppoe-connect.in, scripts/pppoe-start.in, scripts/pppoe-init-suse.in, scripts/pppoe-setup.in, scripts/pppoe-status, scripts/pppoe-init.in, and scripts/pppoe-stop.in * Obsolete firewall scripts configs/firewall-standalone and configs/firewall-masq - Obsolete configuration files configs/pppoe.conf and configs/pap-secrets - The Tcl/Tk gui script gui/tkpppoe.in and supporting files - The RPM spec file rp-pppoe.spec - Drop rp-pppoe-3.14-nonrfc-modems.patch, rp-pppoe-3.14-resolve-conf.patch, rp-pppoe-3.14-config.patch, rp-pppoe-3.14-init.patch, patched scripts no longer exists. - Drop rp-pppoe-3.14-release-buildsystem.patch, rp-pppoe-3.14-pie.patch rp-pppoe-3.14-strip.patch, no longer needed. * Sun Sep 4 2022 Andreas Stieger - Converted usage of egrep to "grep -E" (boo#1203092). * Thu Mar 10 2022 Илья Индиго - Removed Wants=network.target from pppoe.service (bsc#1196359). * Sat May 8 2021 Илья Индиго - Refreshed spec-file via spec-cleaner and manual optimisations. * Changed files: pppoe-connect, pppoe-setup, pppoe-status and pppoe-stop (replaced /var/run by /run). - Updated to 3.15 * Don't ignore SIGTERM and SIGINT. Send PADT and exit if one of those signals is received. * Switch from net-tools to iproute2. * Thu May 28 2020 Илья Индиго - Refresh spec-file via spec-cleaner and manual optimisations. * Add make_build and autopatch macros. * Remove group tag and obsoleted conditions. - Refresh and rename patches: * docdir.diff to rp-pppoe-3.14-docdir.patch * nonrfc-modems.diff to rp-pppoe-3.14-nonrfc-modems.patch * release-buildsystem.diff to rp-pppoe-3.14-release-buildsystem.patch * resolve-conf.diff to rp-pppoe-3.14-resolve-conf.patch * rp-pppoe-3.10-config.patch to rp-pppoe-3.14-config.patch * rp-pppoe-3.10-init.patch to rp-pppoe-3.14-init.patch * rp-pppoe-pie.patch to rp-pppoe-3.14-pie.patch * strip.diff to rp-pppoe-3.14-strip.patch - Update to 3.14 * Add -H and -M options for sending HURL and MOTM packets respectively. * Change VERSION macro to RP_VERSION to avoid conflict with pppd macro. * Mon Jun 17 2019 Илья Индиго - Refresh spec-file via spec-cleaner and manual optimisations. * New URL and Source project. * Add pkgconfig for BuildRequires. - Update rp-pppoe to version 3.13. * Fix potential use-after-free bug. * Properly detecte kernel-mode PPPoE. * Wed Jun 12 2019 Dominique Leuenberger - BuildRequire pkgconfig(systemd) instead of systemd: allow OBS to shortcut the build queues by allowing usage of systemd-mini * Sat Mar 10 2018 ilya@ilya.top - Refresh spec-file via spec-cleaner and manual optimisations. - Add %%license macro. * Thu Nov 23 2017 ilya@ilya.top - Add Requires/Requires(pre) group(dialout) (boo#1067511). - Add %%verify_permissions script for pppoe-wrapper. * Thu Nov 9 2017 ilya@ilya.top - Refresh pppoe.spec via spec-cleaner. * Sun Oct 8 2017 ilya@ilya.top - Add pppoe.service for run pppoe as client (boo#1060710). - Refresh pppoe.spec. - Drop SLE 11 support. * Wed Nov 16 2016 ilya@ilya.top - Fix patches and script for version 3.12. - dropped logger-path.diff - Add net-tools support. net-tools-deprecated is no longer required. * Tue Oct 25 2016 ilya@ilya.top - Update to version 3.12. - Fix patch release-buildsystem.diff for 3.12 version. - Add to Requires net-tools-deprecated package. - Reordered patch positions. - Formated all the variables in the spec-file to macro style. * Sat Oct 25 2014 p.drouand@gmail.com - Use systemd instead of sysvinit; add pppoe-server.service - Install fixed versions of rp-pppoe scripts for openSUSE > 11.4 most of fixes are about paths, because of /usr move Added: pppoe-setup, ,pppoe-start, pppoe-connect, pppoe-status , pppoe-stop * Tue Apr 23 2013 binli@opensuse.org - update to version 3.11 * Make the rp-pppoe.so plugin avoid calling exit() if the "persist" pppd option was given. * Get rid of hard-coded nobsdcomp, nodeflate, novj and novjccomp options in pppoe-server. * Handle UNIT=xxx directive in pppoe-connect. * Add "-i" flag to pppoe-server to ignore PADIs if there are no free sessions. * Add "-X " option to pppoe-server. * In plugin, don't set devnam if it's already set. * Eliminate race condition in signal handling. * pppoe-server: Add -q and -Q options to allow specification of path to pppd and pppoe programs respectively. * Add a few more sanity checks to pppoe-server packet handling. * Tue Jan 24 2012 crrodriguez@opensuse.org - build pppoe-wrapper with PIE and full RELRO * Tue Nov 3 2009 coolo@novell.com - updated patches to apply with fuzz=0 * Fri May 8 2009 chris@computersalat.de - new patch for init script o added reload o rework of status - added config patch * Wed Apr 15 2009 chris@computersalat.de - beautify spec * Fri Jul 4 2008 hvogel@suse.de - update to version 3.10 * some compilation fixes * pppoe-server has new "-x" option to limit the number of sessions per MAC address. * Added proper timeout handling while waiting for PADO/PADS. * Fix race condition with some access concentrators * Thu Feb 21 2008 crrodriguez@suse.de - add missing remote_fs dependency in the init script - fix/add missing calls to restart_on_update and stop_on_removal macros * Thu Jul 13 2006 mskibbe@suse.de - update to version 3.8 which o Adjusted code and made it possible to disable debugging code to shrink size of pppoe executable. o Fixed bug in MD5 code that caused pppoe-server to segfault on 64-bit machines. o Made various functions and variables static that didn't need to be visible outside their source files. * Fri May 26 2006 schwab@suse.de - Use RPM_OPT_FLAGS. - Don't strip binaries. * Wed Jan 25 2006 mls@suse.de - converted neededforbuild to BuildRequires * Thu Nov 17 2005 arvin@suse.de - updated to version 3.7 - pppoe-server prepends "nic-" to interface name if used with kernel-mode plugin - added -O option to pppoe-server that specify a different default options file for pppd * Wed Sep 21 2005 arvin@suse.de - updated to version 3.6: - Changed the names of commands from adsl-* to pppoe-* to more logically name the scripts (incompatibility) - Changed sample firewall scripts to use iptables instead of the old ipchains command * Wed Jan 19 2005 arvin@suse.de - fixed build on s390 by compiling without -ansi * Sat Jan 10 2004 adrian@suse.de - build as user * Fri Sep 5 2003 ro@suse.de - fix typo in specfile * Fri Sep 5 2003 kukuk@suse.de - Add %%attr to get filelist in sync with /etc/permissions* * Fri Jun 13 2003 nashif@suse.de - Added %%dir to created directories * Thu May 15 2003 nashif@suse.de - Fixed init script syntax (bug #26248) - Fixed file list * Mon Mar 10 2003 nashif@suse.de - dont link /etc/resolv.conf, done by ip-up ( #15707) * Tue Oct 1 2002 nashif@suse.de - Don't check for release file * Mon Sep 30 2002 nashif@suse.de - fixed bug #20327: wrong path to logger in scripts * Mon Aug 19 2002 kukuk@suse.de - fixed compilation on UL * Sun Aug 18 2002 nashif@suse.de - Fixed bug #17866: Added PreReq * Sat Aug 10 2002 nashif@suse.de - Fix bug #17465: detect non-rfc modems - Fix bug #17466: use netfilter instead of ipchains * Mon Jul 29 2002 nashif@suse.de - update to 3.5 * Mon Jan 14 2002 ro@suse.de - removed START_ADSL * Sat Oct 20 2001 nashif@suse.de - Update to 3.3 * Client works on Solaris again. It was broken in 3.2. * Added DEFAULTROUTE=yes|no option to configuration file. * Server parses address pool file better. * Server address pool allows ranges of addresses on a line: a.b.c.d-e * Added "-d" (=debug) and "-P" (=check pool file syntax) options to pppoe-server. * Fri Aug 3 2001 nashif@suse.de - Update to version 3.2 * Thu Jun 28 2001 nashif@suse.de - Fixed bug #8966 - bzipped sources * Sat Apr 21 2001 nashif@suse.de - Fixed documentation path in GUI - Added GUI documentation * Thu Apr 5 2001 nashif@suse.de - Fixed init script (Use rc_status) * Tue Apr 3 2001 nashif@suse.de - Update to version 3.0 * Thu Mar 1 2001 nashif@suse.de - Update to version 2.8 - Fixed headers * Fri Dec 22 2000 nashif@suse.de - Added obosletes and provides tags * Wed Dec 13 2000 nashif@suse.de - Update to 2.5 (Fixes security problem) * Sat Dec 9 2000 nashif@suse.de - Update to 2.4 - Fix rcadsl link - Changed name tp rp-pppoe * Wed Nov 29 2000 nashif@suse.de - Use insserv * Fri Sep 22 2000 nashif@suse.de - Updated to 2.3 * Thu May 25 2000 nashif@suse.de - Updated to 1.9 - Added init script * Sun May 7 2000 nashif@suse.de - Update to version 1.8 * Wed Mar 29 2000 nashif@suse.de - Update to version 1.7 - Fixed Group & Buildroot tag * Wed Feb 23 2000 nashif@suse.de - Initial Release (Version 1.3)