2009-05-21 13:49:21 +03:00
|
|
|
--- a/pppd/plugins/pppoatm/pppoatm.c
|
|
|
|
+++ b/pppd/plugins/pppoatm/pppoatm.c
|
|
|
|
@@ -179,8 +179,11 @@ static void send_config_pppoa(int mtu,
|
2009-05-21 01:36:38 +03:00
|
|
|
int sock;
|
|
|
|
struct ifreq ifr;
|
|
|
|
|
|
|
|
- if (mtu > pppoatm_max_mtu)
|
|
|
|
- error("Couldn't increase MTU to %d", mtu);
|
|
|
|
+ if (pppoatm_max_mtu && mtu > pppoatm_max_mtu) {
|
|
|
|
+ warn("Couldn't increase MTU to %d. Using %d",
|
|
|
|
+ mtu, pppoatm_max_mtu);
|
|
|
|
+ mtu = pppoatm_max_mtu;
|
|
|
|
+ }
|
|
|
|
|
|
|
|
sock = socket(AF_INET, SOCK_DGRAM, 0);
|
|
|
|
if (sock < 0)
|
2009-05-21 13:49:21 +03:00
|
|
|
@@ -198,8 +201,11 @@ static void recv_config_pppoa(int mru,
|
2009-05-21 01:36:38 +03:00
|
|
|
int pcomp,
|
|
|
|
int accomp)
|
|
|
|
{
|
|
|
|
- if (mru > pppoatm_max_mru)
|
|
|
|
- error("Couldn't increase MRU to %d", mru);
|
|
|
|
+ if (pppoatm_max_mru && mru > pppoatm_max_mru) {
|
|
|
|
+ warn("Couldn't increase MRU to %d. Using %d",
|
|
|
|
+ mru, pppoatm_max_mru);
|
|
|
|
+ mru = pppoatm_max_mru;
|
|
|
|
+ }
|
|
|
|
}
|
|
|
|
|
|
|
|
void plugin_init(void)
|