All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] Deprecate rp-pppoe package
@ 2010-07-06 17:08 Darcy L. Watkins
  2010-07-20 18:47 ` Gustavo Zacarias
  0 siblings, 1 reply; 11+ messages in thread
From: Darcy L. Watkins @ 2010-07-06 17:08 UTC (permalink / raw)
  To: buildroot

Hello,

Before you remove the rp-pppoe package from buildroot, I have a
question.  Does the pppoe plugin for pppd include the access
concentrator (AC) support in it as well?

I ask this because most people only care about the client side and don't
think much about the server side you connect it to.

A while back, I cross compiled the AC functionality of rp-pppoe on
powerpc, added a freeradius client and demo'd a simple embedded AC on an
AMCC Taihu involving, a private LAN, freeradius running on a server
machine and a windows PC running its PPPoE client.  I was able to
advertise numerous "services" from the Taihu and have the PC be able to
select and connect to them using PPPoE sessions.

Regards,

Darcy

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] Deprecate rp-pppoe package
  2010-07-06 17:08 [Buildroot] Deprecate rp-pppoe package Darcy L. Watkins
@ 2010-07-20 18:47 ` Gustavo Zacarias
  2010-07-20 19:44   ` Darcy Watkins
  0 siblings, 1 reply; 11+ messages in thread
From: Gustavo Zacarias @ 2010-07-20 18:47 UTC (permalink / raw)
  To: buildroot

On 07/06/2010 02:08 PM, Darcy L. Watkins wrote:

> Hello,
> 
> Before you remove the rp-pppoe package from buildroot, I have a
> question.  Does the pppoe plugin for pppd include the access
> concentrator (AC) support in it as well?
> 
> I ask this because most people only care about the client side and don't
> think much about the server side you connect it to.
> 
> A while back, I cross compiled the AC functionality of rp-pppoe on
> powerpc, added a freeradius client and demo'd a simple embedded AC on an
> AMCC Taihu involving, a private LAN, freeradius running on a server
> machine and a windows PC running its PPPoE client.  I was able to
> advertise numerous "services" from the Taihu and have the PC be able to
> select and connect to them using PPPoE sessions.
> 
> Regards,
> 
> Darcy

Hi.
Hmm we might keep rp-pppoe for server-side functionality.
Do you feel like migrating the package to the latest infrastructure and
updating to the latest version?
Regards.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] Deprecate rp-pppoe package
  2010-07-20 18:47 ` Gustavo Zacarias
@ 2010-07-20 19:44   ` Darcy Watkins
  2010-08-23 14:52     ` [Buildroot] [PATCH] " Darcy Watkins
  0 siblings, 1 reply; 11+ messages in thread
From: Darcy Watkins @ 2010-07-20 19:44 UTC (permalink / raw)
  To: buildroot

Hi,

I'll take that on early August when I get back from vacation.  I'll need
to set up to repeat the test case and probably want to also try it out
on a couple of other processors I have available (an ARM11 MX31 and an
x86 Atom as well as the PPC405).  And of course, upgrade the version
etc.

Buildroot doesn't have the freeradius client in it, so I'll probably
have to add that as well.


Regards,

Darcy


-----Original Message-----
From: Gustavo Zacarias [mailto:gustavo at zacarias.com.ar] 
Sent: Tuesday, July 20, 2010 11:48 AM
To: Darcy Watkins
Cc: buildroot
Subject: [Spam Bayesian - ] - Re: [Buildroot] Deprecate rp-pppoe package
- Bayesian Filter detected spam

On 07/06/2010 02:08 PM, Darcy L. Watkins wrote:

> Hello,
> 
> Before you remove the rp-pppoe package from buildroot, I have a
> question.  Does the pppoe plugin for pppd include the access
> concentrator (AC) support in it as well?
> 
> I ask this because most people only care about the client side and
don't
> think much about the server side you connect it to.
> 
> A while back, I cross compiled the AC functionality of rp-pppoe on
> powerpc, added a freeradius client and demo'd a simple embedded AC on
an
> AMCC Taihu involving, a private LAN, freeradius running on a server
> machine and a windows PC running its PPPoE client.  I was able to
> advertise numerous "services" from the Taihu and have the PC be able
to
> select and connect to them using PPPoE sessions.
> 
> Regards,
> 
> Darcy

