diff options
| -rw-r--r-- | drivers/net/ppp_generic.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/net/ppp_generic.c b/drivers/net/ppp_generic.c index 39659976a1ac..89294b43c4a9 100644 --- a/drivers/net/ppp_generic.c +++ b/drivers/net/ppp_generic.c | |||
| @@ -1285,6 +1285,11 @@ ppp_push(struct ppp *ppp) | |||
| 1285 | } | 1285 | } |
| 1286 | 1286 | ||
| 1287 | #ifdef CONFIG_PPP_MULTILINK | 1287 | #ifdef CONFIG_PPP_MULTILINK |
| 1288 | static bool mp_protocol_compress __read_mostly = true; | ||
| 1289 | module_param(mp_protocol_compress, bool, S_IRUGO | S_IWUSR); | ||
| 1290 | MODULE_PARM_DESC(mp_protocol_compress, | ||
| 1291 | "compress protocol id in multilink fragments"); | ||
| 1292 | |||
| 1288 | /* | 1293 | /* |
| 1289 | * Divide a packet to be transmitted into fragments and | 1294 | * Divide a packet to be transmitted into fragments and |
| 1290 | * send them out the individual links. | 1295 | * send them out the individual links. |
| @@ -1347,10 +1352,10 @@ static int ppp_mp_explode(struct ppp *ppp, struct sk_buff *skb) | |||
| 1347 | if (nfree == 0 || nfree < navail / 2) | 1352 | if (nfree == 0 || nfree < navail / 2) |
| 1348 | return 0; /* can't take now, leave it in xmit_pending */ | 1353 | return 0; /* can't take now, leave it in xmit_pending */ |
| 1349 | 1354 | ||
| 1350 | /* Do protocol field compression (XXX this should be optional) */ | 1355 | /* Do protocol field compression */ |
| 1351 | p = skb->data; | 1356 | p = skb->data; |
| 1352 | len = skb->len; | 1357 | len = skb->len; |
| 1353 | if (*p == 0) { | 1358 | if (*p == 0 && mp_protocol_compress) { |
| 1354 | ++p; | 1359 | ++p; |
| 1355 | --len; | 1360 | --len; |
| 1356 | } | 1361 | } |
