move ppp plugins default search path and (hopefully) fix pppoe reconnect issue
authorFelix Fietkau <nbd@openwrt.org>
Thu, 31 Mar 2005 23:32:08 +0000 (23:32 +0000)
committerFelix Fietkau <nbd@openwrt.org>
Thu, 31 Mar 2005 23:32:08 +0000 (23:32 +0000)
SVN-Revision: 497

openwrt/package/ppp/Makefile
openwrt/package/ppp/ipkg/ppp-pppoe-plugin/etc/init.d/S50pppoe

index 621b9cdca89a6e93f1a706056ceeb024a5c00936..046d47beb0ab7be0bb7a30c9526b9756110ff1be 100644 (file)
@@ -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)
 
index 52e1d79c41eaa9d98d8a0c102645cc718257c060..5d6ca5f3a9d7a099b9e041ca958e81decae3b395 100755 (executable)
@@ -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
+) &