From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-by2nam01on0109.outbound.protection.outlook.com ([104.47.34.109]:29568 "EHLO NAM01-BY2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1032112AbeCAP00 (ORCPT ); Thu, 1 Mar 2018 10:26:26 -0500 From: Sasha Levin To: "stable@vger.kernel.org" , "stable-commits@vger.kernel.org" CC: Eric Dumazet , "David S . Miller" , Sasha Levin Subject: [added to the 4.1 stable tree] ipv4: igmp: guard against silly MTU values Date: Thu, 1 Mar 2018 15:23:20 +0000 Message-ID: <20180301152116.1486-84-alexander.levin@microsoft.com> References: <20180301152116.1486-1-alexander.levin@microsoft.com> In-Reply-To: <20180301152116.1486-1-alexander.levin@microsoft.com> Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 Sender: stable-owner@vger.kernel.org List-ID: RnJvbTogRXJpYyBEdW1hemV0IDxlZHVtYXpldEBnb29nbGUuY29tPg0KDQpUaGlzIHBhdGNoIGhh cyBiZWVuIGFkZGVkIHRvIHRoZSA0LjEgc3RhYmxlIHRyZWUuIElmIHlvdSBoYXZlIGFueQ0Kb2Jq ZWN0aW9ucywgcGxlYXNlIGxldCB1cyBrbm93Lg0KDQo9PT09PT09PT09PT09PT0NCg0KWyBVcHN0 cmVhbSBjb21taXQgYjU0NzYwMjJiYmFkYTM3NjQ2MDkzNjhmMDMzMjljYTI4NzUyOGRjOCBdDQoN CklQdjQgc3RhY2sgcmVhY3RzIHRvIGNoYW5nZXMgdG8gc21hbGwgTVRVLCBieSBkaXNhYmxpbmcg aXRzZWxmIHVuZGVyDQpSVE5MLg0KDQpCdXQgdGhlcmUgaXMgYSB3aW5kb3cgd2hlcmUgdGhyZWFk cyBub3QgdXNpbmcgUlROTCBjYW4gc2VlIGEgd3JvbmcNCmRldmljZSBtdHUuIFRoaXMgY2FuIGxl YWQgdG8gc3VycHJpc2VzLCBpbiBpZ21wIGNvZGUgd2hlcmUgaXQgaXMNCmFzc3VtZWQgdGhlIG10 dSBpcyBzdWl0YWJsZS4NCg0KRml4IHRoaXMgYnkgcmVhZGluZyBkZXZpY2UgbXR1IG9uY2UgYW5k IGNoZWNraW5nIElQdjQgbWluaW1hbCBNVFUuDQoNClRoaXMgcGF0Y2ggYWRkcyBtaXNzaW5nIElQ VjRfTUlOX01UVSBkZWZpbmUsIHRvIG5vdCBhYnVzZQ0KRVRIX01JTl9NVFXCoGFueW1vcmUuDQoN ClNpZ25lZC1vZmYtYnk6IEVyaWMgRHVtYXpldCA8ZWR1bWF6ZXRAZ29vZ2xlLmNvbT4NClNpZ25l ZC1vZmYtYnk6IERhdmlkIFMuIE1pbGxlciA8ZGF2ZW1AZGF2ZW1sb2Z0Lm5ldD4NClNpZ25lZC1v ZmYtYnk6IFNhc2hhIExldmluIDxhbGV4YW5kZXIubGV2aW5AbWljcm9zb2Z0LmNvbT4NCi0tLQ0K IGluY2x1ZGUvbmV0L2lwLmggICAgIHwgIDIgKysNCiBuZXQvaXB2NC9kZXZpbmV0LmMgICB8ICAy ICstDQogbmV0L2lwdjQvaWdtcC5jICAgICAgfCAyNCArKysrKysrKysrKysrKystLS0tLS0tLS0N CiBuZXQvaXB2NC9pcF90dW5uZWwuYyB8ICA0ICsrLS0NCiA0IGZpbGVzIGNoYW5nZWQsIDIwIGlu c2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQ0KDQpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9uZXQv aXAuaCBiL2luY2x1ZGUvbmV0L2lwLmgNCmluZGV4IDExN2JkZTkzOTk1ZC4uODBiODQ5Y2FkYzM1 IDEwMDY0NA0KLS0tIGEvaW5jbHVkZS9uZXQvaXAuaA0KKysrIGIvaW5jbHVkZS9uZXQvaXAuaA0K QEAgLTMzLDYgKzMzLDggQEANCiAjaW5jbHVkZSA8bmV0L2Zsb3cuaD4NCiAjaW5jbHVkZSA8bmV0 L2Zsb3dfa2V5cy5oPg0KIA0KKyNkZWZpbmUgSVBWNF9NSU5fTVRVCQk2OAkJCS8qIFJGQyA3OTEg Ki8NCisNCiBzdHJ1Y3Qgc29jazsNCiANCiBzdHJ1Y3QgaW5ldF9za2JfcGFybSB7DQpkaWZmIC0t Z2l0IGEvbmV0L2lwdjQvZGV2aW5ldC5jIGIvbmV0L2lwdjQvZGV2aW5ldC5jDQppbmRleCBhNTcw NTZkODdhNDMuLjFkMmZiYTRhZWViMiAxMDA2NDQNCi0tLSBhL25ldC9pcHY0L2RldmluZXQuYw0K KysrIGIvbmV0L2lwdjQvZGV2aW5ldC5jDQpAQCAtMTM1OSw3ICsxMzU5LDcgQEAgc3RhdGljIHZv aWQgaW5ldGRldl9jaGFuZ2VuYW1lKHN0cnVjdCBuZXRfZGV2aWNlICpkZXYsIHN0cnVjdCBpbl9k ZXZpY2UgKmluX2RldikNCiANCiBzdGF0aWMgYm9vbCBpbmV0ZGV2X3ZhbGlkX210dSh1bnNpZ25l ZCBpbnQgbXR1KQ0KIHsNCi0JcmV0dXJuIG10dSA+PSA2ODsNCisJcmV0dXJuIG10dSA+PSBJUFY0 X01JTl9NVFU7DQogfQ0KIA0KIHN0YXRpYyB2b2lkIGluZXRkZXZfc2VuZF9ncmF0dWl0b3VzX2Fy cChzdHJ1Y3QgbmV0X2RldmljZSAqZGV2LA0KZGlmZiAtLWdpdCBhL25ldC9pcHY0L2lnbXAuYyBi L25ldC9pcHY0L2lnbXAuYw0KaW5kZXggZTJkM2Q2MjI5N2VjLi45ZTZmMjljOTRhMGQgMTAwNjQ0 DQotLS0gYS9uZXQvaXB2NC9pZ21wLmMNCisrKyBiL25ldC9pcHY0L2lnbXAuYw0KQEAgLTQwMiwx NiArNDAyLDE3IEBAIHN0YXRpYyBpbnQgZ3JlY19zaXplKHN0cnVjdCBpcF9tY19saXN0ICpwbWMs IGludCB0eXBlLCBpbnQgZ2RlbCwgaW50IHNkZWwpDQogfQ0KIA0KIHN0YXRpYyBzdHJ1Y3Qgc2tf YnVmZiAqYWRkX2dyaGVhZChzdHJ1Y3Qgc2tfYnVmZiAqc2tiLCBzdHJ1Y3QgaXBfbWNfbGlzdCAq cG1jLA0KLQlpbnQgdHlwZSwgc3RydWN0IGlnbXB2M19ncmVjICoqcHBncikNCisJaW50IHR5cGUs IHN0cnVjdCBpZ21wdjNfZ3JlYyAqKnBwZ3IsIHVuc2lnbmVkIGludCBtdHUpDQogew0KIAlzdHJ1 Y3QgbmV0X2RldmljZSAqZGV2ID0gcG1jLT5pbnRlcmZhY2UtPmRldjsNCiAJc3RydWN0IGlnbXB2 M19yZXBvcnQgKnBpaDsNCiAJc3RydWN0IGlnbXB2M19ncmVjICpwZ3I7DQogDQotCWlmICghc2ti KQ0KLQkJc2tiID0gaWdtcHYzX25ld3BhY2soZGV2LCBkZXYtPm10dSk7DQotCWlmICghc2tiKQ0K LQkJcmV0dXJuIE5VTEw7DQorCWlmICghc2tiKSB7DQorCQlza2IgPSBpZ21wdjNfbmV3cGFjayhk ZXYsIG10dSk7DQorCQlpZiAoIXNrYikNCisJCQlyZXR1cm4gTlVMTDsNCisJfQ0KIAlwZ3IgPSAo c3RydWN0IGlnbXB2M19ncmVjICopc2tiX3B1dChza2IsIHNpemVvZihzdHJ1Y3QgaWdtcHYzX2dy ZWMpKTsNCiAJcGdyLT5ncmVjX3R5cGUgPSB0eXBlOw0KIAlwZ3ItPmdyZWNfYXV4d29yZHMgPSAw Ow0KQEAgLTQzMywxMCArNDM0LDE1IEBAIHN0YXRpYyBzdHJ1Y3Qgc2tfYnVmZiAqYWRkX2dyZWMo c3RydWN0IHNrX2J1ZmYgKnNrYiwgc3RydWN0IGlwX21jX2xpc3QgKnBtYywNCiAJc3RydWN0IGln bXB2M19ncmVjICpwZ3IgPSBOVUxMOw0KIAlzdHJ1Y3QgaXBfc2ZfbGlzdCAqcHNmLCAqcHNmX25l eHQsICpwc2ZfcHJldiwgKipwc2ZfbGlzdDsNCiAJaW50IHNjb3VudCwgc3RvdGFsLCBmaXJzdCwg aXNxdWVyeSwgdHJ1bmNhdGU7DQorCXVuc2lnbmVkIGludCBtdHU7DQogDQogCWlmIChwbWMtPm11 bHRpYWRkciA9PSBJR01QX0FMTF9IT1NUUykNCiAJCXJldHVybiBza2I7DQogDQorCW10dSA9IFJF QURfT05DRShkZXYtPm10dSk7DQorCWlmIChtdHUgPCBJUFY0X01JTl9NVFUpDQorCQlyZXR1cm4g c2tiOw0KKw0KIAlpc3F1ZXJ5ID0gdHlwZSA9PSBJR01QVjNfTU9ERV9JU19JTkNMVURFIHx8DQog CQkgIHR5cGUgPT0gSUdNUFYzX01PREVfSVNfRVhDTFVERTsNCiAJdHJ1bmNhdGUgPSB0eXBlID09 IElHTVBWM19NT0RFX0lTX0VYQ0xVREUgfHwNCkBAIC00NTcsNyArNDYzLDcgQEAgc3RhdGljIHN0 cnVjdCBza19idWZmICphZGRfZ3JlYyhzdHJ1Y3Qgc2tfYnVmZiAqc2tiLCBzdHJ1Y3QgaXBfbWNf bGlzdCAqcG1jLA0KIAkJICAgIEFWQUlMQUJMRShza2IpIDwgZ3JlY19zaXplKHBtYywgdHlwZSwg Z2RlbGV0ZWQsIHNkZWxldGVkKSkgew0KIAkJCWlmIChza2IpDQogCQkJCWlnbXB2M19zZW5kcGFj ayhza2IpOw0KLQkJCXNrYiA9IGlnbXB2M19uZXdwYWNrKGRldiwgZGV2LT5tdHUpOw0KKwkJCXNr YiA9IGlnbXB2M19uZXdwYWNrKGRldiwgbXR1KTsNCiAJCX0NCiAJfQ0KIAlmaXJzdCA9IDE7DQpA QCAtNDg0LDEyICs0OTAsMTIgQEAgc3RhdGljIHN0cnVjdCBza19idWZmICphZGRfZ3JlYyhzdHJ1 Y3Qgc2tfYnVmZiAqc2tiLCBzdHJ1Y3QgaXBfbWNfbGlzdCAqcG1jLA0KIAkJCQlwZ3ItPmdyZWNf bnNyY3MgPSBodG9ucyhzY291bnQpOw0KIAkJCWlmIChza2IpDQogCQkJCWlnbXB2M19zZW5kcGFj ayhza2IpOw0KLQkJCXNrYiA9IGlnbXB2M19uZXdwYWNrKGRldiwgZGV2LT5tdHUpOw0KKwkJCXNr YiA9IGlnbXB2M19uZXdwYWNrKGRldiwgbXR1KTsNCiAJCQlmaXJzdCA9IDE7DQogCQkJc2NvdW50 ID0gMDsNCiAJCX0NCiAJCWlmIChmaXJzdCkgew0KLQkJCXNrYiA9IGFkZF9ncmhlYWQoc2tiLCBw bWMsIHR5cGUsICZwZ3IpOw0KKwkJCXNrYiA9IGFkZF9ncmhlYWQoc2tiLCBwbWMsIHR5cGUsICZw Z3IsIG10dSk7DQogCQkJZmlyc3QgPSAwOw0KIAkJfQ0KIAkJaWYgKCFza2IpDQpAQCAtNTIzLDcg KzUyOSw3IEBAIHN0YXRpYyBzdHJ1Y3Qgc2tfYnVmZiAqYWRkX2dyZWMoc3RydWN0IHNrX2J1ZmYg KnNrYiwgc3RydWN0IGlwX21jX2xpc3QgKnBtYywNCiAJCQkJaWdtcHYzX3NlbmRwYWNrKHNrYik7 DQogCQkJCXNrYiA9IE5VTEw7IC8qIGFkZF9ncmhlYWQgd2lsbCBnZXQgYSBuZXcgb25lICovDQog CQkJfQ0KLQkJCXNrYiA9IGFkZF9ncmhlYWQoc2tiLCBwbWMsIHR5cGUsICZwZ3IpOw0KKwkJCXNr YiA9IGFkZF9ncmhlYWQoc2tiLCBwbWMsIHR5cGUsICZwZ3IsIG10dSk7DQogCQl9DQogCX0NCiAJ aWYgKHBncikNCmRpZmYgLS1naXQgYS9uZXQvaXB2NC9pcF90dW5uZWwuYyBiL25ldC9pcHY0L2lw X3R1bm5lbC5jDQppbmRleCAzNTA4MGE3MDhiNTkuLjE2OWJmN2QxZDhjYSAxMDA2NDQNCi0tLSBh L25ldC9pcHY0L2lwX3R1bm5lbC5jDQorKysgYi9uZXQvaXB2NC9pcF90dW5uZWwuYw0KQEAgLTM5 Myw4ICszOTMsOCBAQCBzdGF0aWMgaW50IGlwX3R1bm5lbF9iaW5kX2RldihzdHJ1Y3QgbmV0X2Rl dmljZSAqZGV2KQ0KIAlkZXYtPm5lZWRlZF9oZWFkcm9vbSA9IHRfaGxlbiArIGhsZW47DQogCW10 dSAtPSAoZGV2LT5oYXJkX2hlYWRlcl9sZW4gKyB0X2hsZW4pOw0KIA0KLQlpZiAobXR1IDwgNjgp DQotCQltdHUgPSA2ODsNCisJaWYgKG10dSA8IElQVjRfTUlOX01UVSkNCisJCW10dSA9IElQVjRf TUlOX01UVTsNCiANCiAJcmV0dXJuIG10dTsNCiB9DQotLSANCjIuMTQuMQ0K