Hi.
Hmm we might keep rp-pppoe for server-side functionality.
Do you feel like migrating the package to the latest infrastructure and
updating to the latest version?
Regards.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH] Re:  Deprecate rp-pppoe package
  2010-07-20 19:44   ` Darcy Watkins
@ 2010-08-23 14:52     ` Darcy Watkins
  2010-08-23 17:17       ` Darcy Watkins
  0 siblings, 1 reply; 11+ messages in thread
From: Darcy Watkins @ 2010-08-23 14:52 UTC (permalink / raw)
  To: buildroot

Hello,

Here are first pass patches for more current (and server side) rp-pppoe
support in buildroot.  Summary of changes below...

1.  The pppd.mk change for radrealms.so I sent to the list Aug 19th
2.  Update rp-pppoe package from version 3.8 to version 3.10
3.  Add the pppoe server binaries to the target (pppoe-server,
    pppoe-relay and pppoe-sniff)
4.  Changes to tarball name, the upstream URL and no downloaded patch.
     - The newer tarball was not on the mirror site that it was
       pointing to by default so I pointed it to Roaring Pengiun's
       site.  (Not sure how correct this is - perhaps it should
       change back once the mirror site is updated).
5.  Buildroot rp-pppoe package patch carry forwards / updates
     - add support to use the kernel plugin (new patch)
     - update to use with pppd 2.4.5
     - c/f the pack bitfields patch
     - drop the autoreconf patch (already in rp-pppoe ver 3.10)

Note:  I am only including the changes and additions here.  If you apply
this to your buildroot, you should manually remove the two
package/rp-pppoe/rp-pppoe-3.8-* patches to get rid of them.  It didn't
make sense for me to attach additional 100's of k bytes of patch that
only serves to delete the two files.

I tried this on a PowerPC 405EP based target board with two Ethernet
ports.  I setup eth0 as TCP/IP on LAN with a radius server and eth1 to
act as an access concentrator (pppoe server) to a Windows PC.  I ran two
instances of pppoe-server, one advertising a service called "local" set
up to authenticate using the board's Linux login / password scheme, and
the other advertising a service called "radius" to authenticate via the
radius server connected via eth0.

I was able to "dial-up" connect the PC (using PPPoE) using either
service, obtain IP address from pool range corresponding to each
service, and ping through to the PC running the radius server.  I tried
both user space pppoe deamon and the kernel plugin - both worked.

I have not updated the rp-pppoe.mk to the new infrastructure yet.  (I
have to study this first and thought it best to get the substance
available for comment before working on the final touch ups on
packaging).

Hopefully this can make it in time for 2010.08 release (if not then the
2010.11 release) and remove the deprecated status from the rp-pppoe
package.

Note: This patch applies against the 2010.08-rc1 tarball but since
nothing has changed in the rp-pppoe package lately, it will probably
also work with the latest git as well.  (Don't forget to delete the old
version 3.8 patch files yourself).


Regards,

Darcy


signed-off by: Darcy Watkins <dwatkins@tranzeo.com>

Index: buildroot-2010.08_powerpc/package/rp-pppoe/rp-pppoe-3.10-002-krn-plugin.patch
===================================================================
--- /dev/null
+++ buildroot-2010.08_powerpc/package/rp-pppoe/rp-pppoe-3.10-002-krn-plugin.patch
@@ -0,0 +1,34 @@
+--- rp-pppoe-3.10/src/configure.theorig  2008-02-05 13:57:15.000000000 -0800
++++ rp-pppoe-3.10/src/configure  2008-02-05 13:24:36.000000000 -0800
+@@ -6151,7 +6151,7 @@ modprobe ppp_synctty > /dev/null 2>&1
+ modprobe pppoe > /dev/null 2>&1
+ fi
+ if test "$cross_compiling" = yes; then
+-  ac_cv_linux_kernel_pppoe=no; $ECHO "cross-compiling, default: "
++  ac_cv_linux_kernel_pppoe=yes; $ECHO "cross-compiling, default: "
+ else
+   cat >conftest.$ac_ext <<_ACEOF
+ /* confdefs.h.  */
+--- rp-pppoe-3.10/src/pppoe-server.c.theorig     2006-04-02 07:29:42.000000000 -0700
++++ rp-pppoe-3.10/src/pppoe-server.c     2008-02-05 13:52:15.000000000 -0800
+@@ -20,6 +20,9 @@ static char const RCSID[] =
+ 
+ #include "config.h"
+ 
++/* Patched hack to make this cross compile */
++#define HAVE_LINUX_KERNEL_PPPOE 1
++
+ #if defined(HAVE_NETPACKET_PACKET_H) || defined(HAVE_LINUX_IF_PACKET_H)
+ #define _POSIX_SOURCE 1 /* For sigaction defines */
+ #endif
+--- rp-pppoe-3.10/src/Makefile.in.theorig	2008-02-06 06:59:11.000000000 -0800
++++ rp-pppoe-3.10/src/Makefile.in	2008-02-06 07:24:50.000000000 -0800
+@@ -48,7 +48,7 @@ PPPD_PATH=@PPPD@
+ @LIC_MAKEFILE_INCLUDE@
+ 
+ # Kernel-mode plugin gets installed here.
+-PLUGIN_DIR=/etc/ppp/plugins
++PLUGIN_DIR=/usr/lib/pppd/2.4.5
+ PLUGIN_PATH=$(PLUGIN_DIR)/rp-pppoe.so
+ 
+ # Configuration file paths
Index: buildroot-2010.08_powerpc/package/rp-pppoe/rp-pppoe.mk
===================================================================
--- buildroot-2010.08_powerpc.orig/package/rp-pppoe/rp-pppoe.mk
+++ buildroot-2010.08_powerpc/package/rp-pppoe/rp-pppoe.mk
@@ -3,33 +3,21 @@
 # rp-pppoe
 #
 #############################################################
-RP_PPPOE_VERSION:=3.8
-RP_PPPOE_SOURCE:=rp-pppoe_$(RP_PPPOE_VERSION).orig.tar.gz
-RP_PPPOE_PATCH:=rp-pppoe_$(RP_PPPOE_VERSION)-3.diff.gz
-RP_PPPOE_SITE:=$(BR2_DEBIAN_MIRROR)/debian/pool/main/r/rp-pppoe
+RP_PPPOE_VERSION:=3.10
+RP_PPPOE_SOURCE:=rp-pppoe-$(RP_PPPOE_VERSION).tar.gz
+RP_PPPOE_SITE:=http://www.roaringpenguin.com/files/download
 RP_PPPOE_TOPDIR:=$(BUILD_DIR)/rp-pppoe-$(RP_PPPOE_VERSION)
 RP_PPPOE_DIR:=$(BUILD_DIR)/rp-pppoe-$(RP_PPPOE_VERSION)/src
 RP_PPPOE_CAT:=$(ZCAT)
 RP_PPPOE_BINARY:=pppoe
+RP_PPPOE_SERVER_BINARY_SUFFIXES:=-server -relay -sniff
 RP_PPPOE_TARGET_BINARY:=usr/sbin/pppoe
 
 $(DL_DIR)/$(RP_PPPOE_SOURCE):
 	$(call DOWNLOAD,$(RP_PPPOE_SITE),$(RP_PPPOE_SOURCE))
 
-ifneq ($(RP_PPPOE_PATCH),)
-RP_PPPOE_PATCH_FILE:=$(DL_DIR)/$(RP_PPPOE_PATCH)
-$(RP_PPPOE_PATCH_FILE):
-	$(call DOWNLOAD,$(RP_PPPOE_SITE),$(RP_PPPOE_PATCH))
-endif
-
 $(RP_PPPOE_TOPDIR)/.unpacked: $(DL_DIR)/$(RP_PPPOE_SOURCE) $(RP_PPPOE_PATCH_FILE)
 	$(RP_PPPOE_CAT) $(DL_DIR)/$(RP_PPPOE_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
-ifneq ($(RP_PPPOE_PATCH),)
-	(cd $(RP_PPPOE_TOPDIR) && $(RP_PPPOE_CAT) $(DL_DIR)/$(RP_PPPOE_PATCH) | patch -p1)
-	if [ -d $(RP_PPPOE_TOPDIR)/debian/patches ]; then \
-		toolchain/patch-kernel.sh $(RP_PPPOE_TOPDIR) $(RP_PPPOE_TOPDIR)/debian/patches \*.patch; \
-	fi
-endif
 	toolchain/patch-kernel.sh $(RP_PPPOE_TOPDIR) package/rp-pppoe/ rp-pppoe\*.patch
 	touch $@
 
@@ -38,6 +26,7 @@ $(RP_PPPOE_TOPDIR)/.configured: $(RP_PPP
 		$(TARGET_CONFIGURE_OPTS) \
 		$(TARGET_CONFIGURE_ARGS) \
 		rpppoe_cv_pack_bitfields=normal \
+		PPPD_H=$(PPPD_DIR)/pppd/pppd.h \
 		./configure $(QUIET) \
 		--target=$(GNU_TARGET_NAME) \
 		--host=$(GNU_TARGET_NAME) \
@@ -53,6 +42,9 @@ $(RP_PPPOE_DIR)/$(RP_PPPOE_BINARY): $(RP
 
 $(TARGET_DIR)/$(RP_PPPOE_TARGET_BINARY): $(RP_PPPOE_DIR)/$(RP_PPPOE_BINARY)
 	cp -dpf $(RP_PPPOE_DIR)/$(RP_PPPOE_BINARY) $@
+	for ff in $(RP_PPPOE_SERVER_BINARY_SUFFIXES) ; do \
+		cp -dpf $(RP_PPPOE_DIR)/$(RP_PPPOE_BINARY)$$ff $(TARGET_DIR)/$(RP_PPPOE_TARGET_BINARY)$$ff ; \
+	done
 ifeq ($(BR2_HAVE_DOCUMENTATION),y)
 	mkdir -p $(TARGET_DIR)/usr/share/man/man8
 	$(INSTALL) -m 644 $(RP_PPPOE_TOPDIR)/man/pppoe.8 $(TARGET_DIR)/usr/share/man/man8/pppoe.8
Index: buildroot-2010.08_powerpc/package/rp-pppoe/Config.in
===================================================================
--- buildroot-2010.08_powerpc.orig/package/rp-pppoe/Config.in
+++ buildroot-2010.08_powerpc/package/rp-pppoe/Config.in
@@ -1,7 +1,11 @@
 config BR2_PACKAGE_RP_PPPOE
-	bool "pppoe"
-	depends on BR2_DEPRECATED
+	bool "rp-pppoe"
+	depends on BR2_PACKAGE_PPPD
 	help
 	  An implementation of the Point-to-point protocol over Ethernet.
+	  Has userspace client and server deamons.  You likely only need
+	  this package if you are implementing the pppoe server that will
+	  service other pppoe client devices.  Otherwise the normal client
+	  functionality already exists in the pppd package (and kernel).
 
 	  http://www.roaringpenguin.com/pppoe.html
Index: buildroot-2010.08_powerpc/package/pppd/pppd.mk
===================================================================
--- buildroot-2010.08_powerpc.orig/package/pppd/pppd.mk
+++ buildroot-2010.08_powerpc/package/pppd/pppd.mk
@@ -55,8 +55,8 @@ $(PPPD_TARGET_INSTALL_TARGET):
 		$(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/radattr.so
 	$(INSTALL) -D $(PPPD_DIR)/pppd/plugins/radius/radius.so \
 		$(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/radius.so
-	$(INSTALL) -D $(PPPD_DIR)/pppd/plugins/radius/radattr.so \
-		$(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/radattr.so
+	$(INSTALL) -D $(PPPD_DIR)/pppd/plugins/radius/radrealms.so \
+		$(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/radrealms.so
 	for m in $(PPPD_MANPAGES); do \
 		$(INSTALL) -m 644 -D $(PPPD_DIR)/$$m/$$m.8 \
 			$(TARGET_DIR)/usr/share/man/man8/$$m.8; \
Index: buildroot-2010.08_powerpc/package/rp-pppoe/rp-pppoe-3.10-001-configure-bitfield.patch
===================================================================
--- /dev/null
+++ buildroot-2010.08_powerpc/package/rp-pppoe/rp-pppoe-3.10-001-configure-bitfield.patch
@@ -0,0 +1,34 @@
+--- rp-pppoe-3.10.orig/src/configure.in	2006-04-02 16:29:42.000000000 +0200
++++ rp-pppoe-3.10/src/configure.in	2007-08-24 11:51:04.000000000 +0200
+@@ -231,6 +231,7 @@ esac
+ 
+ dnl Figure out packing order of structures
+ AC_MSG_CHECKING([packing order of bit fields])
++if test "x$rpppoe_cv_pack_bitfields" = "x" ; then
+ AC_TRY_RUN([
+ union foo {
+     struct bar {
+@@ -254,8 +255,8 @@ main(void)
+ 	return 2;
+     }
+ }], rpppoe_cv_pack_bitfields=normal, rpppoe_cv_pack_bitfields=rev,
+-$ECHO "no defaults for cross-compiling"; exit 0)
+-
++$ECHO "no defaults for cross-compiling")
++fi
+ if test "$rpppoe_cv_pack_bitfields" = "rev" ; then
+ 	AC_MSG_RESULT(reversed)
+ 	AC_DEFINE(PACK_BITFIELDS_REVERSED)
+--- rp-pppoe-3.10.orig/src/configure	2010-08-20 10:46:39.000000000 -0700
++++ rp-pppoe-3.10/src/configure	2010-08-20 11:02:16.000000000 -0700
+@@ -6272,7 +6272,9 @@ esac
+ { echo "$as_me:$LINENO: checking packing order of bit fields" >&5
+ echo $ECHO_N "checking packing order of bit fields... $ECHO_C" >&6; }
+ if test "$cross_compiling" = yes; then
+-  $ECHO "no defaults for cross-compiling"; exit 0
++if test "x$rpppoe_cv_pack_bitfields" = "x" ; then
++  $ECHO "no defaults for cross-compiling"
++fi
+ else
+   cat >conftest.$ac_ext <<_ACEOF
+ /* confdefs.h.  */



delete...
   package/rp-pppoe/rp-pppoe-3.8-001-configure-bitfield.patch
   package/rp-pppoe/rp-pppoe-3.8-002-autoreconf.patch




On Tue, 2010-07-20@12:44 -0700, Darcy Watkins wrote:
> Hi,
> 
> I'll take that on early August when I get back from vacation.  I'll need
> to set up to repeat the test case and probably want to also try it out
> on a couple of other processors I have available (an ARM11 MX31 and an
> x86 Atom as well as the PPC405).  And of course, upgrade the version
> etc.
> 
> Buildroot doesn't have the freeradius client in it, so I'll probably
> have to add that as well.
> 
> 
> Regards,
> 
> Darcy
> 
> 
> -----Original Message-----
> From: Gustavo Zacarias [mailto:gustavo at zacarias.com.ar] 
> Sent: Tuesday, July 20, 2010 11:48 AM
> To: Darcy Watkins
> Cc: buildroot
> Subject: [Spam Bayesian - ] - Re: [Buildroot] Deprecate rp-pppoe package
> - Bayesian Filter detected spam
> 
> On 07/06/2010 02:08 PM, Darcy L. Watkins wrote:
> 
> > Hello,
> > 
> > Before you remove the rp-pppoe package from buildroot, I have a
> > question.  Does the pppoe plugin for pppd include the access
> > concentrator (AC) support in it as well?
> > 
> > I ask this because most people only care about the client side and
> don't
> > think much about the server side you connect it to.
> > 
> > A while back, I cross compiled the AC functionality of rp-pppoe on
> > powerpc, added a freeradius client and demo'd a simple embedded AC on
> an
> > AMCC Taihu involving, a private LAN, freeradius running on a server
> > machine and a windows PC running its PPPoE client.  I was able to
> > advertise numerous "services" from the Taihu and have the PC be able
> to
> > select and connect to them using PPPoE sessions.
> > 
> > Regards,
> > 
> > Darcy
> 
> Hi.
> Hmm we might keep rp-pppoe for server-side functionality.
> Do you feel like migrating the package to the latest infrastructure and
> updating to the latest version?
> Regards.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH] Re:  Deprecate rp-pppoe package
  2010-08-23 14:52     ` [Buildroot] [PATCH] " Darcy Watkins
