{"id":802145,"url":"http://patchwork.ozlabs.org/api/patches/802145/?format=json","web_url":"http://patchwork.ozlabs.org/project/openvswitch/patch/BY2PR0501MB2119715B6A99DBC61F9D1A9FA2820@BY2PR0501MB2119.namprd05.prod.outlook.com/","project":{"id":47,"url":"http://patchwork.ozlabs.org/api/projects/47/?format=json","name":"Open vSwitch","link_name":"openvswitch","list_id":"ovs-dev.openvswitch.org","list_email":"ovs-dev@openvswitch.org","web_url":"http://openvswitch.org/","scm_url":"git@github.com:openvswitch/ovs.git","webscm_url":"https://github.com/openvswitch/ovs","list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<BY2PR0501MB2119715B6A99DBC61F9D1A9FA2820@BY2PR0501MB2119.namprd05.prod.outlook.com>","list_archive_url":null,"date":"2017-08-16T17:03:34","name":"[ovs-dev,v2] datapath-windows: Update Orig Tuple to use ICMP Type and Code","commit_ref":null,"pull_url":null,"state":"superseded","archived":false,"hash":"929056b8f44c9e77bb56c590bf716bb2a0cb5776","submitter":{"id":69910,"url":"http://patchwork.ozlabs.org/api/people/69910/?format=json","name":"Shashank Ram","email":"rams@vmware.com"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/openvswitch/patch/BY2PR0501MB2119715B6A99DBC61F9D1A9FA2820@BY2PR0501MB2119.namprd05.prod.outlook.com/mbox/","series":[],"comments":"http://patchwork.ozlabs.org/api/patches/802145/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/802145/checks/","tags":{},"related":[],"headers":{"Return-Path":"<ovs-dev-bounces@openvswitch.org>","X-Original-To":["incoming@patchwork.ozlabs.org","dev@openvswitch.org"],"Delivered-To":["patchwork-incoming@bilbo.ozlabs.org","ovs-dev@mail.linuxfoundation.org"],"Authentication-Results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=openvswitch.org\n\t(client-ip=140.211.169.12; helo=mail.linuxfoundation.org;\n\tenvelope-from=ovs-dev-bounces@openvswitch.org;\n\treceiver=<UNKNOWN>)","ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=onevmw.onmicrosoft.com\n\theader.i=@onevmw.onmicrosoft.com header.b=\"pK/O3NSp\"; \n\tdkim-atps=neutral","spf=none (sender IP is )\n\tsmtp.mailfrom=rams@vmware.com; "],"Received":["from mail.linuxfoundation.org (mail.linuxfoundation.org\n\t[140.211.169.12])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xXbKC2Z6Xz9sPr\n\tfor <incoming@patchwork.ozlabs.org>;\n\tThu, 17 Aug 2017 03:03:43 +1000 (AEST)","from mail.linux-foundation.org (localhost [127.0.0.1])\n\tby mail.linuxfoundation.org (Postfix) with ESMTP id 2011BE3B;\n\tWed, 16 Aug 2017 17:03:39 +0000 (UTC)","from smtp1.linuxfoundation.org (smtp1.linux-foundation.org\n\t[172.17.192.35])\n\tby mail.linuxfoundation.org (Postfix) with ESMTPS id 7AF99DA7\n\tfor <dev@openvswitch.org>; Wed, 16 Aug 2017 17:03:37 +0000 (UTC)","from NAM01-SN1-obe.outbound.protection.outlook.com\n\t(mail-sn1nam01on0048.outbound.protection.outlook.com [104.47.32.48])\n\tby smtp1.linuxfoundation.org (Postfix) with ESMTPS id 3B8FB4A6\n\tfor <dev@openvswitch.org>; Wed, 16 Aug 2017 17:03:37 +0000 (UTC)","from BY2PR0501MB2119.namprd05.prod.outlook.com (10.163.198.17) by\n\tBY2PR0501MB1671.namprd05.prod.outlook.com (10.163.154.149) with\n\tMicrosoft SMTP Server (version=TLS1_2,\n\tcipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1362.12;\n\tWed, 16 Aug 2017 17:03:35 +0000","from BY2PR0501MB2119.namprd05.prod.outlook.com ([10.163.198.17]) by\n\tBY2PR0501MB2119.namprd05.prod.outlook.com ([10.163.198.17]) with\n\tmapi id 15.01.1362.018; Wed, 16 Aug 2017 17:03:35 +0000"],"X-Greylist":"whitelisted by SQLgrey-1.7.6","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=onevmw.onmicrosoft.com; s=selector1-vmware-com;\n\th=From:Date:Subject:Message-ID:Content-Type:MIME-Version;\n\tbh=TSO1pC8JZHQKdT3/FLGDrNXJM7MXlsQZtmRDtR/7jKM=;\n\tb=pK/O3NSpwNY0OCspnOtcj/7kkmcF+MK+8vSk9ReBWCDoJXKWrQ3hVqgKMhG7IBk9zrSNcKdbGxUbm6pDCpzUDm+N/uGKEaBCpTfuUXob9L59PqzNUPUZGRXTa0E/YfY5IK/s+UHedKa+P4aKWNVIXMFW4xQ3mSCh4EgVzizxe6w=","From":"Shashank Ram <rams@vmware.com>","To":"Anand Kumar <kumaranand@vmware.com>, \"dev@openvswitch.org\"\n\t<dev@openvswitch.org>","Thread-Topic":"[ovs-dev] [PATCH v2] datapath-windows: Update Orig Tuple to use\n\tICMP Type and Code","Thread-Index":"AQHTFhV1vhR3GYreXEqAEqJ/T7jJw6KHNnh5","Date":"Wed, 16 Aug 2017 17:03:34 +0000","Message-ID":"<BY2PR0501MB2119715B6A99DBC61F9D1A9FA2820@BY2PR0501MB2119.namprd05.prod.outlook.com>","References":"<20170815222337.4444-1-kumaranand@vmware.com>","In-Reply-To":"<20170815222337.4444-1-kumaranand@vmware.com>","Accept-Language":"en-US","Content-Language":"en-US","X-MS-Has-Attach":"","X-MS-TNEF-Correlator":"","authentication-results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=openvswitch.org\n\t(client-ip=140.211.169.12; helo=mail.linuxfoundation.org;\n\tenvelope-from=ovs-dev-bounces@openvswitch.org;\n\treceiver=<UNKNOWN>)","ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=onevmw.onmicrosoft.com\n\theader.i=@onevmw.onmicrosoft.com header.b=\"pK/O3NSp\"; \n\tdkim-atps=neutral","spf=none (sender IP is )\n\tsmtp.mailfrom=rams@vmware.com; "],"x-originating-ip":"[208.91.1.34]","x-ms-publictraffictype":"Email","x-microsoft-exchange-diagnostics":"1; BY2PR0501MB1671;\n\t20:fP8BK/irTHjxDJ3Dftxtc0g375RNfjiMEGERwodxkniDTFcubudScpRllm52KnbAXjJw8e6/QA7rQCQmgWvYKd0TeB1VlYovYX6+4Nu66uzFoa4QuSSPLA0t14M/UgD9avaj5v9ncwLa6au8VfeWw9IDiLsOFXi/kZw1tUwEj2M=","x-ms-office365-filtering-correlation-id":"0c08703d-10a5-4133-0e47-08d4e4c8bb41","x-microsoft-antispam":"UriScan:; BCL:0; PCL:0;\n\tRULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(300000503095)(300135400095)(2017052603031)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095);\n\tSRVR:BY2PR0501MB1671; ","x-ms-traffictypediagnostic":"BY2PR0501MB1671:","x-exchange-antispam-report-test":"UriScan:(61668805478150)(216315784871565);","x-microsoft-antispam-prvs":"<BY2PR0501MB1671580034E1ED0A61A335AAA2820@BY2PR0501MB1671.namprd05.prod.outlook.com>","x-exchange-antispam-report-cfa-test":"BCL:0; PCL:0;\n\tRULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(100000703101)(100105400095)(93006095)(93001095)(10201501046)(3002001)(6041248)(20161123560025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123558100)(20161123555025)(20161123562025)(20161123564025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095);\n\tSRVR:BY2PR0501MB1671; BCL:0; PCL:0;\n\tRULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);\n\tSRVR:BY2PR0501MB1671; ","x-forefront-prvs":"0401647B7F","x-forefront-antispam-report":"SFV:NSPM;\n\tSFS:(10009020)(6009001)(189002)(199003)(377454003)(74316002)(3660700001)(53936002)(25786009)(2950100002)(76176999)(54356999)(33656002)(189998001)(50986999)(14454004)(97736004)(101416001)(3846002)(102836003)(6116002)(81156014)(81166006)(53546010)(8936002)(66066001)(305945005)(7736002)(106356001)(6436002)(105586002)(6506006)(229853002)(2900100001)(77096006)(478600001)(2906002)(5660300001)(3280700002)(68736007)(6246003)(15650500001)(7696004)(9686003)(99286003)(86362001)(55016002)(2501003)(586874002);\n\tDIR:OUT; SFP:1101; SCL:1; SRVR:BY2PR0501MB1671;\n\tH:BY2PR0501MB2119.namprd05.prod.outlook.com; FPR:; SPF:None;\n\tPTR:InfoNoRecords; MX:1; A:1; LANG:en; ","received-spf":"None (protection.outlook.com: vmware.com does not designate\n\tpermitted sender hosts)","spamdiagnosticoutput":"1:99","spamdiagnosticmetadata":"NSPM","MIME-Version":"1.0","X-OriginatorOrg":"vmware.com","X-MS-Exchange-CrossTenant-originalarrivaltime":"16 Aug 2017 17:03:34.9933\n\t(UTC)","X-MS-Exchange-CrossTenant-fromentityheader":"Hosted","X-MS-Exchange-CrossTenant-id":"b39138ca-3cee-4b4a-a4d6-cd83d9dd62f0","X-MS-Exchange-Transport-CrossTenantHeadersStamped":"BY2PR0501MB1671","Subject":"Re: [ovs-dev] [PATCH v2] datapath-windows: Update Orig Tuple to\n\tuse\tICMP Type and Code","X-BeenThere":"ovs-dev@openvswitch.org","X-Mailman-Version":"2.1.12","Precedence":"list","List-Id":"<ovs-dev.openvswitch.org>","List-Unsubscribe":"<https://mail.openvswitch.org/mailman/options/ovs-dev>,\n\t<mailto:ovs-dev-request@openvswitch.org?subject=unsubscribe>","List-Archive":"<http://mail.openvswitch.org/pipermail/ovs-dev/>","List-Post":"<mailto:ovs-dev@openvswitch.org>","List-Help":"<mailto:ovs-dev-request@openvswitch.org?subject=help>","List-Subscribe":"<https://mail.openvswitch.org/mailman/listinfo/ovs-dev>,\n\t<mailto:ovs-dev-request@openvswitch.org?subject=subscribe>","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Sender":"ovs-dev-bounces@openvswitch.org","Errors-To":"ovs-dev-bounces@openvswitch.org"},"content":"","diff":"diff --git a/datapath-windows/ovsext/Conntrack.c b/datapath-windows/ovsext/Conntrack.c\nindex 917ebee..ce8c1c8 100644\n--- a/datapath-windows/ovsext/Conntrack.c\n+++ b/datapath-windows/ovsext/Conntrack.c\n@@ -782,9 +782,16 @@ OvsCtExecute_(OvsForwardingContext *fwdCtx,\n\n         key->ct.tuple_ipv4.ipv4_src = ctKey->src.addr.ipv4_aligned;\n         key->ct.tuple_ipv4.ipv4_dst = ctKey->dst.addr.ipv4_aligned;\n-        key->ct.tuple_ipv4.src_port = ctKey->src.port;\n-        key->ct.tuple_ipv4.dst_port = ctKey->dst.port;\n         key->ct.tuple_ipv4.ipv4_proto = ctKey->nw_proto;\n+\n+        /* Orig tuple Port is overloaded to take in ICMP-Type & Code */\n+        /* This mimics the behavior in lib/conntrack.c*/\n+        key->ct.tuple_ipv4.src_port = ctKey->nw_proto != IPPROTO_ICMP ?\n+                                      ctKey->src.port :\n+                                      htons(ctKey->src.icmp_type);\n+        key->ct.tuple_ipv4.dst_port = ctKey->nw_proto != IPPROTO_ICMP ?\n+                                      ctKey->dst.port :\n+                                      htons(ctKey->src.icmp_code);\n     }\n\n     if (entryCreated && entry) {\ndiff --git a/datapath-windows/ovsext/Conntrack.h b/datapath-windows/ovsext/Conntrack.h\nindex 04ca299..bca7d90 100644\n--- a/datapath-windows/ovsext/Conntrack.h\n+++ b/datapath-windows/ovsext/Conntrack.h\n@@ -41,14 +41,16 @@ struct ct_addr {\n struct ct_endpoint {\n     struct ct_addr addr;\n     union {\n-        ovs_be16 port;\n+        struct {\n+            ovs_be16 port;\n+            uint16 pad_port;\n>>> It might be worth to add a comment about why the pad is required, so that if the struct changes later the padding is not forgotten about.\n\n+        };\n         struct {\n             ovs_be16 icmp_id;\n             uint8_t icmp_type;\n             uint8_t icmp_code;\n         };\n     };\n-    UINT16 pad;\n };\n","prefixes":["ovs-dev","v2"]}