bc356cef82
Port Debians adaptive LCP echo patch to pppd, make it configurable with UCI and enable it by default. When adaptive LCP echo is enabled, LCP echo requests are only sent if the link is idle, this avoids the common situation where a congested PPP link (e.g. during torrenting) is falsely detected as disconnected because the LCP replies are not received in time. Also bump the copyright year in the Makefile, remove a redundant maintainer entry and fix the shell processing of the keepalive option when the two- value syntax is used. Signed-off-by: Jo-Philipp Wich <jow@openwrt.org> SVN-Revision: 43143
26 lines
993 B
Diff
26 lines
993 B
Diff
pppd: Cap MTU to the user configured value
|
|
|
|
This patchs caps the calculated MTU value in lcp.c to the user specified "mru"
|
|
option value. Without this patch pppd would advertise a different MTU value
|
|
compared to what is set on the local interface in some cases.
|
|
|
|
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
|
|
|
|
--- a/pppd/lcp.c
|
|
+++ b/pppd/lcp.c
|
|
@@ -1917,12 +1917,12 @@ lcp_up(f)
|
|
* the interface MTU is set to the lowest of that, the
|
|
* MTU we want to use, and our link MRU.
|
|
*/
|
|
- mtu = ho->neg_mru? ho->mru: PPP_MRU;
|
|
+ mtu = MIN(ho->neg_mru? ho->mru: PPP_MRU, ao->mru);
|
|
mru = go->neg_mru? MAX(wo->mru, go->mru): PPP_MRU;
|
|
#ifdef HAVE_MULTILINK
|
|
if (!(multilink && go->neg_mrru && ho->neg_mrru))
|
|
#endif /* HAVE_MULTILINK */
|
|
- netif_set_mtu(f->unit, MIN(MIN(mtu, mru), ao->mru));
|
|
+ netif_set_mtu(f->unit, MIN(mtu, mru));
|
|
ppp_send_config(f->unit, mtu,
|
|
(ho->neg_asyncmap? ho->asyncmap: 0xffffffff),
|
|
ho->neg_pcompression, ho->neg_accompression);
|