@ 2010-08-23 17:17       ` Darcy Watkins
  2010-08-23 18:26         ` Gustavo Zacarias
  0 siblings, 1 reply; 11+ messages in thread
From: Darcy Watkins @ 2010-08-23 17:17 UTC (permalink / raw)
  To: buildroot

Same as before except now uses the new autotools infrastructure in
buildroot (the patch to rp-pppoe.mk is different from last time).

Regards,

Darcy


On Mon, 2010-08-23 at 07:52 -0700, Darcy Watkins wrote:
> Hello,
> 
> Here are first pass patches for more current (and server side)
> rp-pppoe
> support in buildroot.  Summary of changes below...
> 
> 1.  The pppd.mk change for radrealms.so I sent to the list Aug 19th
> 2.  Update rp-pppoe package from version 3.8 to version 3.10
> 3.  Add the pppoe server binaries to the target (pppoe-server,
>     pppoe-relay and pppoe-sniff)
> 4.  Changes to tarball name, the upstream URL and no downloaded patch.
>      - The newer tarball was not on the mirror site that it was
>        pointing to by default so I pointed it to Roaring Pengiun's
>        site.  (Not sure how correct this is - perhaps it should
>        change back once the mirror site is updated).
> 5.  Buildroot rp-pppoe package patch carry forwards / updates
>      - add support to use the kernel plugin (new patch)
>      - update to use with pppd 2.4.5
>      - c/f the pack bitfields patch
>      - drop the autoreconf patch (already in rp-pppoe ver 3.10)
> 
> Note:  I am only including the changes and additions here.  If you
> apply
> this to your buildroot, you should manually remove the two
> package/rp-pppoe/rp-pppoe-3.8-* patches to get rid of them.  It didn't
> make sense for me to attach additional 100's of k bytes of patch that
> only serves to delete the two files.
> 
> I tried this on a PowerPC 405EP based target board with two Ethernet
> ports.  I setup eth0 as TCP/IP on LAN with a radius server and eth1 to
> act as an access concentrator (pppoe server) to a Windows PC.  I ran
> two
> instances of pppoe-server, one advertising a service called "local"
> set
> up to authenticate using the board's Linux login / password scheme,
> and
> the other advertising a service called "radius" to authenticate via
> the
> radius server connected via eth0.
> 
> I was able to "dial-up" connect the PC (using PPPoE) using either
> service, obtain IP address from pool range corresponding to each
> service, and ping through to the PC running the radius server.  I
> tried
> both user space pppoe deamon and the kernel plugin - both worked.
> 
--snip!--
> 
> Hopefully this can make it in time for 2010.08 release (if not then
> the
> 2010.11 release) and remove the deprecated status from the rp-pppoe
> package.
> 
> Note: This patch applies against the 2010.08-rc1 tarball but since
> nothing has changed in the rp-pppoe package lately, it will probably
> also work with the latest git as well.  (Don't forget to delete the
> old
> version 3.8 patch files yourself).

