0d004db Revert "pppd: Include time.h before using time_t" e400854 pppdump: Eliminate printf format warning by using %zd 7f2f0de pppd: Refactor setjmp/longjmp with pipe pair in event wait loop 4e71317 make: Avoid using host include for cross-compiling 3202f89 pppoe: Remove the use of cdefs d8e8d7a pppd: Remove unused rcsid variables 486f854 pppd: Fix GLIBC version test for non-glibc toolchains b6cd558 pppd: Include time.h before using time_t ef8ec11 radius: Fix compiler warning f6330ec magic: Remove K&R style of arguments 347904e Add Submitting-patches.md Remove patches 130-no_cdefs_h.patch, 131-missing_prototype_macro.patch, 132-fix_linux_includes.patch as fixed upstream Refresh patches Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
25 lines
988 B
Diff
25 lines
988 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 <jo@mein.io>
|
|
|
|
--- a/pppd/lcp.c
|
|
+++ b/pppd/lcp.c
|
|
@@ -1916,12 +1916,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);
|