aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--package/ppp/Makefile12
-rwxr-xr-xpackage/ppp/ipkg/ppp-pppoe-plugin/etc/init.d/S50pppoe10
2 files changed, 13 insertions, 9 deletions
diff --git a/package/ppp/Makefile b/package/ppp/Makefile
index 621b9cdca8..046d47beb0 100644
--- a/package/ppp/Makefile
+++ b/package/ppp/Makefile
@@ -116,10 +116,10 @@ $(IPKG_STATE_DIR)/info/ppp.list: $(PKG_PPP)
$(PKG_PPP_PPPOE_PLUGIN): $(PKG_PPP)
$(SCRIPT_DIR)/make-ipkg-dir.sh $(I_PPP_PPPOE_PLUGIN) control/ppp-pppoe-plugin.control $(PKG_VERSION)-$(PKG_RELEASE) $(ARCH)
cp -af ./ipkg/ppp-pppoe-plugin/* $(I_PPP_PPPOE_PLUGIN)
- mkdir -p $(I_PPP_PPPOE_PLUGIN)/usr/lib/pppd/rp-pppoe
+ mkdir -p $(I_PPP_PPPOE_PLUGIN)/usr/lib/pppd/$(PKG_VERSION)
cp -af $(PKG_BUILD_DIR)/pppd/plugins/rp-pppoe/rp-pppoe.so \
- $(I_PPP_PPPOE_PLUGIN)/usr/lib/pppd/rp-pppoe
- $(STRIP) $(I_PPP_PPPOE_PLUGIN)/usr/lib/pppd/*/*.so
+ $(I_PPP_PPPOE_PLUGIN)/usr/lib/pppd/$(PKG_VERSION)
+ $(STRIP) $(I_PPP_PPPOE_PLUGIN)/usr/lib/pppd/$(PKG_VERSION)/*.so
mkdir -p $(I_PPP_PPPOE_PLUGIN)/$(MODULES_SUBDIR)
cp $(MODULES_DIR)/kernel/drivers/net/pppo*.o $(I_PPP_PPPOE_PLUGIN)/$(MODULES_SUBDIR)
find $(I_PPP_PPPOE_PLUGIN) -name CVS | xargs rm -rf
@@ -130,10 +130,10 @@ $(IPKG_STATE_DIR)/info/ppp-pppoe-plugin.list: $(PKG_PPP_PPPOE_PLUGIN)
$(PKG_PPP_RADIUS_PLUGIN): $(PKG_PPP)
$(SCRIPT_DIR)/make-ipkg-dir.sh $(I_PPP_RADIUS_PLUGIN) control/ppp-radius-plugin.control $(PKG_VERSION)-$(PKG_RELEASE) $(ARCH)
- mkdir -p $(I_PPP_RADIUS_PLUGIN)/usr/lib/pppd/radius
+ mkdir -p $(I_PPP_RADIUS_PLUGIN)/usr/lib/pppd/$(PKG_VERSION)
cp -af $(PKG_BUILD_DIR)/pppd/plugins/radius/radius.so \
- $(I_PPP_RADIUS_PLUGIN)/usr/lib/pppd/radius/
- $(STRIP) $(I_PPP_RADIUS_PLUGIN)/usr/lib/pppd/*/*.so
+ $(I_PPP_RADIUS_PLUGIN)/usr/lib/pppd/$(PKG_VERSION)
+ $(STRIP) $(I_PPP_RADIUS_PLUGIN)/usr/lib/pppd/$(PKG_VERSION)/*.so
find $(I_PPP_RADIUS_PLUGIN) -name CVS | xargs rm -rf
$(IPKG_BUILD) $(I_PPP_RADIUS_PLUGIN) $(PACKAGE_DIR)
diff --git a/package/ppp/ipkg/ppp-pppoe-plugin/etc/init.d/S50pppoe b/package/ppp/ipkg/ppp-pppoe-plugin/etc/init.d/S50pppoe
index 52e1d79c41..5d6ca5f3a9 100755
--- a/package/ppp/ipkg/ppp-pppoe-plugin/etc/init.d/S50pppoe
+++ b/package/ppp/ipkg/ppp-pppoe-plugin/etc/init.d/S50pppoe
@@ -6,7 +6,7 @@ WAN_PROTO=$(nvram get wan_proto)
[ "$WAN_PROTO" = "pppoe" ] || exit 0
for module in slhc ppp_generic pppox pppoe; do
- insmod $module 2>/dev/null >/dev/null
+ /sbin/insmod $module 2>/dev/null >/dev/null
done
IFNAME=$(nvram get pppoe_ifname)
@@ -19,5 +19,9 @@ IDLETIME=${IDLETIME:+idle $IDLETIME}
MTU=$(nvram get ppp_mtu)
ifconfig $IFNAME up
-echo -e "plugin /usr/lib/pppd/rp-pppoe/rp-pppoe.so\nconnect /bin/true\nusepeerdns\ndefaultroute\nuser \"$USERNAME\"\npassword \"$PASSWORD\"\nmtu $MTU\n$IDLETIME\n$REDIAL" > /tmp/.pppoe-data
-/usr/sbin/pppd file /tmp/.pppoe-data $IFNAME
+echo -e "plugin rp-pppoe.so\nconnect /bin/true\nusepeerdns\ndefaultroute\nuser \"$USERNAME\"\npassword \"$PASSWORD\"\nmtu $MTU\n$IDLETIME\n$REDIAL" > /tmp/.pppoe-data
+(
+ while true; do
+ /usr/sbin/pppd nodetach file /tmp/.pppoe-data $IFNAME
+ done
+) &