--snip!--


delete...
   package/rp-pppoe/rp-pppoe-3.8-001-configure-bitfield.patch
   package/rp-pppoe/rp-pppoe-3.8-002-autoreconf.patch

...then apply patch below...

Signed-off by: Darcy Watkins <dwatkins@tranzeo.com>

Index: buildroot-2010.08_powerpc/package/rp-pppoe/rp-pppoe-3.10-002-krn-plugin.patch
===================================================================
--- /dev/null
+++ buildroot-2010.08_powerpc/package/rp-pppoe/rp-pppoe-3.10-002-krn-plugin.patch
@@ -0,0 +1,34 @@
+--- rp-pppoe-3.10/src/configure.theorig  2008-02-05 13:57:15.000000000 -0800
++++ rp-pppoe-3.10/src/configure  2008-02-05 13:24:36.000000000 -0800
+@@ -6151,7 +6151,7 @@ modprobe ppp_synctty > /dev/null 2>&1
+ modprobe pppoe > /dev/null 2>&1
+ fi
+ if test "$cross_compiling" = yes; then
+-  ac_cv_linux_kernel_pppoe=no; $ECHO "cross-compiling, default: "
++  ac_cv_linux_kernel_pppoe=yes; $ECHO "cross-compiling, default: "
+ else
+   cat >conftest.$ac_ext <<_ACEOF
+ /* confdefs.h.  */
+--- rp-pppoe-3.10/src/pppoe-server.c.theorig     2006-04-02 07:29:42.000000000 -0700
++++ rp-pppoe-3.10/src/pppoe-server.c     2008-02-05 13:52:15.000000000 -0800
+@@ -20,6 +20,9 @@ static char const RCSID[] =
+ 
+ #include "config.h"
+ 
++/* Patched hack to make this cross compile */
++#define HAVE_LINUX_KERNEL_PPPOE 1
++
+ #if defined(HAVE_NETPACKET_PACKET_H) || defined(HAVE_LINUX_IF_PACKET_H)
+ #define _POSIX_SOURCE 1 /* For sigaction defines */
+ #endif
+--- rp-pppoe-3.10/src/Makefile.in.theorig	2008-02-06 06:59:11.000000000 -0800
++++ rp-pppoe-3.10/src/Makefile.in	2008-02-06 07:24:50.000000000 -0800
+@@ -48,7 +48,7 @@ PPPD_PATH=@PPPD@
+ @LIC_MAKEFILE_INCLUDE@
+ 
+ # Kernel-mode plugin gets installed here.
+-PLUGIN_DIR=/etc/ppp/plugins
++PLUGIN_DIR=/usr/lib/pppd/2.4.5
+ PLUGIN_PATH=$(PLUGIN_DIR)/rp-pppoe.so
+ 
+ # Configuration file paths
Index: buildroot-2010.08_powerpc/package/rp-pppoe/rp-pppoe.mk
===================================================================
--- buildroot-2010.08_powerpc.orig/package/rp-pppoe/rp-pppoe.mk
+++ buildroot-2010.08_powerpc/package/rp-pppoe/rp-pppoe.mk
@@ -3,78 +3,39 @@
 # rp-pppoe
 #
 #############################################################
