From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Anders K. Pedersen | Cohaesio" Subject: [PATCH v2 nf-next 4/5] netfilter: nft: rt nexthop for IPv6 family Date: Wed, 19 Oct 2016 18:40:49 +0000 Message-ID: <1476902449.1161.23.camel@cohaesio.com> References: <1476902043.1161.14.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]:60245 "EHLO mail.cohaesio.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932417AbcJSSkw (ORCPT ); Wed, 19 Oct 2016 14:40:52 -0400 In-Reply-To: <1476902043.1161.14.camel@cohaesio.com> Content-Language: en-US Content-ID: <4E7D1B6CEBC99149B013536EE3CB7BBC@surftown.com> Sender: netfilter-devel-owner@vger.kernel.org List-ID: RnJvbTogQW5kZXJzIEsuIFBlZGVyc2VuIDxha3BAY29oYWVzaW8uY29tPg0KDQpBZGQgbmZ0YWJs ZXMgSVB2NiBmYW1pbHkgc3VwcG9ydCBmb3IgYW4gInJ0IGlwNiBuZXh0aG9wIiBleHByZXNzaW9u DQphbGxvd2luZyB1c2FnZSBvZiB0aGUgcm91dGluZyBuZXh0aG9wIChpLmUuIHRoZSBkaXJlY3Rs eSBjb25uZWN0ZWQgSVANCmFkZHJlc3MgdGhhdCBhbiBvdXRnb2luZyBwYWNrZXQgaXMgc2VudCB0 bykgZm9yIG1hdGNoaW5nIG9yIGFjY291bnRpbmcsIGVnLg0KDQogIyBuZnQgYWRkIHJ1bGUgaXA2 IGZpbHRlciBwb3N0cm91dGluZyBcDQoJaXA2IGRhZGRyIGZkMDE6Oi8xNiBydCBpcDYgbmV4dGhv cCAhPSBmZDAwOjoxIGRyb3ANCg0KVGhpcyB3aWxsIGRyb3AgYW55IHRyYWZmaWMgdG8gZmQwMTo6 LzE2IHRoYXQgaXMgbm90IHJvdXRlZCB2aWEgZmQwMDo6MS4NCg0KICMgbmZ0IGFkZCBydWxlIGlw NiBmaWx0ZXIgcG9zdHJvdXRpbmcgXA0KCWZsb3cgdGFibGUgYWNjdCB7IHJ0IGlwNiBuZXh0aG9w IHRpbWVvdXQgNjAwcyBjb3VudGVyIH0NCg0KVGhpcyBydWxlIGNvdW50cyBvdXRnb2luZyB0cmFm ZmljIHBlciBuZXh0aG9wLiBOb3RlIHRoYXQgdGhlIHRpbWVvdXQNCnJlbGVhc2VzIGFuIGVudHJ5 IGlmIG5vIHRyYWZmaWMgaXMgc2VlbiBmb3IgdGhpcyBuZXh0aG9wIHdpdGhpbiAxMCBtaW51dGVz Lg0KDQpTaWduZWQtb2ZmLWJ5OiBBbmRlcnMgSy4gUGVkZXJzZW4gPGFrcEBjb2hhZXNpby5jb20+ DQotLS0NCnYyDQotIHJlbW92ZSBuZnRfcnRfaXB2Nl9zZWxlY3Rfb3BzDQoNCiBuZXQvaXB2Ni9u ZXRmaWx0ZXIvS2NvbmZpZyAgICAgICAgICAgICAgIHwgICA0ICsNCiBuZXQvaXB2Ni9uZXRmaWx0 ZXIvTWFrZWZpbGUgICAgICAgICAgICAgIHwgICAxICsNCiBuZXQvaXB2Ni9uZXRmaWx0ZXIvbmZ0 X3J0X2lwdjYuYyAgICAgICAgIHwgMTEwICsrKysrKysrKysrKysrKysrKysrKysrKw0KIDMgZmls ZXMgY2hhbmdlZCwgMTE1IGluc2VydGlvbnMoKykNCg0KZGlmZiAtLWdpdCBhL25ldC9pcHY2L25l dGZpbHRlci9LY29uZmlnIGIvbmV0L2lwdjYvbmV0ZmlsdGVyL0tjb25maWcNCmluZGV4IGUxMGEw NGMuLjhkMzUyN2UgMTAwNjQ0DQotLS0gYS9uZXQvaXB2Ni9uZXRmaWx0ZXIvS2NvbmZpZw0KKysr IGIvbmV0L2lwdjYvbmV0ZmlsdGVyL0tjb25maWcNCkBAIC00Miw2ICs0MiwxMCBAQCBjb25maWcg TkZUX0NIQUlOX1JPVVRFX0lQVjYNCiAJICBmaWVsZHMgc3VjaCBhcyB0aGUgc291cmNlLCBkZXN0 aW5hdGlvbiwgZmxvd2xhYmVsLCBob3AtbGltaXQgYW5kDQogCSAgdGhlIHBhY2tldCBtYXJrLg0K IA0KK2NvbmZpZyBORlRfUlRfSVBWNg0KKwlkZWZhdWx0IE5GVF9SVA0KKwl0cmlzdGF0ZQ0KKw0K IGNvbmZpZyBORlRfUkVKRUNUX0lQVjYNCiAJc2VsZWN0IE5GX1JFSkVDVF9JUFY2DQogCWRlZmF1 bHQgTkZUX1JFSkVDVA0KZGlmZiAtLWdpdCBhL25ldC9pcHY2L25ldGZpbHRlci9NYWtlZmlsZSBi L25ldC9pcHY2L25ldGZpbHRlci9NYWtlZmlsZQ0KaW5kZXggYjRmN2QwYi4uNjk1OGMzNSAxMDA2 NDQNCi0tLSBhL25ldC9pcHY2L25ldGZpbHRlci9NYWtlZmlsZQ0KKysrIGIvbmV0L2lwdjYvbmV0 ZmlsdGVyL01ha2VmaWxlDQpAQCAtMzYsNiArMzYsNyBAQCBvYmotJChDT05GSUdfTkZfRFVQX0lQ VjYpICs9IG5mX2R1cF9pcHY2Lm8NCiBvYmotJChDT05GSUdfTkZfVEFCTEVTX0lQVjYpICs9IG5m X3RhYmxlc19pcHY2Lm8NCiBvYmotJChDT05GSUdfTkZUX0NIQUlOX1JPVVRFX0lQVjYpICs9IG5m dF9jaGFpbl9yb3V0ZV9pcHY2Lm8NCiBvYmotJChDT05GSUdfTkZUX0NIQUlOX05BVF9JUFY2KSAr PSBuZnRfY2hhaW5fbmF0X2lwdjYubw0KK29iai0kKENPTkZJR19ORlRfUlRfSVBWNikgKz0gbmZ0 X3J0X2lwdjYubw0KIG9iai0kKENPTkZJR19ORlRfUkVKRUNUX0lQVjYpICs9IG5mdF9yZWplY3Rf aXB2Ni5vDQogb2JqLSQoQ09ORklHX05GVF9NQVNRX0lQVjYpICs9IG5mdF9tYXNxX2lwdjYubw0K IG9iai0kKENPTkZJR19ORlRfUkVESVJfSVBWNikgKz0gbmZ0X3JlZGlyX2lwdjYubw0KZGlmZiAt LWdpdCBhL25ldC9pcHY2L25ldGZpbHRlci9uZnRfcnRfaXB2Ni5jIGIvbmV0L2lwdjYvbmV0Zmls dGVyL25mdF9ydF9pcHY2LmMNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwLi4z MmQ4ZWM4DQotLS0gL2Rldi9udWxsDQorKysgYi9uZXQvaXB2Ni9uZXRmaWx0ZXIvbmZ0X3J0X2lw djYuYw0KQEAgLTAsMCArMSwxMTAgQEANCisvKg0KKyAqIENvcHlyaWdodCAoYykgMjAxNiBBbmRl cnMgSy4gUGVkZXJzZW4gPGFrcEBjb2hhZXNpby5jb20+DQorICoNCisgKiBUaGlzIHByb2dyYW0g aXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQ0K KyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2Ug dmVyc2lvbiAyIGFzDQorICogcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRp b24uDQorICoNCisgKi8NCisNCisjaW5jbHVkZSA8bGludXgva2VybmVsLmg+DQorI2luY2x1ZGUg PGxpbnV4L2luaXQuaD4NCisjaW5jbHVkZSA8bGludXgvbW9kdWxlLmg+DQorI2luY2x1ZGUgPGxp bnV4L25ldGxpbmsuaD4NCisjaW5jbHVkZSA8bGludXgvbmV0ZmlsdGVyLmg+DQorI2luY2x1ZGUg PGxpbnV4L25ldGZpbHRlci9uZl90YWJsZXMuaD4NCisjaW5jbHVkZSA8bmV0L2lwNl9yb3V0ZS5o Pg0KKyNpbmNsdWRlIDxuZXQvbmV0ZmlsdGVyL25mX3RhYmxlcy5oPg0KKyNpbmNsdWRlIDxuZXQv bmV0ZmlsdGVyL25mdF9ydC5oPg0KKw0KK3N0YXRpYyB2b2lkIG5mdF9ydF9pcHY2X2dldF9ldmFs KGNvbnN0IHN0cnVjdCBuZnRfZXhwciAqZXhwciwNCisJCQkJIHN0cnVjdCBuZnRfcmVncyAqcmVn cywNCisJCQkJIGNvbnN0IHN0cnVjdCBuZnRfcGt0aW5mbyAqcGt0KQ0KK3sNCisJY29uc3Qgc3Ry dWN0IG5mdF9ydCAqcHJpdiA9IG5mdF9leHByX3ByaXYoZXhwcik7DQorCWNvbnN0IHN0cnVjdCBz a19idWZmICpza2IgPSBwa3QtPnNrYjsNCisJdTMyICpkZXN0ID0gJnJlZ3MtPmRhdGFbcHJpdi0+ ZHJlZ107DQorDQorCXN3aXRjaCAocHJpdi0+a2V5KSB7DQorCWNhc2UgTkZUX1JUX05FWFRIT1A6 IHsNCisJCXN0cnVjdCBydDZfaW5mbyAqcnQgPSAoc3RydWN0IHJ0Nl9pbmZvICopc2tiX2RzdChz a2IpOw0KKw0KKwkJaWYgKCFydCkNCisJCQlnb3RvIGVycjsNCisJCW1lbWNweShkZXN0LCBydDZf bmV4dGhvcChydCwgJmlwdjZfaGRyKHNrYiktPmRhZGRyKSwNCisJCSAgICAgICBzaXplb2Yoc3Ry dWN0IGluNl9hZGRyKSk7DQorCQlicmVhazsNCisJfQ0KKwlkZWZhdWx0Og0KKwkJcmV0dXJuIG5m dF9ydF9nZXRfZXZhbChleHByLCByZWdzLCBwa3QpOw0KKwl9DQorDQorCXJldHVybjsNCitlcnI6 DQorCXJlZ3MtPnZlcmRpY3QuY29kZSA9IE5GVF9CUkVBSzsNCit9DQorDQorc3RhdGljIGludCBu ZnRfcnRfaXB2Nl9nZXRfaW5pdChjb25zdCBzdHJ1Y3QgbmZ0X2N0eCAqY3R4LA0KKwkJCQljb25z dCBzdHJ1Y3QgbmZ0X2V4cHIgKmV4cHIsDQorCQkJCWNvbnN0IHN0cnVjdCBubGF0dHIgKiBjb25z dCB0YltdKQ0KK3sNCisJc3RydWN0IG5mdF9ydCAqcHJpdiA9IG5mdF9leHByX3ByaXYoZXhwcik7 DQorCXVuc2lnbmVkIGludCBsZW47DQorDQorCWlmICh0YltORlRBX1JUX0tFWV0gPT0gTlVMTCB8 fA0KKwkgICAgdGJbTkZUQV9SVF9EUkVHXSA9PSBOVUxMIHx8DQorCSAgICB0YltORlRBX1JUX0ZB TUlMWV0gPT0gTlVMTCkNCisJCXJldHVybiAtRUlOVkFMOw0KKw0KKwlwcml2LT5rZXkgPSBudG9o bChubGFfZ2V0X2JlMzIodGJbTkZUQV9SVF9LRVldKSk7DQorCXN3aXRjaCAocHJpdi0+a2V5KSB7 DQorCWNhc2UgTkZUX1JUX05FWFRIT1A6DQorCQlsZW4gPSBzaXplb2Yoc3RydWN0IGluNl9hZGRy KTsNCisJCWJyZWFrOw0KKwlkZWZhdWx0Og0KKwkJcmV0dXJuIG5mdF9ydF9nZXRfaW5pdChjdHgs IGV4cHIsIHRiKTsNCisJfQ0KKw0KKwlwcml2LT5mYW1pbHkgPSBudG9obChubGFfZ2V0X2JlMzIo dGJbTkZUQV9SVF9GQU1JTFldKSk7DQorCWlmIChwcml2LT5mYW1pbHkgIT0gTkZQUk9UT19JUFY2 KQ0KKwkJcmV0dXJuIC1FSU5WQUw7DQorDQorCXByaXYtPmRyZWcgPSBuZnRfcGFyc2VfcmVnaXN0 ZXIodGJbTkZUQV9SVF9EUkVHXSk7DQorCXJldHVybiBuZnRfdmFsaWRhdGVfcmVnaXN0ZXJfc3Rv cmUoY3R4LCBwcml2LT5kcmVnLCBOVUxMLA0KKwkJCQkJICAgTkZUX0RBVEFfVkFMVUUsIGxlbik7 DQorfQ0KKw0KK3N0YXRpYyBzdHJ1Y3QgbmZ0X2V4cHJfdHlwZSBuZnRfcnRfaXB2Nl90eXBlOw0K K3N0YXRpYyBjb25zdCBzdHJ1Y3QgbmZ0X2V4cHJfb3BzIG5mdF9ydF9pcHY2X2dldF9vcHMgPSB7 DQorCS50eXBlCQk9ICZuZnRfcnRfaXB2Nl90eXBlLA0KKwkuc2l6ZQkJPSBORlRfRVhQUl9TSVpF KHNpemVvZihzdHJ1Y3QgbmZ0X3J0KSksDQorCS5ldmFsCQk9IG5mdF9ydF9pcHY2X2dldF9ldmFs LA0KKwkuaW5pdAkJPSBuZnRfcnRfaXB2Nl9nZXRfaW5pdCwNCisJLmR1bXAJCT0gbmZ0X3J0X2dl dF9kdW1wLA0KK307DQorDQorc3RhdGljIHN0cnVjdCBuZnRfZXhwcl90eXBlIG5mdF9ydF9pcHY2 X3R5cGUgX19yZWFkX21vc3RseSA9IHsNCisJLmZhbWlseSAgICAgICAgID0gTkZQUk9UT19JUFY2 LA0KKwkubmFtZSAgICAgICAgICAgPSAicnQiLA0KKwkub3BzCQk9ICZuZnRfcnRfaXB2Nl9nZXRf b3BzLA0KKwkucG9saWN5ICAgICAgICAgPSBuZnRfcnRfcG9saWN5LA0KKwkubWF4YXR0ciAgICAg ICAgPSBORlRBX1JUX01BWCwNCisJLm93bmVyICAgICAgICAgID0gVEhJU19NT0RVTEUsDQorfTsN CisNCitzdGF0aWMgaW50IF9faW5pdCBuZnRfcnRfaXB2Nl9tb2R1bGVfaW5pdCh2b2lkKQ0KK3sN CisJcmV0dXJuIG5mdF9yZWdpc3Rlcl9leHByKCZuZnRfcnRfaXB2Nl90eXBlKTsNCit9DQorDQor c3RhdGljIHZvaWQgX19leGl0IG5mdF9ydF9pcHY2X21vZHVsZV9leGl0KHZvaWQpDQorew0KKwlu ZnRfdW5yZWdpc3Rlcl9leHByKCZuZnRfcnRfaXB2Nl90eXBlKTsNCit9DQorDQorbW9kdWxlX2lu aXQobmZ0X3J0X2lwdjZfbW9kdWxlX2luaXQpOw0KK21vZHVsZV9leGl0KG5mdF9ydF9pcHY2X21v ZHVsZV9leGl0KTsNCisNCitNT0RVTEVfTElDRU5TRSgiR1BMIik7DQorTU9EVUxFX0FVVEhPUigi QW5kZXJzIEsuIFBlZGVyc2VuIDxha3BAY29oYWVzaW8uY29tPiIpOw0KK01PRFVMRV9BTElBU19O RlRfQUZfRVhQUihBRl9JTkVUNiwgInJ0Iik7DQo=