From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Anders K. Pedersen | Cohaesio" Subject: [PATCH nf-next 4/5] netfilter: nft: rt nexthop for IPv6 family Date: Sun, 16 Oct 2016 13:45:02 +0000 Message-ID: <1476625502.1038.10.camel@cohaesio.com> References: <1476625229.1038.3.camel@cohaesio.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 To: "netfilter-devel@vger.kernel.org" , "pablo@netfilter.org" Return-path: Received: from bender.cohaesio.com ([212.97.128.130]:35296 "EHLO mail.cohaesio.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754610AbcJPNpj (ORCPT ); Sun, 16 Oct 2016 09:45:39 -0400 In-Reply-To: <1476625229.1038.3.camel@cohaesio.com> Content-Language: en-US Content-ID: <46E63780CE5D234D95D5B58D7F386999@surftown.com> Sender: netfilter-devel-owner@vger.kernel.org List-ID: RnJvbTogQW5kZXJzIEsuIFBlZGVyc2VuIDxha3BAY29oYWVzaW8uY29tPg0KDQpBZGQgbmZ0YWJs ZXMgSVB2NiBmYW1pbHkgc3VwcG9ydCBmb3IgYW4gInJ0IGlwNiBuZXh0aG9wIiBleHByZXNzaW9u DQphbGxvd2luZyB1c2FnZSBvZiB0aGUgcm91dGluZyBuZXh0aG9wIChpLmUuIHRoZSBkaXJlY3Rs eSBjb25uZWN0ZWQgSVANCmFkZHJlc3MgdGhhdCBhbiBvdXRnb2luZyBwYWNrZXQgaXMgc2VudCB0 bykgZm9yIG1hdGNoaW5nIG9yIGFjY291bnRpbmcsIGVnLg0KDQogIyBuZnQgYWRkIHJ1bGUgaXA2 IGZpbHRlciBwb3N0cm91dGluZyBcDQoJaXA2IGRhZGRyIGZkMDE6Oi8xNiBydCBpcDYgbmV4dGhv cCAhPSBmZDAwOjoxIGRyb3ANCg0KVGhpcyB3aWxsIGRyb3AgYW55IHRyYWZmaWMgdG8gZmQwMTo6 LzE2IHRoYXQgaXMgbm90IHJvdXRlZCB2aWEgZmQwMDo6MS4NCg0KICMgbmZ0IGFkZCBydWxlIGlw NiBmaWx0ZXIgcG9zdHJvdXRpbmcgXA0KCWZsb3cgdGFibGUgYWNjdCB7IHJ0IGlwNiBuZXh0aG9w IHRpbWVvdXQgNjAwcyBjb3VudGVyIH0NCg0KVGhpcyBydWxlIGNvdW50cyBvdXRnb2luZyB0cmFm ZmljIHBlciBuZXh0aG9wLiBOb3RlIHRoYXQgdGhlIHRpbWVvdXQNCnJlbGVhc2VzIGFuIGVudHJ5 IGlmIG5vIHRyYWZmaWMgaXMgc2VlbiBmb3IgdGhpcyBuZXh0aG9wIHdpdGhpbiAxMCBtaW51dGVz Lg0KDQpTaWduZWQtb2ZmLWJ5OiBBbmRlcnMgSy4gUGVkZXJzZW4gPGFrcEBjb2hhZXNpby5jb20+ DQotLS0NCiBuZXQvaXB2Ni9uZXRmaWx0ZXIvS2NvbmZpZyAgICAgICAgICAgICAgIHwgICA0ICsN CiBuZXQvaXB2Ni9uZXRmaWx0ZXIvTWFrZWZpbGUgICAgICAgICAgICAgIHwgICAxICsNCiBuZXQv aXB2Ni9uZXRmaWx0ZXIvbmZ0X3J0X2lwdjYuYyAgICAgICAgIHwgMTE4ICsrKysrKysrKysrKysr KysrKysrKysrKw0KIDMgZmlsZXMgY2hhbmdlZCwgMTIzIGluc2VydGlvbnMoKykNCg0KZGlmZiAt LWdpdCBhL25ldC9pcHY2L25ldGZpbHRlci9LY29uZmlnIGIvbmV0L2lwdjYvbmV0ZmlsdGVyL0tj b25maWcNCi0tLSBhL25ldC9pcHY2L25ldGZpbHRlci9LY29uZmlnDQorKysgYi9uZXQvaXB2Ni9u ZXRmaWx0ZXIvS2NvbmZpZw0KQEAgLTQyLDYgKzQyLDEwIEBAIGNvbmZpZyBORlRfQ0hBSU5fUk9V VEVfSVBWNg0KIAkgIGZpZWxkcyBzdWNoIGFzIHRoZSBzb3VyY2UsIGRlc3RpbmF0aW9uLCBmbG93 bGFiZWwsIGhvcC1saW1pdCBhbmQNCiAJICB0aGUgcGFja2V0IG1hcmsuDQogDQorY29uZmlnIE5G VF9SVF9JUFY2DQorCWRlZmF1bHQgTkZUX1JUDQorCXRyaXN0YXRlDQorDQogY29uZmlnIE5GVF9S RUpFQ1RfSVBWNg0KIAlzZWxlY3QgTkZfUkVKRUNUX0lQVjYNCiAJZGVmYXVsdCBORlRfUkVKRUNU DQpkaWZmIC0tZ2l0IGEvbmV0L2lwdjYvbmV0ZmlsdGVyL01ha2VmaWxlIGIvbmV0L2lwdjYvbmV0 ZmlsdGVyL01ha2VmaWxlDQotLS0gYS9uZXQvaXB2Ni9uZXRmaWx0ZXIvTWFrZWZpbGUNCisrKyBi L25ldC9pcHY2L25ldGZpbHRlci9NYWtlZmlsZQ0KQEAgLTM2LDYgKzM2LDcgQEAgb2JqLSQoQ09O RklHX05GX0RVUF9JUFY2KSArPSBuZl9kdXBfaXB2Ni5vDQogb2JqLSQoQ09ORklHX05GX1RBQkxF U19JUFY2KSArPSBuZl90YWJsZXNfaXB2Ni5vDQogb2JqLSQoQ09ORklHX05GVF9DSEFJTl9ST1VU RV9JUFY2KSArPSBuZnRfY2hhaW5fcm91dGVfaXB2Ni5vDQogb2JqLSQoQ09ORklHX05GVF9DSEFJ Tl9OQVRfSVBWNikgKz0gbmZ0X2NoYWluX25hdF9pcHY2Lm8NCitvYmotJChDT05GSUdfTkZUX1JU X0lQVjYpICs9IG5mdF9ydF9pcHY2Lm8NCiBvYmotJChDT05GSUdfTkZUX1JFSkVDVF9JUFY2KSAr PSBuZnRfcmVqZWN0X2lwdjYubw0KIG9iai0kKENPTkZJR19ORlRfTUFTUV9JUFY2KSArPSBuZnRf bWFzcV9pcHY2Lm8NCiBvYmotJChDT05GSUdfTkZUX1JFRElSX0lQVjYpICs9IG5mdF9yZWRpcl9p cHY2Lm8NCmRpZmYgLS1naXQgYS9uZXQvaXB2Ni9uZXRmaWx0ZXIvbmZ0X3J0X2lwdjYuYyBiL25l dC9pcHY2L25ldGZpbHRlci9uZnRfcnRfaXB2Ni5jDQotLS0gL2Rldi9udWxsDQorKysgYi9uZXQv aXB2Ni9uZXRmaWx0ZXIvbmZ0X3J0X2lwdjYuYw0KQEAgLTAsMCArMSwxMTggQEANCisvKg0KKyAq IENvcHlyaWdodCAoYykgMjAxNiBBbmRlcnMgSy4gUGVkZXJzZW4gPGFrcEBjb2hhZXNpby5jb20+ DQorICoNCisgKiBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3Ry aWJ1dGUgaXQgYW5kL29yIG1vZGlmeQ0KKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05V IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIGFzDQorICogcHVibGlzaGVkIGJ5IHRo ZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24uDQorICoNCisgKi8NCisNCisjaW5jbHVkZSA8bGlu dXgva2VybmVsLmg+DQorI2luY2x1ZGUgPGxpbnV4L2luaXQuaD4NCisjaW5jbHVkZSA8bGludXgv bW9kdWxlLmg+DQorI2luY2x1ZGUgPGxpbnV4L25ldGxpbmsuaD4NCisjaW5jbHVkZSA8bGludXgv bmV0ZmlsdGVyLmg+DQorI2luY2x1ZGUgPGxpbnV4L25ldGZpbHRlci9uZl90YWJsZXMuaD4NCisj aW5jbHVkZSA8bmV0L2lwNl9yb3V0ZS5oPg0KKyNpbmNsdWRlIDxuZXQvbmV0ZmlsdGVyL25mX3Rh Ymxlcy5oPg0KKyNpbmNsdWRlIDxuZXQvbmV0ZmlsdGVyL25mdF9ydC5oPg0KKw0KK3N0YXRpYyB2 b2lkIG5mdF9ydF9pcHY2X2dldF9ldmFsKGNvbnN0IHN0cnVjdCBuZnRfZXhwciAqZXhwciwNCisJ CQkJIHN0cnVjdCBuZnRfcmVncyAqcmVncywNCisJCQkJIGNvbnN0IHN0cnVjdCBuZnRfcGt0aW5m byAqcGt0KQ0KK3sNCisJY29uc3Qgc3RydWN0IG5mdF9ydCAqcHJpdiA9IG5mdF9leHByX3ByaXYo ZXhwcik7DQorCWNvbnN0IHN0cnVjdCBza19idWZmICpza2IgPSBwa3QtPnNrYjsNCisJdTMyICpk ZXN0ID0gJnJlZ3MtPmRhdGFbcHJpdi0+ZHJlZ107DQorDQorCXN3aXRjaCAocHJpdi0+a2V5KSB7 DQorCWNhc2UgTkZUX1JUX05FWFRIT1A6IHsNCisJCXN0cnVjdCBydDZfaW5mbyAqcnQgPSAoc3Ry dWN0IHJ0Nl9pbmZvICopc2tiX2RzdChza2IpOw0KKw0KKwkJaWYgKCFydCkNCisJCQlnb3RvIGVy cjsNCisJCW1lbWNweShkZXN0LCBydDZfbmV4dGhvcChydCwgJmlwdjZfaGRyKHNrYiktPmRhZGRy KSwNCisJCSAgICAgICBzaXplb2Yoc3RydWN0IGluNl9hZGRyKSk7DQorCQlicmVhazsNCisJfQ0K KwlkZWZhdWx0Og0KKwkJcmV0dXJuIG5mdF9ydF9nZXRfZXZhbChleHByLCByZWdzLCBwa3QpOw0K Kwl9DQorDQorCXJldHVybjsNCitlcnI6DQorCXJlZ3MtPnZlcmRpY3QuY29kZSA9IE5GVF9CUkVB SzsNCit9DQorDQorc3RhdGljIGludCBuZnRfcnRfaXB2Nl9nZXRfaW5pdChjb25zdCBzdHJ1Y3Qg bmZ0X2N0eCAqY3R4LA0KKwkJCQljb25zdCBzdHJ1Y3QgbmZ0X2V4cHIgKmV4cHIsDQorCQkJCWNv bnN0IHN0cnVjdCBubGF0dHIgKiBjb25zdCB0YltdKQ0KK3sNCisJc3RydWN0IG5mdF9ydCAqcHJp diA9IG5mdF9leHByX3ByaXYoZXhwcik7DQorCXVuc2lnbmVkIGludCBsZW47DQorDQorCXByaXYt PmtleSA9IG50b2hsKG5sYV9nZXRfYmUzMih0YltORlRBX1JUX0tFWV0pKTsNCisJc3dpdGNoIChw cml2LT5rZXkpIHsNCisJY2FzZSBORlRfUlRfTkVYVEhPUDoNCisJCWxlbiA9IHNpemVvZihzdHJ1 Y3QgaW42X2FkZHIpOw0KKwkJYnJlYWs7DQorCWRlZmF1bHQ6DQorCQlyZXR1cm4gbmZ0X3J0X2dl dF9pbml0KGN0eCwgZXhwciwgdGIpOw0KKwl9DQorDQorCXByaXYtPmZhbWlseSA9IG50b2hsKG5s YV9nZXRfYmUzMih0YltORlRBX1JUX0ZBTUlMWV0pKTsNCisJaWYgKHByaXYtPmZhbWlseSAhPSBO RlBST1RPX0lQVjYpDQorCQlyZXR1cm4gLUVJTlZBTDsNCisNCisJcHJpdi0+ZHJlZyA9IG5mdF9w YXJzZV9yZWdpc3Rlcih0YltORlRBX1JUX0RSRUddKTsNCisJcmV0dXJuIG5mdF92YWxpZGF0ZV9y ZWdpc3Rlcl9zdG9yZShjdHgsIHByaXYtPmRyZWcsIE5VTEwsDQorCQkJCQkgICBORlRfREFUQV9W QUxVRSwgbGVuKTsNCit9DQorDQorc3RhdGljIHN0cnVjdCBuZnRfZXhwcl90eXBlIG5mdF9ydF9p cHY2X3R5cGU7DQorc3RhdGljIGNvbnN0IHN0cnVjdCBuZnRfZXhwcl9vcHMgbmZ0X3J0X2lwdjZf Z2V0X29wcyA9IHsNCisJLnR5cGUJCT0gJm5mdF9ydF9pcHY2X3R5cGUsDQorCS5zaXplCQk9IE5G VF9FWFBSX1NJWkUoc2l6ZW9mKHN0cnVjdCBuZnRfcnQpKSwNCisJLmV2YWwJCT0gbmZ0X3J0X2lw djZfZ2V0X2V2YWwsDQorCS5pbml0CQk9IG5mdF9ydF9pcHY2X2dldF9pbml0LA0KKwkuZHVtcAkJ PSBuZnRfcnRfZ2V0X2R1bXAsDQorfTsNCisNCitzdGF0aWMgY29uc3Qgc3RydWN0IG5mdF9leHBy X29wcyAqDQorbmZ0X3J0X2lwdjZfc2VsZWN0X29wcyhjb25zdCBzdHJ1Y3QgbmZ0X2N0eCAqY3R4 LA0KKwkJICAgICAgIGNvbnN0IHN0cnVjdCBubGF0dHIgKiBjb25zdCB0YltdKQ0KK3sNCisJaWYg KHRiW05GVEFfUlRfS0VZXSA9PSBOVUxMKQ0KKwkJcmV0dXJuIEVSUl9QVFIoLUVJTlZBTCk7DQor DQorCWlmICh0YltORlRBX1JUX0RSRUddKQ0KKwkJcmV0dXJuICZuZnRfcnRfaXB2Nl9nZXRfb3Bz Ow0KKw0KKwlyZXR1cm4gRVJSX1BUUigtRUlOVkFMKTsNCit9DQorDQorc3RhdGljIHN0cnVjdCBu ZnRfZXhwcl90eXBlIG5mdF9ydF9pcHY2X3R5cGUgX19yZWFkX21vc3RseSA9IHsNCisJLmZhbWls eSAgICAgICAgID0gTkZQUk9UT19JUFY2LA0KKwkubmFtZSAgICAgICAgICAgPSAicnQiLA0KKwku c2VsZWN0X29wcyAgICAgPSAmbmZ0X3J0X2lwdjZfc2VsZWN0X29wcywNCisJLnBvbGljeSAgICAg ICAgID0gbmZ0X3J0X3BvbGljeSwNCisJLm1heGF0dHIgICAgICAgID0gTkZUQV9SVF9NQVgsDQor CS5vd25lciAgICAgICAgICA9IFRISVNfTU9EVUxFLA0KK307DQorDQorc3RhdGljIGludCBfX2lu aXQgbmZ0X3J0X2lwdjZfbW9kdWxlX2luaXQodm9pZCkNCit7DQorCXJldHVybiBuZnRfcmVnaXN0 ZXJfZXhwcigmbmZ0X3J0X2lwdjZfdHlwZSk7DQorfQ0KKw0KK3N0YXRpYyB2b2lkIF9fZXhpdCBu ZnRfcnRfaXB2Nl9tb2R1bGVfZXhpdCh2b2lkKQ0KK3sNCisJbmZ0X3VucmVnaXN0ZXJfZXhwcigm bmZ0X3J0X2lwdjZfdHlwZSk7DQorfQ0KKw0KK21vZHVsZV9pbml0KG5mdF9ydF9pcHY2X21vZHVs ZV9pbml0KTsNCittb2R1bGVfZXhpdChuZnRfcnRfaXB2Nl9tb2R1bGVfZXhpdCk7DQorDQorTU9E VUxFX0xJQ0VOU0UoIkdQTCIpOw0KK01PRFVMRV9BVVRIT1IoIkFuZGVycyBLLiBQZWRlcnNlbiA8 YWtwQGNvaGFlc2lvLmNvbT4iKTsNCitNT0RVTEVfQUxJQVNfTkZUX0FGX0VYUFIoQUZfSU5FVDYs ICJydCIpOw0K