-RP_PPPOE_VERSION:=3.8
-RP_PPPOE_SOURCE:=rp-pppoe_$(RP_PPPOE_VERSION).orig.tar.gz
-RP_PPPOE_PATCH:=rp-pppoe_$(RP_PPPOE_VERSION)-3.diff.gz
-RP_PPPOE_SITE:=$(BR2_DEBIAN_MIRROR)/debian/pool/main/r/rp-pppoe
-RP_PPPOE_TOPDIR:=$(BUILD_DIR)/rp-pppoe-$(RP_PPPOE_VERSION)
-RP_PPPOE_DIR:=$(BUILD_DIR)/rp-pppoe-$(RP_PPPOE_VERSION)/src
-RP_PPPOE_CAT:=$(ZCAT)
-RP_PPPOE_BINARY:=pppoe
-RP_PPPOE_TARGET_BINARY:=usr/sbin/pppoe
-
-$(DL_DIR)/$(RP_PPPOE_SOURCE):
-	$(call DOWNLOAD,$(RP_PPPOE_SITE),$(RP_PPPOE_SOURCE))
-
-ifneq ($(RP_PPPOE_PATCH),)
-RP_PPPOE_PATCH_FILE:=$(DL_DIR)/$(RP_PPPOE_PATCH)
-$(RP_PPPOE_PATCH_FILE):
-	$(call DOWNLOAD,$(RP_PPPOE_SITE),$(RP_PPPOE_PATCH))
-endif
-
-$(RP_PPPOE_TOPDIR)/.unpacked: $(DL_DIR)/$(RP_PPPOE_SOURCE) $(RP_PPPOE_PATCH_FILE)
-	$(RP_PPPOE_CAT) $(DL_DIR)/$(RP_PPPOE_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
-ifneq ($(RP_PPPOE_PATCH),)
-	(cd $(RP_PPPOE_TOPDIR) && $(RP_PPPOE_CAT) $(DL_DIR)/$(RP_PPPOE_PATCH) | patch -p1)
-	if [ -d $(RP_PPPOE_TOPDIR)/debian/patches ]; then \
-		toolchain/patch-kernel.sh $(RP_PPPOE_TOPDIR) $(RP_PPPOE_TOPDIR)/debian/patches \*.patch; \
-	fi
-endif
-	toolchain/patch-kernel.sh $(RP_PPPOE_TOPDIR) package/rp-pppoe/ rp-pppoe\*.patch
-	touch $@
-
-$(RP_PPPOE_TOPDIR)/.configured: $(RP_PPPOE_TOPDIR)/.unpacked
-	(cd $(RP_PPPOE_DIR); rm -rf config.cache; \
-		$(TARGET_CONFIGURE_OPTS) \
-		$(TARGET_CONFIGURE_ARGS) \
-		rpppoe_cv_pack_bitfields=normal \
-		./configure $(QUIET) \
-		--target=$(GNU_TARGET_NAME) \
-		--host=$(GNU_TARGET_NAME) \
-		--build=$(GNU_HOST_NAME) \
-		--prefix=/usr \
-		$(DISABLE_LARGEFILE) \
-		--disable-debugging \
-	)
-	touch $@
-
-$(RP_PPPOE_DIR)/$(RP_PPPOE_BINARY): $(RP_PPPOE_TOPDIR)/.configured
-	$(MAKE) -C $(RP_PPPOE_DIR)
-
-$(TARGET_DIR)/$(RP_PPPOE_TARGET_BINARY): $(RP_PPPOE_DIR)/$(RP_PPPOE_BINARY)
-	cp -dpf $(RP_PPPOE_DIR)/$(RP_PPPOE_BINARY) $@
-ifeq ($(BR2_HAVE_DOCUMENTATION),y)
-	mkdir -p $(TARGET_DIR)/usr/share/man/man8
-	$(INSTALL) -m 644 $(RP_PPPOE_TOPDIR)/man/pppoe.8 $(TARGET_DIR)/usr/share/man/man8/pppoe.8
-endif
-	$(STRIPCMD) $(STRIP_STRIP_ALL) $@
-
-rp-pppoe: $(TARGET_DIR)/$(RP_PPPOE_TARGET_BINARY)
-
-rp-pppoe-source: $(DL_DIR)/$(RP_PPPOE_SOURCE) $(RP_PPPOE_PATCH_FILE)
-
-rp-pppoe-clean:
-	-$(MAKE) -C $(RP_PPPOE_DIR) clean
-	rm -f $(TARGET_DIR)/$(RP_PPPOE_TARGET_BINARY) \
-		$(TARGET_DIR)/usr/share/man/man8/pppoe.8*
+RP_PPPOE_VERSION = 3.10
+RP_PPPOE_SOURCE = rp-pppoe-$(RP_PPPOE_VERSION).tar.gz
+RP_PPPOE_SITE = http://www.roaringpenguin.com/files/download
+RP_PPPOE_TARGET_BINS = pppoe pppoe-server pppoe-relay pppoe-sniff
+RP_PPPOE_MANPAGES = $(if $(BR2_HAVE_DOCUMENTATION),pppoe pppoe-server pppoe-relay pppoe-sniff)
+RP_PPPOE_SUBDIR = src
+
+RP_PPPOE_CONF_ENV = \
+	rpppoe_cv_pack_bitfields=normal \
+	PPPD_H=$(PPPD_DIR)/pppd/pppd.h \
+
+RP_PPPOE_CONF_OPT = \
+	--disable-debugging \
+
+define RP_PPPOE_INSTALL_TARGET_CMDS
+	for ff in $(RP_PPPOE_TARGET_BINS) ; do \
+		cp -dpf $(RP_PPPOE_SRCDIR)/$$ff $(TARGET_DIR)/usr/sbin/$$ff ; \
+		$(STRIPCMD) $(STRIP_STRIP_ALL) $(TARGET_DIR)/usr/sbin/$$ff ; \
+	done
+	if [ -n "$(RP_PPPOE_MANPAGES)" ] ; then mkdir -p $(TARGET_DIR)/usr/share/man/man8 ; fi
+	for ff in $(RP_PPPOE_MANPAGES) ; do \
+		$(INSTALL) -m 644 $(RP_PPPOE_DIR)/man/$$ff.8 $(TARGET_DIR)/usr/share/man/man8/$$ff.8 ; \
+	done
+endef
+
+define NETSNMP_UNINSTALL_TARGET_CMDS
+	for ff in $(RP_PPPOE_TARGET_BINS) ; do \
+		rm -f $(TARGET_DIR)/usr/sbin/$$ff ; \
+	done
+	for ff in $(RP_PPPOE_MANPAGES) ; do \
+		rm -f $(TARGET_DIR)/usr/share/man/man8/$$ff.8 ; \
+	done
+endef
+
+$(eval $(call AUTOTARGETS,package,rp-pppoe))
 
-rp-pppoe-dirclean:
-	rm -rf $(RP_PPPOE_TOPDIR)
-#############################################################
-#
-# Toplevel Makefile options
-#
-#############################################################
-ifeq ($(BR2_PACKAGE_RP_PPPOE),y)
-TARGETS+=rp-pppoe
-endif
Index: buildroot-2010.08_powerpc/package/rp-pppoe/Config.in
===================================================================
--- buildroot-2010.08_powerpc.orig/package/rp-pppoe/Config.in
+++ buildroot-2010.08_powerpc/package/rp-pppoe/Config.in
@@ -1,7 +1,11 @@
 config BR2_PACKAGE_RP_PPPOE
-	bool "pppoe"
-	depends on BR2_DEPRECATED
+	bool "rp-pppoe"
+	depends on BR2_PACKAGE_PPPD
 	help
 	  An implementation of the Point-to-point protocol over Ethernet.
+	  Has userspace client and server deamons.  You likely only need
+	  this package if you are implementing the pppoe server that will
+	  service other pppoe client devices.  Otherwise the normal client
+	  functionality already exists in the pppd package (and kernel).
 
 	  http://www.roaringpenguin.com/pppoe.html
Index: buildroot-2010.08_powerpc/package/pppd/pppd.mk
===================================================================
--- buildroot-2010.08_powerpc.orig/package/pppd/pppd.mk
+++ buildroot-2010.08_powerpc/package/pppd/pppd.mk
@@ -55,8 +55,8 @@ $(PPPD_TARGET_INSTALL_TARGET):
 		$(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/radattr.so
 	$(INSTALL) -D $(PPPD_DIR)/pppd/plugins/radius/radius.so \
 		$(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/radius.so
-	$(INSTALL) -D $(PPPD_DIR)/pppd/plugins/radius/radattr.so \
-		$(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/radattr.so
+	$(INSTALL) -D $(PPPD_DIR)/pppd/plugins/radius/radrealms.so \
+		$(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/radrealms.so
 	for m in $(PPPD_MANPAGES); do \
 		$(INSTALL) -m 644 -D $(PPPD_DIR)/$$m/$$m.8 \
 			$(TARGET_DIR)/usr/share/man/man8/$$m.8; \
Index: buildroot-2010.08_powerpc/package/rp-pppoe/rp-pppoe-3.10-001-configure-bitfield.patch
===================================================================
--- /dev/null
+++ buildroot-2010.08_powerpc/package/rp-pppoe/rp-pppoe-3.10-001-configure-bitfield.patch
@@ -0,0 +1,34 @@
+--- rp-pppoe-3.10.orig/src/configure.in	2006-04-02 16:29:42.000000000 +0200
++++ rp-pppoe-3.10/src/configure.in	2007-08-24 11:51:04.000000000 +0200
+@@ -231,6 +231,7 @@ esac
+ 
+ dnl Figure out packing order of structures
+ AC_MSG_CHECKING([packing order of bit fields])
++if test "x$rpppoe_cv_pack_bitfields" = "x" ; then
+ AC_TRY_RUN([
+ union foo {
+     struct bar {
+@@ -254,8 +255,8 @@ main(void)
+ 	return 2;
+     }
+ }], rpppoe_cv_pack_bitfields=normal, rpppoe_cv_pack_bitfields=rev,
+-$ECHO "no defaults for cross-compiling"; exit 0)
+-
++$ECHO "no defaults for cross-compiling")
++fi
+ if test "$rpppoe_cv_pack_bitfields" = "rev" ; then
+ 	AC_MSG_RESULT(reversed)
+ 	AC_DEFINE(PACK_BITFIELDS_REVERSED)
+--- rp-pppoe-3.10.orig/src/configure	2010-08-20 10:46:39.000000000 -0700
++++ rp-pppoe-3.10/src/configure	2010-08-20 11:02:16.000000000 -0700
+@@ -6272,7 +6272,9 @@ esac
+ { echo "$as_me:$LINENO: checking packing order of bit fields" >&5
+ echo $ECHO_N "checking packing order of bit fields... $ECHO_C" >&6; }
+ if test "$cross_compiling" = yes; then
+-  $ECHO "no defaults for cross-compiling"; exit 0
++if test "x$rpppoe_cv_pack_bitfields" = "x" ; then
++  $ECHO "no defaults for cross-compiling"
++fi
+ else
+   cat >conftest.$ac_ext <<_ACEOF
+ /* confdefs.h.  */

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH] Re:  Deprecate rp-pppoe package
  2010-08-23 17:17       ` Darcy Watkins
@ 2010-08-23 18:26         ` Gustavo Zacarias
  2010-08-23 20:14           ` Darcy Watkins
  0 siblings, 1 reply; 11+ messages in thread
From: Gustavo Zacarias @ 2010-08-23 18:26 UTC (permalink / raw)
  To: buildroot

On 08/23/2010 02:17 PM, Darcy Watkins wrote:

> Same as before except now uses the new autotools infrastructure in
> buildroot (the patch to rp-pppoe.mk is different from last time).
> 
> Regards,
> 
> Darcy

I still like my previously posted solution to pppd:
http://lists.busybox.net/pipermail/buildroot/2010-July/036269.html
It gives the option to install the radius plugins with the necessary
dictionary files and converts it to gentargets.
I'll give your rp-ppppoe update a spin later.
It's unlikely these changes will go in for 2010.08 since we're already
at release candidate stage, which makes it a nice chance to get things
right to the last bit for next release.
Regards.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH] Re:  Deprecate rp-pppoe package
  2010-08-23 18:26         ` Gustavo Zacarias
@ 2010-08-23 20:14           ` Darcy Watkins
  0 siblings, 0 replies; 11+ messages in thread
From: Darcy Watkins @ 2010-08-23 20:14 UTC (permalink / raw)
  To: buildroot

I notice that the missing radrealms.so is mentioned in your referenced
post.  I'd suggest at least getting the fix to pppd.mk included for the
2010.08 even though the rest is more likely to be held off.

I posted the fix (by itself) at:

http://lists.busybox.net/pipermail/buildroot/2010-August/036839.html

Setting up and running a pppoe server daemon requires a number of
specifically tailored config files.  I didn't include any of mine since
they are specific to my test setup on my desk (they have specific IP
addresses, realm names, user IDs, shared secrets, etc).

Regards,

Darcy


-----Original Message-----
From: Gustavo Zacarias [mailto:gustavo at zacarias.com.ar] 
Sent: Monday, August 23, 2010 11:26 AM
To: Darcy Watkins
Cc: buildroot
Subject: Re: [PATCH] Re: [Buildroot] Deprecate rp-pppoe package

On 08/23/2010 02:17 PM, Darcy Watkins wrote:

> Same as before except now uses the new autotools infrastructure in
> buildroot (the patch to rp-pppoe.mk is different from last time).
> 
> Regards,
> 
> Darcy

I still like my previously posted solution to pppd:
http://lists.busybox.net/pipermail/buildroot/2010-July/036269.html
It gives the option to install the radius plugins with the necessary
dictionary files and converts it to gentargets.
I'll give your rp-ppppoe update a spin later.
It's unlikely these changes will go in for 2010.08 since we're already
at release candidate stage, which makes it a nice chance to get things
right to the last bit for next release.
Regards.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] Deprecate rp-pppoe package
  2010-10-13 16:13 [Buildroot] " Darcy Watkins
  2010-10-13 20:09 ` Gustavo Zacarias
@ 2010-10-15 20:25 ` Gustavo Zacarias
  1 sibling, 0 replies; 11+ messages in thread
From: Gustavo Zacarias @ 2010-10-15 20:25 UTC (permalink / raw)
  To: buildroot

On 10/13/10 13:13, Darcy Watkins wrote:

> Hello,
> 
> I submitted a patch wrt this subject line / thread back in August.
> Essentially I updated the rp-pppoe package version (changed to
> autotools) and made sure that the PPPoE server side functionality works
> (on a powerpc target).
> 
> http://lists.busybox.net/pipermail/buildroot/2010-August/036907.html
> 
> http://lists.busybox.net/pipermail/buildroot/2010-July/036252.html
> 
> These changes were not included into buildroot-2010.08 because it was
> already at release candidate stage.  I don't see it committed / merged
> since either.  Will it make it in before 2010.11 hits release candidate
> stage?
> 
> 
> Regards,
> 
> Darcy

Hi Darcy.
Ok, managed to give it a spin on my powerpc rig.
My changes:

* RP_PPPOE_TARGETS_BIN and MANPAGES are basically the same, so merged.

* No need for RP_PPPOE_SOURCE if it uses the standard naming convention
(it does), so removed it.

* In INSTALL_TARGET_CMDS prefer $(INSTALL) over cp.

* NETSNMP_UNINSTALL? That should be RP_PPPOE_UNINSTALL :)

* In patch 002 (krn-plugin) you're hardcoding PLUGIN_DIR, i removed it
and just pass it to the package at build time (new RP_PPPOE_MAKE_OPTS)
based on pppd's package version. This is to avoid future breakage when
pppd changes version.

* Added RP_PPPOE_DEPENDENCIES = pppd, so that we build after pppd is
done, otherwise you may miss the pppd.h header.

* Cosmetic fixes.

Give it a spin, works for me.
Thanks and regards.
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: buildroot-rp-pppoe-3.10.patch
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20101015/e17c3916/attachment-0001.ksh>

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] Deprecate rp-pppoe package
  2010-10-13 16:13 [Buildroot] " Darcy Watkins
@ 2010-10-13 20:09 ` Gustavo Zacarias
  2010-10-15 20:25 ` Gustavo Zacarias
  1 sibling, 0 replies; 11+ messages in thread
From: Gustavo Zacarias @ 2010-10-13 20:09 UTC (permalink / raw)
  To: buildroot

On 10/13/10 13:13, Darcy Watkins wrote:

> Hello,
> 
> I submitted a patch wrt this subject line / thread back in August.
> Essentially I updated the rp-pppoe package version (changed to
> autotools) and made sure that the PPPoE server side functionality works
> (on a powerpc target).
> 
> http://lists.busybox.net/pipermail/buildroot/2010-August/036907.html
> 
> http://lists.busybox.net/pipermail/buildroot/2010-July/036252.html
> 
> These changes were not included into buildroot-2010.08 because it was
> already at release candidate stage.  I don't see it committed / merged
> since either.  Will it make it in before 2010.11 hits release candidate
> stage?
> 
> 
> Regards,
> 
> Darcy

Hi.
I'll be looking into it when i've got some time, probably next week.
It's on my TODO list :)
Regards.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] Deprecate rp-pppoe package
@ 2010-10-13 16:13 Darcy Watkins
  2010-10-13 20:09 ` Gustavo Zacarias
  2010-10-15 20:25 ` Gustavo Zacarias
  0 siblings, 2 replies; 11+ messages in thread
From: Darcy Watkins @ 2010-10-13 16:13 UTC (permalink / raw)
  To: buildroot

Hello,

I submitted a patch wrt this subject line / thread back in August.
Essentially I updated the rp-pppoe package version (changed to
autotools) and made sure that the PPPoE server side functionality works
(on a powerpc target).

http://lists.busybox.net/pipermail/buildroot/2010-August/036907.html

http://lists.busybox.net/pipermail/buildroot/2010-July/036252.html

These changes were not included into buildroot-2010.08 because it was
already at release candidate stage.  I don't see it committed / merged
since either.  Will it make it in before 2010.11 hits release candidate
stage?


Regards,

Darcy

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] Deprecate rp-pppoe package
@ 2010-06-01 19:51 Gustavo Zacarias
  0 siblings, 0 replies; 11+ messages in thread
From: Gustavo Zacarias @ 2010-06-01 19:51 UTC (permalink / raw)
  To: buildroot


Mark the rp-pppoe package as deprecated.
The rp-pppoe (pppoe) plugin has been included in the pppd package for
some time now.

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: buildroot-deprecate-rp-pppoe.patch
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20100601/1533e2f8/attachment.ksh>

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2010-10-15 20:25 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-07-06 17:08 [Buildroot] Deprecate rp-pppoe package Darcy L. Watkins
2010-07-20 18:47 ` Gustavo Zacarias
2010-07-20 19:44   ` Darcy Watkins
2010-08-23 14:52     ` [Buildroot] [PATCH] " Darcy Watkins
2010-08-23 17:17       ` Darcy Watkins
2010-08-23 18:26         ` Gustavo Zacarias
2010-08-23 20:14           ` Darcy Watkins
  -- strict thread matches above, loose matches on Subject: below --
2010-10-13 16:13 [Buildroot] " Darcy Watkins
2010-10-13 20:09 ` Gustavo Zacarias
2010-10-15 20:25 ` Gustavo Zacarias
2010-06-01 19:51 Gustavo Zacarias

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.