From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 4A78646D57; Mon, 18 Aug 2025 08:20:31 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 0D4B74013F; Mon, 18 Aug 2025 08:20:31 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com [67.231.156.173]) by mails.dpdk.org (Postfix) with ESMTP id 3279F4003C for ; Mon, 18 Aug 2025 08:20:29 +0200 (CEST) Received: from pps.filterd (m0045851.ppops.net [127.0.0.1]) by mx0b-0016f401.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 57I2XGrt005790; Sun, 17 Aug 2025 23:20:28 -0700 Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11on2092.outbound.protection.outlook.com [40.107.223.92]) by mx0b-0016f401.pphosted.com (PPS) with ESMTPS id 48krt80gn8-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Sun, 17 Aug 2025 23:20:27 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=rCRbzHaW8VycsenL/S9SUkitD3689Lg0fOzVD5UgNwFgd4aGzJ0RUl7ia4qHJ2nv1Hp+RL9iinfF/YlrYiPsVhw4qOUT+l0wyHu10tmkBiKIJ9vF7U6jUqoLbkik3sGBbmDTD7dIs7V0ZnW8kj6N6ATdevepvWk4ZdjkYAajzI9plKpmvmko3jM2BQ27VKW/5icy7np+aHpYZx87Q7xqKPbfaMDWKjZRqJswZnTWAh3+vOI3pH3nSW0lrCSopwXx8JEAJBYJGbq4AtR2ml0GaptpqGUHzUof1gPr3EGyakm4BlBfSbJ5H57diN5wdy1kNWm0Aw9tBmywNupEfnVVpg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=SkiB9tpFNOBtlG2339y1ZeQ0A1nE+I5oHXVanb49Roo=; b=MeKsxUD3rJHztFEIaAOrHIsVwdkVxD6AJtCvVJLM/+m1MsEqMJ+/dOR+8plktf+DTiYxtqJLho+kxW6rOaZae7X12PD3CX8+7ubtOE1L6gA2WPQW/bOSkKp7Ar0b0OEiyJnCcnHXg272tBiw6isfXsw1TewomZm4afKlDkP3SArtFfZBjOQPi/shkw3xYjuD4ZVamCHVjT9aADu+e2Dy2j9Fsb9EuwS63M098gNCeaDUsvbHhWaiNTW2T8/CH2IPDBHcSXYKHuBYU7nv7Q9IRdD5v2HqcBlh0mWwgB2YwGw+T810K6WnDCDqm6Ukf/dhCggsrng32ARp6/BQ8qk9cg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=marvell.com; dmarc=pass action=none header.from=marvell.com; dkim=pass header.d=marvell.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SkiB9tpFNOBtlG2339y1ZeQ0A1nE+I5oHXVanb49Roo=; b=IHhslj3UTuXHetXWFU6fu0I49iIk4e1RzwfDroxyoq8Wu4n5MOqLQ2zbGuAgDXsY27st+KgsHSYw/tjSpnHutUJAsU2T/OZmRk1BGacXvC1czVVM3EEJS5926EieuXj0ZoRXIvdIjEXQ15SyfuYEaMJHEGYFTeInvY81mAMnXJo= Received: from CO6PR18MB3860.namprd18.prod.outlook.com (2603:10b6:5:34d::12) by DM6PR18MB3651.namprd18.prod.outlook.com (2603:10b6:5:2a5::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9031.24; Mon, 18 Aug 2025 06:20:25 +0000 Received: from CO6PR18MB3860.namprd18.prod.outlook.com ([fe80::7a27:a7e4:65d5:7eba]) by CO6PR18MB3860.namprd18.prod.outlook.com ([fe80::7a27:a7e4:65d5:7eba%3]) with mapi id 15.20.9031.023; Mon, 18 Aug 2025 06:20:25 +0000 From: Sunil Kumar Kori To: =?utf-8?B?TW9ydGVuIEJyw7hydXA=?= , Thomas Monjalon , Andrew Rybchenko CC: "dev@dpdk.org" , Nithin Kumar Dabilpuram Subject: RE: [PATCH v4 1/1] ethdev: add support to provide link type Thread-Topic: [PATCH v4 1/1] ethdev: add support to provide link type Thread-Index: AQHcDPMrF3HoVpw6hkmGZb8+hkiii7Rh2u4AgAYZhyA= Date: Mon, 18 Aug 2025 06:20:25 +0000 Message-ID: References: <20250813084508.1446318-1-skori@marvell.com> <20250814081215.1904078-1-skori@marvell.com> <98CBD80474FA8B44BF855DF32C47DC35E9FE35@smartserver.smartshare.dk> In-Reply-To: <98CBD80474FA8B44BF855DF32C47DC35E9FE35@smartserver.smartshare.dk> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CO6PR18MB3860:EE_|DM6PR18MB3651:EE_ x-ms-office365-filtering-correlation-id: 4ff3b84c-8e8d-4d82-ae49-08ddde1f51c1 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|1800799024|366016|376014|38070700018; x-microsoft-antispam-message-info: =?utf-8?B?YVRjS0ZzVnZQWFdFM1RVTldZQmNJM1dzREs4YlYyc2U1MGpCaXZ4NkhSU2lD?= =?utf-8?B?ZWxPdXd5U25Udyt4bmdIbVlNQU1JNzNkRXQxdW1lR2kvRWEwRUNPaXdiU2Zp?= =?utf-8?B?V080WlZjL3JWbitlSWwvV0lMS0Y4cWVVWkV6UWlQSXozV0dvbXdrZDRYbnMw?= =?utf-8?B?SWExOTNyYUowTlBkcWxhRlVFcXB5eGZkV1VhamdXcVczOUJ4anZqMXYwQW1K?= =?utf-8?B?aVBvdzVyTHNLSWg4KzVaRXliUGUyVTlaVkpKSVdHd2c2dHU0R1VDNW83ZXl1?= =?utf-8?B?aHNaUFVXdWs2ZVNzYklOYnVsZEpIcmlLamRTMTVNU0NjWXlyVCtDNkJpTTJB?= =?utf-8?B?REZGZmZ2N0tuNEwrbjNOc2Q2Qndjc3V1ODRxalNuVVhNcUFtUWFRRURHYWFH?= =?utf-8?B?akEycVhWeXhmZlJZcXJGdlJQMmZMUVJPcnNTK01XMElRbUxwNDRBdXd1Q2VS?= =?utf-8?B?U2RnUTRJOTFFZ1p4VGhPZkxheHE3bk15aGdZUjdTSXFxQzJFaXVlN3MvMDM2?= =?utf-8?B?WklsQ1dXK1MwZ3o5Y29MRmJ3emVPQy9iK1phbHZHRVlhSHo1WFZmdlJFZkN4?= =?utf-8?B?SnRBT1BhazBtd280TGQxNVJ1OGY3ekdTY2RFQk9wYmNDRXZnTDhza1lsNUdj?= =?utf-8?B?SG42RzFtdXJaZVlFTVJraXIzMkxFL2JVbEZvMkJWNndFdkloWmxjUXVrNU81?= =?utf-8?B?cU1PQjYzaTBDWDBTek5aSU5VSGpieU9uSGJncTA3Vk43dE1nSWJ6RFN3YzBP?= =?utf-8?B?QXJoRUlydGJMcHEzdFY0OHR2blJURUkwaWJwclUyTzg4NVBsRndOR3Fianhk?= =?utf-8?B?V296K3RiVlhvK25BNjJBeUVQM3lhSFI0NU14NUV6QmVZWTdkQ1VUeUtJZGlt?= =?utf-8?B?MHJRSkJvZVdUUklmZHZZMXJPV2diQng3Q3JvaW9xb21wQ2VQYXdZMXdZQzV4?= =?utf-8?B?RFg2UDlNdGZvT0xUM0QxQVFwTXZIVUZkTlhMdEhxNGdMWXhaR2llbCsxam4r?= =?utf-8?B?VnlieHNZSjJxRzhCNjNmNXVnMXBkK1d6RmgrUUdjNVh5ZlRzd1lLWU16dmtY?= =?utf-8?B?NEpMZEovbHNUMWxDWHBVSVBYcnA5SDE5NVF5L0J6YW5LbXF1THYxQ0NKR2x5?= =?utf-8?B?NDJHb2JYd2pmbXlLOFhuUmJIaUVhN3NzTEd1dGw2MVM3a1lKTVBEUzNjMEUx?= =?utf-8?B?Vjh2MzVzNjRvZkZkZk16aUlQRjU1U2JyZzF4azY5OERFQVVpK29qRW9OM3lF?= =?utf-8?B?QUxqRXFyRGo1UXNJcnNPYWpleDVuSi8vQ1FlV05YNW5YblJOZW9IQXB1M2s4?= =?utf-8?B?SnpaNmdicHVqczBIWFdpZVkxYlN6U052Vnpvbnd1dzBvMTM4SDNFci90RUln?= =?utf-8?B?dVVsWnM0OWVQVTVmMTNxR1dDREFCVmpaSm9RTEtrSytpWUo3YW5pc2x0Uk5T?= =?utf-8?B?K05XRStVUk5PVzVBVHplSXVrVmlyNDBnME1RMFV6cDlDQjRTR0t1eEx1RHo0?= =?utf-8?B?ME54OFNvdmVVQmpPTk5RTGJHZ2VWWU12V1BwNEpNTDVSWnhPT2Yya01hbzBG?= =?utf-8?B?OGhVL3VGa1gzY05TYzMxNG9RZ2pwUjFaV1RRU3dGVi9nQWhTTWZPM2hiZ000?= =?utf-8?B?dDc2RS9yQTR1UUtRc3JlMTBaV3lPTkJtVmsycFkxRHNWMW1seUZBeTFCcGR2?= =?utf-8?B?dThhaDVIckhzRHpVOWQ2d25YbFFqalk1T3dCQTB3U3kyOTR2RDJ1WWpRWWFE?= =?utf-8?B?OVhjcmFyYjVPN0RLNlZwTFBDd0JRKzd5WHhTTjFXUmhrUXQ3NXVQNVlDblRa?= =?utf-8?B?U0Irbk0vVDQxditBekdtYm9IeVBzVlg3Rzh0WFhRRWpMNitlNHQ1QnZTcEZC?= =?utf-8?B?YVNKQVBScE5XZDdkNXFBaVNPZVh3bWJWU05iRi9Kb1h3c3hLdFFhSmQ4YUFP?= =?utf-8?B?QTg4VXYyT3RVRFBMTjFjSHBsejBJcWxDZ0d4V01TMnlSTk9Vd2tlRk44N3FP?= =?utf-8?Q?OdU62sk7DxK0LuVrV6U9x6POZMXQB8=3D?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:CO6PR18MB3860.namprd18.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(366016)(376014)(38070700018); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?ZFVBZTQvUHZoeG82WUY3clhzSHpnRTJRN0ZBV3gzYkh0UDdvblc3MFBRRlNM?= =?utf-8?B?R3VoRWNGbWlsOUJIRXhuU3JtMUxVNUdyWmFlS1krYXVEN05HdTNvUDlvSFd5?= =?utf-8?B?Ymprak1kbG41VC9WSitVcTZBbU9ZNDRidHpVVWRkcEFtUHIvV3NZU1dPcWdT?= =?utf-8?B?TEROL1lGd0U1R2RpSEZvZ2l0TFdZcnFMNklkRGxicGZDSDFKVlVPRVVsQ0VC?= =?utf-8?B?cjNJVGIva3N3ZDhrOHYvSU51dnhFT2ZhdSs2VVNsT0V4OVJzSXM1MU1PN1pK?= =?utf-8?B?WWwxYUJiSVpqc203dHlMSlN4Vkgva3plR3NZcjNxWStkSG43dlgvQklOekFr?= =?utf-8?B?TUR1Q1NLQktLQ0xXOEFWSDdFSkVYZFA1a3BMK1dhWThKamVQOTBlcXhqTERV?= =?utf-8?B?R0tFRVBmcFBVZHR2N01yVlRVQVp0TTVoR2J4SHV6RHBpM0d1cnB3MUp3Qmti?= =?utf-8?B?YjNWRTRQSk9NRGt6SGVMNU8yV25haFVnWmJrSExyVzd0SVh1aUhkbjBxVitr?= =?utf-8?B?SUdiZno5MXAvWjR5bXZzQ080TmhNMDR4Tm90dWk1M3U2SXNxTkNGYTV6bkVp?= =?utf-8?B?dTRPU1lVS3JMblZwM1ZqaFZJZjRKeU81V3FuVzlEM1RVU3RjZzhnVTZiVm9v?= =?utf-8?B?a2I5NzlZOW9JQ2ozUkVUQzJRVXNMVUFVcUFOT0t1bDZzQlZBMFo5ZTdja2Fr?= =?utf-8?B?MVU3Vlp0Y2RqWW9rM2wySEpydlRWZmVCdzdUSkd0VTVxa3A3Q0crVjlySjJs?= =?utf-8?B?RWNheWsyRUM2NmdBRWlDeEJnZGh2dnhnSVhuTzJZY3RsQmVySUxNKzV3Q0ly?= =?utf-8?B?UXhxRFNWVWlycjNPOUlCcllIbkk2RHdFK3RkQkM5YWFKVnM4VzdwVzJhL2dH?= =?utf-8?B?eHoySVcxd2RnR3dHSllJSkdWTW1UR2tjUEsvakUxRVNScm96RURRbDljL21W?= =?utf-8?B?ZnNCOEh4YktEYW9XaEtwci9tcm1ybW1oUVNFT1BVVFZjWmxZb2pXVE9sRHVZ?= =?utf-8?B?RVVMSXVOR2lUOFZLSkFQSFlkc3ZoUGlSdW9GY3JmMjVYR1l4ZkdxRHJ0dlZq?= =?utf-8?B?amhMK2trZUFLc2VMR294TTBBQjlhektOS096V3N5WitrdkppMEpGZ2FFNkND?= =?utf-8?B?ZGZ5eGhqMXVGR1p3dDRJMVd4MVBuVGdNNHBWZzgrNStBMC91c2xTYlNhNXpS?= =?utf-8?B?clpXNThJMGJlNDlsS0p1a2ZCQXR0QTBLUnE2SFpCbE5kYVNHWFZGVXR3UFcv?= =?utf-8?B?cFRDbjh2S09mS0VwTENOSmUrcS9KWEZMelNPdWtXNDl2RTRsMTBPWnFxaTJX?= =?utf-8?B?blNObGIxV2UvSWNBWjJOT1FacXMxbXZNUDQzOHFud2Rja3BVRUZKZTk3aGtK?= =?utf-8?B?elhxaGVyTmlOVDYyd0dpbzkwTlQ0MldFRUF2dEpYTFVYdEwxMDF4ayt2aTR0?= =?utf-8?B?VmZ0WEtVWFJNcGR0NXBjdmFSek9kemtBU1NKUVlhaWozRks2UG1zb3dkbXNX?= =?utf-8?B?bW5oQkN0aUtzTW5ZK2pwTEwvUnppWnBDaENZME40c0F6N1ZhSW5lTExOWkpu?= =?utf-8?B?VmJod2plQ1IvR08rMXN3SzFSOFkxU0QxL2J6QlF3MVRGV3Uxcys3WVE3ZHk4?= =?utf-8?B?amhWdENuMWh2akxONDROT3luanNTeldVWkNZTEczcDZQQlJNdHk4U3BPUGxn?= =?utf-8?B?eXljRmJUNXFMeU1SWUo5cVQ1c2dkYVQrVXcyZDVlNDlLZU1GQ3ZOTHBRZUpO?= =?utf-8?B?VEhNbFhWR3Qybmg0N3MyOXk1aHVwZUtTT1BabSsxSG1JMjJvZTVaWW4vMTBI?= =?utf-8?B?bWVyd2loTHlzSExjbE5hYUlDV1BsMWFIMWVuMjVUeWtwU1Jmc0hhZDdkc1ZX?= =?utf-8?B?N0ZiVVp5RTMwL0xLS2kwNmRZeW4vMXVkeStUdlZBOUhSS3ZXMS85eGdmeld6?= =?utf-8?B?SFlYYitqemtTY1N2bzh3NG9xUk1zTmFsaDdtYjlFbzdKa1pUS04wSDlYdXdC?= =?utf-8?B?S2RDaWd5WHlDM1g0S0VGd3pjSDZPUzU0RlVoK3Y5eXpOZU5Jc3FKQjFVQUJr?= =?utf-8?B?dDM1STZHUWY0aUNJVXJwQWM2VGZLeXVmaDlIVEJlWmxXTHFseXZyQzc1M25j?= =?utf-8?Q?ErD4=3D?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: marvell.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CO6PR18MB3860.namprd18.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4ff3b84c-8e8d-4d82-ae49-08ddde1f51c1 X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Aug 2025 06:20:25.3445 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 4qxdxATSCrJcbstMMOzci6fltZkmh715wFcPVL1IV24ctjUsZy20SJJV5kZY1uo9mgoQ/EaaeaILi5NwzKw75Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR18MB3651 X-Authority-Analysis: v=2.4 cv=K5AiHzWI c=1 sm=1 tr=0 ts=68a2c62c cx=c_pps a=SWO9grYKeR/AU/Iit+pPqg==:117 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=wKuvFiaSGQ0qltdbU6+NXLB8nM8=:19 a=Ol13hO9ccFRV9qXi2t6ftBPywas=:19 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10 a=2OwXVqhp2XgA:10 a=-AAbraWEqlQA:10 a=M5GUcnROAAAA:8 a=MrNDPUICBXzCsHeQH3AA:9 a=9OfI23ZP95Qc8IEM:21 a=QEXdDO2ut3YA:10 a=OBjm3rFKGHvpk9ecZwUJ:22 X-Proofpoint-GUID: qbnnjRuDbr15b5-x6E-QE5jCK3LHBEyu X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwODE4MDA1OSBTYWx0ZWRfXxABR8w9vtaYs SRQEk7EZq75zRM21I/VUOQs2bDXaj4mNZab4xJQa8N8gFHlJwsnMgIosiSkjU19dOFWf/IcW2Mw bQvtFXO8Cj6YSQ9gFy2pqAWIVNW2CvIHubijqYrlupI5EpaYCtVH42hJ5UfvkjJe/9d6wkQQFIJ oC6Kquj2H5AuIgpSXceosOo74ffPF++zYzbGSyAqlVcT869Dtzshfq2No70/0Go1WajxiEXU6xe fIK2qk0q5aNgNFXBkXylv3dE5Df73C7eWKcFQUd8Obf4MzxVWzWDdQeuKQCyDCaVfYbBMnYRfmR PT8j6im3LDRPF0hyo30P+dA5W5vd89yyrotTUYJ75oVq/QQriO4VataixtO5tIFSt33+Iy6dxYo rjwIURu0NiX2iL+LNW/baGn1fxJ9NlraNAangxK5ifzCnI98ScmUEoU6OARnIcy9+Mfca1Jy X-Proofpoint-ORIG-GUID: qbnnjRuDbr15b5-x6E-QE5jCK3LHBEyu X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1099,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-08-18_02,2025-08-14_01,2025-03-28_01 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org PiA+IEZyb206IHNrb3JpQG1hcnZlbGwuY29tIFttYWlsdG86c2tvcmlAbWFydmVsbC5jb21dDQo+ ID4gU2VudDogVGh1cnNkYXksIDE0IEF1Z3VzdCAyMDI1IDEwLjEwDQo+ID4NCj4gPiBBZGRpbmcg bGluayB0eXBlIHBhcmFtZXRlciB0byBwcm92aWRlIHRoZSB0eXBlIG9mIHBvcnQgbGlrZSB0d2lz dGVkDQo+ID4gcGFpciwgZmlicmUgZXRjLg0KPiA+DQo+ID4gQWxzbyBhZGRlZCBhbiBBUEkgdG8g Y29udmVydCB0aGUgUlRFX0VUSF9MSU5LX1RZUEVfWFhYIHRvIGEgcmVhZGFibGUNCj4gPiBzdHJp bmcuDQo+IA0KPiBQbGVhc2UgY29uc2lkZXIgaWYgImNvbm5lY3RvciIgaXMgYSBiZXR0ZXIgbmFt ZSB0aGFuICJsaW5rIHR5cGUiLCBpZiB0aGlzIGlzIHJlbGF0ZWQNCj4gdG8gcGh5c2ljYWwgaW50 ZXJmYWNlcyBvbmx5Lg0KPiBFLmcuIGlzIHRoZXJlIGFuICJMQUNQIiBsaW5rIHR5cGUgZm9yIGxp bmsgYWdncmVnYXRlcyAoYm9uZGVkIGxpbmtzKT8NCj4gDQo+IEFsc28sIHNob3VsZCBhICJ2aXJ0 dWFsIiBsaW5rIHR5cGUgKG9yIGNvbm5lY3RvcikgYmUgYWRkZWQgZm9yDQo+IFRBUC9WaXJ0aW8v Vk1YTkVUMy9yaW5nIGFuZCBzaW1pbGFyIG5vbi1waHlzaWNhbCBpbnRlcmZhY2VzPw0KPiANCg0K TXkgdGhvdWdodCBwcm9jZXNzIGlzIHRvd2FyZHMgdGhlIHBoeXNpY2FsIGludGVyZmFjZXMgb25s eS4gSGVuY2UgY29uc2lkZXJpbmcgeW91ciBpbnB1dCB0byByZW5hbWUgYXMgImNvbm5lY3Rvci4i DQpBbHNvLCBmb3Igbm9uLXBoeXNpY2FsIGludGVyZmFjZXMsIEtlZXBpbmcgUlRFX0VUSF9MSU5L X1RZUEVfT1RIRVIgYWxvbmcgd2l0aCBSVEVfRVRIX0xJTktfVFlQRV9VTktOT1dOLiBTaW1pbGFy IGFzIHByb3ZpZGVkIGJ5IEV0aHRvb2wuDQoNCj4gTW9yZSBjb21tZW50cyBpbmxpbmUgYmVsb3cu DQo+IA0KPiA+DQo+ID4gU2lnbmVkLW9mZi1ieTogTml0aGluIERhYmlscHVyYW0gPG5kYWJpbHB1 cmFtQG1hcnZlbGwuY29tPg0KPiA+IFNpZ25lZC1vZmYtYnk6IFN1bmlsIEt1bWFyIEtvcmkgPHNr b3JpQG1hcnZlbGwuY29tPg0KPiA+IC0tLQ0KPiA+IHYzLi52NDoNCj4gPiAgLSBDb252ZXJ0ICNk ZWZpbmUgaW50byBlbnVtLg0KPiA+ICAtIEVuaGFuY2UgY29tbWVudHMgZm9yIGVhY2ggcG9ydCBs aW5rIHR5cGUuDQo+ID4gIC0gRml4IHRlc3QgZmFpbHVyZXMuDQo+ID4gdjIuLnYzDQo+ID4gIC0g RXh0ZW5kIGxpbmsgdHlwZSBsaXN0IGFzIHBlciBzdWdnZXN0aW9uDQo+ID4gIGFwcC90ZXN0L3Rl c3RfZXRoZGV2X2xpbmsuYyAgICAgIHwgMTggKysrKysrKy0tLS0tDQo+ID4gIGxpYi9ldGhkZXYv ZXRoZGV2X3RyYWNlLmggICAgICAgIHwgIDcgKysrKysNCj4gPiAgbGliL2V0aGRldi9ldGhkZXZf dHJhY2VfcG9pbnRzLmMgfCAgMyArKw0KPiA+ICBsaWIvZXRoZGV2L3J0ZV9ldGhkZXYuYyAgICAg ICAgICB8IDQ2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKystLQ0KPiA+ICBsaWIvZXRoZGV2 L3J0ZV9ldGhkZXYuaCAgICAgICAgICB8IDQ4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrDQo+ID4gIDUgZmlsZXMgY2hhbmdlZCwgMTEzIGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25z KC0pDQo+ID4NCj4gPiBkaWZmIC0tZ2l0IGEvYXBwL3Rlc3QvdGVzdF9ldGhkZXZfbGluay5jIGIv YXBwL3Rlc3QvdGVzdF9ldGhkZXZfbGluay5jDQo+ID4gaW5kZXggZjA2M2E1ZmUyNi4uNWQxYTc4 NDIwOCAxMDA2NDQNCj4gPiAtLS0gYS9hcHAvdGVzdC90ZXN0X2V0aGRldl9saW5rLmMNCj4gPiAr KysgYi9hcHAvdGVzdC90ZXN0X2V0aGRldl9saW5rLmMNCj4gPiBAQCAtMTcsMjMgKzE3LDI1IEBA IHRlc3RfbGlua19zdGF0dXNfdXBfZGVmYXVsdCh2b2lkKQ0KPiA+ICAJCS5saW5rX3NwZWVkID0g UlRFX0VUSF9TUEVFRF9OVU1fMl81RywNCj4gPiAgCQkubGlua19zdGF0dXMgPSBSVEVfRVRIX0xJ TktfVVAsDQo+ID4gIAkJLmxpbmtfYXV0b25lZyA9IFJURV9FVEhfTElOS19BVVRPTkVHLA0KPiA+ IC0JCS5saW5rX2R1cGxleCA9IFJURV9FVEhfTElOS19GVUxMX0RVUExFWA0KPiA+ICsJCS5saW5r X2R1cGxleCA9IFJURV9FVEhfTElOS19GVUxMX0RVUExFWCwNCj4gPiArCQkubGlua190eXBlID0g UlRFX0VUSF9MSU5LX1RZUEVfTk9ORQ0KPiANCj4gUlRFX0VUSF9MSU5LX1RZUEVfVU5LTk9XTg0K QWNrLg0KDQo+IA0KPiA+ICAJfTsNCj4gPiAgCWNoYXIgdGV4dFtSVEVfRVRIX0xJTktfTUFYX1NU Ul9MRU5dOw0KPiA+DQo+ID4gIAlyZXQgPSBydGVfZXRoX2xpbmtfdG9fc3RyKHRleHQsIHNpemVv Zih0ZXh0KSwgJmxpbmtfc3RhdHVzKTsNCj4gPiAgCVJURV9URVNUX0FTU0VSVChyZXQgPiAwLCAi RmFpbGVkIHRvIGZvcm1hdCBkZWZhdWx0IHN0cmluZ1xuIik7DQo+ID4gIAlwcmludGYoIkRlZmF1 bHQgbGluayB1cCAjMTogJXNcbiIsIHRleHQpOw0KPiA+IC0JVEVTVF9BU1NFUlRfQlVGRkVSU19B UkVfRVFVQUwoIkxpbmsgdXAgYXQgMi41IEdicHMgRkRYIEF1dG9uZWciLA0KPiA+ICsJVEVTVF9B U1NFUlRfQlVGRkVSU19BUkVfRVFVQUwoIkxpbmsgdXAgYXQgMi41IEdicHMgRkRYIEF1dG9uZWcN Cj4gPiArTm9uZSIsDQo+IA0KPiAiTGluayB1cCBhdCAyLjUgR2JwcyBGRFggQXV0b25lZyBVbmtu b3duIg0KQWNrLg0KPiANCj4gPiAgCQl0ZXh0LCBzdHJsZW4odGV4dCksICJJbnZhbGlkIGRlZmF1 bHQgbGluayBzdGF0dXMgc3RyaW5nIik7DQo+ID4NCj4gPiAgCWxpbmtfc3RhdHVzLmxpbmtfZHVw bGV4ID0gUlRFX0VUSF9MSU5LX0hBTEZfRFVQTEVYOw0KPiA+ICAJbGlua19zdGF0dXMubGlua19h dXRvbmVnID0gUlRFX0VUSF9MSU5LX0ZJWEVEOw0KPiA+ICAJbGlua19zdGF0dXMubGlua19zcGVl ZCA9IFJURV9FVEhfU1BFRURfTlVNXzEwTTsNCj4gPiArCWxpbmtfc3RhdHVzLmxpbmtfdHlwZSA9 IFJURV9FVEhfTElOS19UWVBFX1NHTUlJOw0KPiA+ICAJcmV0ID0gcnRlX2V0aF9saW5rX3RvX3N0 cih0ZXh0LCBzaXplb2YodGV4dCksICZsaW5rX3N0YXR1cyk7DQo+ID4gIAlwcmludGYoIkRlZmF1 bHQgbGluayB1cCAjMjogJXNcbiIsIHRleHQpOw0KPiA+ICAJUlRFX1RFU1RfQVNTRVJUKHJldCA+ IDAsICJGYWlsZWQgdG8gZm9ybWF0IGRlZmF1bHQgc3RyaW5nXG4iKTsNCj4gPiAtCVRFU1RfQVNT RVJUX0JVRkZFUlNfQVJFX0VRVUFMKCJMaW5rIHVwIGF0IDEwIE1icHMgSERYIEZpeGVkIiwNCj4g PiArCVRFU1RfQVNTRVJUX0JVRkZFUlNfQVJFX0VRVUFMKCJMaW5rIHVwIGF0IDEwIE1icHMgSERY IEZpeGVkIFNHTUlJIiwNCj4gPiAgCQl0ZXh0LCBzdHJsZW4odGV4dCksICJJbnZhbGlkIGRlZmF1 bHQgbGluayBzdGF0dXMgIg0KPiA+ICAJCSJzdHJpbmcgd2l0aCBIRFgiKTsNCj4gPg0KPiA+IEBA IC00MSw3ICs0Myw3IEBAIHRlc3RfbGlua19zdGF0dXNfdXBfZGVmYXVsdCh2b2lkKQ0KPiA+ICAJ cmV0ID0gcnRlX2V0aF9saW5rX3RvX3N0cih0ZXh0LCBzaXplb2YodGV4dCksICZsaW5rX3N0YXR1 cyk7DQo+ID4gIAlwcmludGYoIkRlZmF1bHQgbGluayB1cCAjMzogJXNcbiIsIHRleHQpOw0KPiA+ ICAJUlRFX1RFU1RfQVNTRVJUKHJldCA+IDAsICJGYWlsZWQgdG8gZm9ybWF0IGRlZmF1bHQgc3Ry aW5nXG4iKTsNCj4gPiAtCVRFU1RfQVNTRVJUX0JVRkZFUlNfQVJFX0VRVUFMKCJMaW5rIHVwIGF0 IFVua25vd24gSERYIEZpeGVkIiwNCj4gPiArCVRFU1RfQVNTRVJUX0JVRkZFUlNfQVJFX0VRVUFM KCJMaW5rIHVwIGF0IFVua25vd24gSERYIEZpeGVkDQo+IFNHTUlJIiwNCj4gPiAgCQl0ZXh0LCBz dHJsZW4odGV4dCksICJJbnZhbGlkIGRlZmF1bHQgbGluayBzdGF0dXMgIg0KPiA+ICAJCSJzdHJp bmcgd2l0aCBIRFgiKTsNCj4gPg0KPiA+IEBAIC00OSw3ICs1MSw3IEBAIHRlc3RfbGlua19zdGF0 dXNfdXBfZGVmYXVsdCh2b2lkKQ0KPiA+ICAJcmV0ID0gcnRlX2V0aF9saW5rX3RvX3N0cih0ZXh0 LCBzaXplb2YodGV4dCksICZsaW5rX3N0YXR1cyk7DQo+ID4gIAlwcmludGYoIkRlZmF1bHQgbGlu ayB1cCAjMzogJXNcbiIsIHRleHQpOw0KPiA+ICAJUlRFX1RFU1RfQVNTRVJUKHJldCA+IDAsICJG YWlsZWQgdG8gZm9ybWF0IGRlZmF1bHQgc3RyaW5nXG4iKTsNCj4gPiAtCVRFU1RfQVNTRVJUX0JV RkZFUlNfQVJFX0VRVUFMKCJMaW5rIHVwIGF0IE5vbmUgSERYIEZpeGVkIiwNCj4gPiArCVRFU1Rf QVNTRVJUX0JVRkZFUlNfQVJFX0VRVUFMKCJMaW5rIHVwIGF0IE5vbmUgSERYIEZpeGVkIFNHTUlJ IiwNCj4gPiAgCQl0ZXh0LCBzdHJsZW4odGV4dCksICJJbnZhbGlkIGRlZmF1bHQgbGluayBzdGF0 dXMgIg0KPiA+ICAJCSJzdHJpbmcgd2l0aCBIRFgiKTsNCj4gPg0KPiA+IEBAIC01Nyw2ICs1OSw3 IEBAIHRlc3RfbGlua19zdGF0dXNfdXBfZGVmYXVsdCh2b2lkKQ0KPiA+ICAJbGlua19zdGF0dXMu bGlua19zcGVlZCA9IFJURV9FVEhfU1BFRURfTlVNXzQwMEc7DQo+ID4gIAlsaW5rX3N0YXR1cy5s aW5rX2R1cGxleCA9IFJURV9FVEhfTElOS19IQUxGX0RVUExFWDsNCj4gPiAgCWxpbmtfc3RhdHVz LmxpbmtfYXV0b25lZyA9IFJURV9FVEhfTElOS19BVVRPTkVHOw0KPiA+ICsJbGlua19zdGF0dXMu bGlua190eXBlID0gUlRFX0VUSF9MSU5LX1RZUEVfR0FVSTsNCj4gPiAgCXJldCA9IHJ0ZV9ldGhf bGlua190b19zdHIodGV4dCwgc2l6ZW9mKHRleHQpLCAmbGlua19zdGF0dXMpOw0KPiA+ICAJcHJp bnRmKCJEZWZhdWx0IGxpbmsgdXAgIzQ6bGVuID0gJWQsICVzXG4iLCByZXQsIHRleHQpOw0KPiA+ ICAJUlRFX1RFU1RfQVNTRVJUKHJldCA8IFJURV9FVEhfTElOS19NQVhfU1RSX0xFTiwgQEAgLTky LDcgKzk1LDggQEANCj4gPiB0ZXN0X2xpbmtfc3RhdHVzX2ludmFsaWQodm9pZCkNCj4gPiAgCQku bGlua19zcGVlZCA9IDU1NTU1LA0KPiA+ICAJCS5saW5rX3N0YXR1cyA9IFJURV9FVEhfTElOS19V UCwNCj4gPiAgCQkubGlua19hdXRvbmVnID0gUlRFX0VUSF9MSU5LX0FVVE9ORUcsDQo+ID4gLQkJ LmxpbmtfZHVwbGV4ID0gUlRFX0VUSF9MSU5LX0ZVTExfRFVQTEVYDQo+ID4gKwkJLmxpbmtfZHVw bGV4ID0gUlRFX0VUSF9MSU5LX0ZVTExfRFVQTEVYLA0KPiA+ICsJCS5saW5rX3R5cGUgPSBSVEVf RVRIX0xJTktfVFlQRV9VTktOT1dODQo+ID4gIAl9Ow0KPiA+ICAJY2hhciB0ZXh0W1JURV9FVEhf TElOS19NQVhfU1RSX0xFTl07DQo+ID4NCj4gPiBAQCAtMTAwLDcgKzEwNCw3IEBAIHRlc3RfbGlu a19zdGF0dXNfaW52YWxpZCh2b2lkKQ0KPiA+ICAJUlRFX1RFU1RfQVNTRVJUKHJldCA8IFJURV9F VEhfTElOS19NQVhfU1RSX0xFTiwNCj4gPiAgCQkiRmFpbGVkIHRvIGZvcm1hdCBpbnZhbGlkIHN0 cmluZ1xuIik7DQo+ID4gIAlwcmludGYoImludmFsaWQgbGluayB1cCAjMTogbGVuPSVkICVzXG4i LCByZXQsIHRleHQpOw0KPiA+IC0JVEVTVF9BU1NFUlRfQlVGRkVSU19BUkVfRVFVQUwoIkxpbmsg dXAgYXQgSW52YWxpZCBGRFggQXV0b25lZyIsDQo+ID4gKwlURVNUX0FTU0VSVF9CVUZGRVJTX0FS RV9FUVVBTCgiTGluayB1cCBhdCBJbnZhbGlkIEZEWCBBdXRvbmVnDQo+ID4gK1Vua25vd24iLA0K PiA+ICAJCXRleHQsIHN0cmxlbih0ZXh0KSwgIkluY29ycmVjdCBpbnZhbGlkIGxpbmsgc3RhdHVz IHN0cmluZyIpOw0KPiA+DQo+ID4gIAlyZXR1cm4gVEVTVF9TVUNDRVNTOw0KPiA+IGRpZmYgLS1n aXQgYS9saWIvZXRoZGV2L2V0aGRldl90cmFjZS5oIGIvbGliL2V0aGRldi9ldGhkZXZfdHJhY2Uu aA0KPiA+IGluZGV4IDQ4MmJlZmMyMDkuLmM1Y2JhMGVkYmEgMTAwNjQ0DQo+ID4gLS0tIGEvbGli L2V0aGRldi9ldGhkZXZfdHJhY2UuaA0KPiA+ICsrKyBiL2xpYi9ldGhkZXYvZXRoZGV2X3RyYWNl LmgNCj4gPiBAQCAtMjExMCw2ICsyMTEwLDEzIEBAIFJURV9UUkFDRV9QT0lOVF9GUCgNCj4gPiAg CXJ0ZV90cmFjZV9wb2ludF9lbWl0X3N0cmluZyhyZXQpOw0KPiA+ICApDQo+ID4NCj4gPiArUlRF X1RSQUNFX1BPSU5UX0ZQKA0KPiA+ICsJcnRlX2V0aF90cmFjZV9saW5rX3R5cGVfdG9fc3RyLA0K PiA+ICsJUlRFX1RSQUNFX1BPSU5UX0FSR1ModWludDhfdCBsaW5rX3R5cGUsIGNvbnN0IGNoYXIg KnJldCksDQo+ID4gKwlydGVfdHJhY2VfcG9pbnRfZW1pdF91OChsaW5rX3R5cGUpOw0KPiA+ICsJ cnRlX3RyYWNlX3BvaW50X2VtaXRfc3RyaW5nKHJldCk7DQo+ID4gKyk7DQo+ID4gKw0KPiA+ICAv KiBDYWxsZWQgaW4gbG9vcCBpbiBleGFtcGxlcy9ib25kIGFuZCBleGFtcGxlcy9ldGh0b29sICov DQo+ID4gUlRFX1RSQUNFX1BPSU5UX0ZQKA0KPiA+ICAJcnRlX2V0aF90cmFjZV9tYWNhZGRyX2dl dCwNCj4gPiBkaWZmIC0tZ2l0IGEvbGliL2V0aGRldi9ldGhkZXZfdHJhY2VfcG9pbnRzLmMNCj4g PiBiL2xpYi9ldGhkZXYvZXRoZGV2X3RyYWNlX3BvaW50cy5jDQo+ID4gaW5kZXggMDcxYzUwODMy Ny4uNzA2YWNkZjM1NiAxMDA2NDQNCj4gPiAtLS0gYS9saWIvZXRoZGV2L2V0aGRldl90cmFjZV9w b2ludHMuYw0KPiA+ICsrKyBiL2xpYi9ldGhkZXYvZXRoZGV2X3RyYWNlX3BvaW50cy5jDQo+ID4g QEAgLTIwNiw2ICsyMDYsOSBAQA0KPiA+IFJURV9UUkFDRV9QT0lOVF9SRUdJU1RFUihydGVfZXRo X3RyYWNlX2xpbmtfc3BlZWRfdG9fc3RyLA0KPiA+ICBSVEVfVFJBQ0VfUE9JTlRfUkVHSVNURVIo cnRlX2V0aF90cmFjZV9saW5rX3RvX3N0ciwNCj4gPiAgCWxpYi5ldGhkZXYubGlua190b19zdHIp DQo+ID4NCj4gPiArUlRFX1RSQUNFX1BPSU5UX1JFR0lTVEVSKHJ0ZV9ldGhfdHJhY2VfbGlua190 eXBlX3RvX3N0ciwNCj4gPiArCWxpYi5ldGhkZXYubGlua190eXBlX3RvX3N0cikNCj4gPiArDQo+ ID4gIFJURV9UUkFDRV9QT0lOVF9SRUdJU1RFUihydGVfZXRoX3RyYWNlX3N0YXRzX2dldCwNCj4g PiAgCWxpYi5ldGhkZXYuc3RhdHNfZ2V0KQ0KPiA+DQo+ID4gZGlmZiAtLWdpdCBhL2xpYi9ldGhk ZXYvcnRlX2V0aGRldi5jIGIvbGliL2V0aGRldi9ydGVfZXRoZGV2LmMgaW5kZXgNCj4gPiBkZDdj MDBiYzk0Li5kYjQ5NmQ3MGM0IDEwMDY0NA0KPiA+IC0tLSBhL2xpYi9ldGhkZXYvcnRlX2V0aGRl di5jDQo+ID4gKysrIGIvbGliL2V0aGRldi9ydGVfZXRoZGV2LmMNCj4gPiBAQCAtMzI4NSwxOCAr MzI4NSw2MCBAQCBydGVfZXRoX2xpbmtfdG9fc3RyKGNoYXIgKnN0ciwgc2l6ZV90IGxlbiwNCj4g PiBjb25zdCBzdHJ1Y3QgcnRlX2V0aF9saW5rICpldGhfbGluaykNCj4gPiAgCWlmIChldGhfbGlu ay0+bGlua19zdGF0dXMgPT0gUlRFX0VUSF9MSU5LX0RPV04pDQo+ID4gIAkJcmV0ID0gc25wcmlu dGYoc3RyLCBsZW4sICJMaW5rIGRvd24iKTsNCj4gPiAgCWVsc2UNCj4gPiAtCQlyZXQgPSBzbnBy aW50ZihzdHIsIGxlbiwgIkxpbmsgdXAgYXQgJXMgJXMgJXMiLA0KPiA+ICsJCXJldCA9IHNucHJp bnRmKHN0ciwgbGVuLCAiTGluayB1cCBhdCAlcyAlcyAlcyAlcyIsDQo+ID4gIAkJCXJ0ZV9ldGhf bGlua19zcGVlZF90b19zdHIoZXRoX2xpbmstPmxpbmtfc3BlZWQpLA0KPiA+ICAJCQkoZXRoX2xp bmstPmxpbmtfZHVwbGV4ID09IFJURV9FVEhfTElOS19GVUxMX0RVUExFWCkgPw0KPiA+ICAJCQki RkRYIiA6ICJIRFgiLA0KPiA+ICAJCQkoZXRoX2xpbmstPmxpbmtfYXV0b25lZyA9PSBSVEVfRVRI X0xJTktfQVVUT05FRykgPw0KPiA+IC0JCQkiQXV0b25lZyIgOiAiRml4ZWQiKTsNCj4gPiArCQkJ IkF1dG9uZWciIDogIkZpeGVkIiwNCj4gPiArCQkJcnRlX2V0aF9saW5rX3R5cGVfdG9fc3RyKGV0 aF9saW5rLT5saW5rX3R5cGUpKTsNCj4gPg0KPiA+ICAJcnRlX2V0aF90cmFjZV9saW5rX3RvX3N0 cihsZW4sIGV0aF9saW5rLCBzdHIsIHJldCk7DQo+ID4NCj4gPiAgCXJldHVybiByZXQ7DQo+ID4g IH0NCj4gPg0KPiA+ICtSVEVfRVhQT1JUX0VYUEVSSU1FTlRBTF9TWU1CT0wocnRlX2V0aF9saW5r X3R5cGVfdG9fc3RyLCAyNS4xMSkgY29uc3QNCj4gPiArY2hhciAqIHJ0ZV9ldGhfbGlua190eXBl X3RvX3N0cihlbnVtIHJ0ZV9ldGhfbGlua190eXBlIGxpbmtfdHlwZSkgew0KPiA+ICsJc3RhdGlj IGNvbnN0IGNoYXIgKiBjb25zdCBsaW5rX3R5cGVfc3RyW10gPSB7DQo+ID4gKwkJW1JURV9FVEhf TElOS19UWVBFX05PTkVdID0gIk5vbmUiLA0KPiA+ICsJCVtSVEVfRVRIX0xJTktfVFlQRV9UUF0g PSAiVHdpc3RlZCBQYWlyIiwNCj4gPiArCQlbUlRFX0VUSF9MSU5LX1RZUEVfQVVJXSA9ICJBdHRh Y2htZW50IFVuaXQgSW50ZXJmYWNlIiwNCj4gPiArCQlbUlRFX0VUSF9MSU5LX1RZUEVfTUlJXSA9 ICJNZWRpYSBJbmRlcGVuZGVudCBJbnRlcmZhY2UiLA0KPiA+ICsJCVtSVEVfRVRIX0xJTktfVFlQ RV9GSUJFUl0gPSAiRmliZXIiLA0KPiA+ICsJCVtSVEVfRVRIX0xJTktfVFlQRV9CTkNdID0gIkJO QyIsDQo+ID4gKwkJW1JURV9FVEhfTElOS19UWVBFX0RBXSA9ICJEaXJlY3QgQXR0YWNoIENvcHBl ciIsDQo+IA0KPiBSVEVfRVRIX0xJTktfVFlQRV9EQUMNCkFjay4NCg0KPiANCj4gPiArCQlbUlRF X0VUSF9MSU5LX1RZUEVfU0dNSUldID0gIlNHTUlJIiwNCj4gPiArCQlbUlRFX0VUSF9MSU5LX1RZ UEVfUVNHTUlJXSA9ICJRU0dNSUkiLA0KPiA+ICsJCVtSVEVfRVRIX0xJTktfVFlQRV9YRkldID0g IlhGSSIsDQo+ID4gKwkJW1JURV9FVEhfTElOS19UWVBFX1NGSV0gPSAiU0ZJIiwNCj4gPiArCQlb UlRFX0VUSF9MSU5LX1RZUEVfWExBVUldID0gIlhMQVVJIiwNCj4gPiArCQlbUlRFX0VUSF9MSU5L X1RZUEVfR0FVSV0gPSAiR0FVSSIsDQo+ID4gKwkJW1JURV9FVEhfTElOS19UWVBFX1hBVUldID0g IlhBVUkiLA0KPiA+ICsJCVtSVEVfRVRIX0xJTktfVFlQRV9DQVVJXSA9ICJDQVVJIiwNCj4gPiAr CQlbUlRFX0VUSF9MSU5LX1RZUEVfTEFVSV0gPSAiTEFVSSIsDQo+ID4gKwkJW1JURV9FVEhfTElO S19UWVBFX1NGUF0gPSAiU0ZQIiwNCj4gPiArCQlbUlRFX0VUSF9MSU5LX1RZUEVfU0ZQX0REXSA9 ICJTRlBfREQiLA0KPiANCj4gIlNGUC1ERCINCj4gDQpBY2suDQo+ID4gKwkJW1JURV9FVEhfTElO S19UWVBFX1NGUF9QTFVTXSA9ICJTRlBfUExVUyIsDQo+IA0KPiAiU0ZQKyINCj4gDQpBY2suDQo+ ID4gKwkJW1JURV9FVEhfTElOS19UWVBFX1NGUDI4XSA9ICJTRlAyOCIsDQo+ID4gKwkJW1JURV9F VEhfTElOS19UWVBFX1FTRlBdID0gIlFTRlAiLA0KPiA+ICsJCVtSVEVfRVRIX0xJTktfVFlQRV9R U0ZQX1BMVVNdID0gIlFTRlBfUExVUyIsDQo+IA0KPiAiUVNGUCsiDQo+IA0KQWNrLg0KPiA+ICsJ CVtSVEVfRVRIX0xJTktfVFlQRV9RU0ZQMjhdID0gIlFTRlAyOCIsDQo+ID4gKwkJW1JURV9FVEhf TElOS19UWVBFX1FTRlA1Nl0gPSAiUVNGUDU2IiwNCj4gPiArCQlbUlRFX0VUSF9MSU5LX1RZUEVf UVNGUF9ERF0gPSAiUVNGUF9ERCIsDQo+IA0KPiAiUVNGUC1ERCINCj4gDQpBY2suDQoNCj4gPiAr CQlbUlRFX0VUSF9MSU5LX1RZUEVfVU5LTk9XTl0gPSAiVW5rbm93biINCj4gPiArCX07DQo+ID4g Kwljb25zdCBjaGFyICpzdHIgPSBOVUxMOw0KPiA+ICsNCj4gPiArCWlmICgobGlua190eXBlIDwg UlRFX0RJTShsaW5rX3R5cGVfc3RyKSkgJiYgbGlua190eXBlX3N0cltsaW5rX3R5cGVdKQ0KPiA+ ICsJCXN0ciA9IGxpbmtfdHlwZV9zdHJbbGlua190eXBlXTsNCj4gPiArDQo+ID4gKwlydGVfZXRo X3RyYWNlX2xpbmtfdHlwZV90b19zdHIobGlua190eXBlLCBzdHIpOw0KPiA+ICsJcmV0dXJuIHN0 cjsNCj4gPiArfQ0KPiA+ICsNCj4gPiAgUlRFX0VYUE9SVF9TWU1CT0wocnRlX2V0aF9zdGF0c19n ZXQpDQo+ID4gIGludA0KPiA+ICBydGVfZXRoX3N0YXRzX2dldCh1aW50MTZfdCBwb3J0X2lkLCBz dHJ1Y3QgcnRlX2V0aF9zdGF0cyAqc3RhdHMpIGRpZmYNCj4gPiAtLWdpdCBhL2xpYi9ldGhkZXYv cnRlX2V0aGRldi5oIGIvbGliL2V0aGRldi9ydGVfZXRoZGV2LmggaW5kZXgNCj4gPiBmOWZiNmFl NTQ5Li45MmQxZGVkNTFmIDEwMDY0NA0KPiA+IC0tLSBhL2xpYi9ldGhkZXYvcnRlX2V0aGRldi5o DQo+ID4gKysrIGIvbGliL2V0aGRldi9ydGVfZXRoZGV2LmgNCj4gPiBAQCAtMzI5LDYgKzMyOSwz OSBAQCBzdHJ1Y3QgcnRlX2V0aF9zdGF0cyB7ICAjZGVmaW5lDQo+ID4gUlRFX0VUSF9TUEVFRF9O VU1fVU5LTk9XTiBVSU5UMzJfTUFYIC8qKjwgVW5rbm93biAqLyAgLyoqQH0qLw0KPiA+DQo+ID4g Ky8qKkB7QG5hbWUgUE9SVCB0eXBlDQo+ID4gKyAqIEV0aGVybmV0IHBvcnQgbGluayB0eXBlDQo+ ID4gKyAqLw0KPiA+ICtlbnVtIHJ0ZV9ldGhfbGlua190eXBlIHsNCj4gPiArCVJURV9FVEhfTElO S19UWVBFX05PTkUgPSAwLCAvKio8IE5vdCBkZWZpbmVkICovDQo+ID4gKwlSVEVfRVRIX0xJTktf VFlQRV9UUCwgICAgICAgLyoqPCBUd2lzdGVkIFBhaXIgKi8NCj4gPiArCVJURV9FVEhfTElOS19U WVBFX0FVSSwgICAgICAvKio8IEF0dGFjaG1lbnQgVW5pdCBJbnRlcmZhY2UgKi8NCj4gPiArCVJU RV9FVEhfTElOS19UWVBFX01JSSwgICAgICAvKio8IE1lZGlhIEluZGVwZW5kZW50IEludGVyZmFj ZSAqLw0KPiA+ICsJUlRFX0VUSF9MSU5LX1RZUEVfRklCRVIsICAgIC8qKjwgT3B0aWNhbCBGaWJl ciBMaW5rICovDQo+ID4gKwlSVEVfRVRIX0xJTktfVFlQRV9CTkMsICAgICAgLyoqPCBCTkMgTGlu ayB0eXBlIGZvciBSRiBjb25uZWN0aW9uICovDQo+ID4gKwlSVEVfRVRIX0xJTktfVFlQRV9EQSwg ICAgICAgLyoqPCBEaXJlY3QgQXR0YWNoIGNvcHBlciAqLw0KPiA+ICsJUlRFX0VUSF9MSU5LX1RZ UEVfU0dNSUksICAgIC8qKjwgU2VyaWFsIEdpZ2FiaXQgTWVkaWEgSW5kZXBlbmRlbnQNCj4gPiBJ bnRlcmZhY2UgKi8NCj4gPiArCVJURV9FVEhfTElOS19UWVBFX1FTR01JSSwgICAvKio8IExpbmsg dG8gbXVsdGlwbGV4IDQgU0dNSUkgb3ZlciBvbmUNCj4gPiBzZXJpYWwgbGluayAqLw0KPiA+ICsJ UlRFX0VUSF9MSU5LX1RZUEVfWEZJLCAgICAgIC8qKjwgMTAgR2lnYWJpdCBBdHRhY2htZW50IFVu aXQgSW50ZXJmYWNlICovDQo+ID4gKwlSVEVfRVRIX0xJTktfVFlQRV9TRkksICAgICAgLyoqPCAx MCBHaWdhYml0IFNlcmlhbCBJbnRlcmZhY2UgZm9yIG9wdGljYWwNCj4gPiBuZXR3b3JraW5nICov DQo+ID4gKwlSVEVfRVRIX0xJTktfVFlQRV9YTEFVSSwgICAgLyoqPCA0MCBHaWdhYml0IEF0dGFj aG1lbnQgVW5pdCBJbnRlcmZhY2UNCj4gKi8NCj4gPiArCVJURV9FVEhfTElOS19UWVBFX0dBVUks ICAgICAvKio8IEdpZ2FiaXQgSW50ZXJmYWNlIGZvciBiYW5kd2lkdGggbGlrZQ0KPiA+IDUwLzEw MC8yMDAgR2JwcyAqLw0KPiA+ICsJUlRFX0VUSF9MSU5LX1RZUEVfWEFVSSwgICAgIC8qKjwgMTAg R2lnYWJpdCBBdHRhY2htZW50IFVuaXQgSW50ZXJmYWNlDQo+ICovDQo+ID4gKwlSVEVfRVRIX0xJ TktfVFlQRV9DQVVJLCAgICAgLyoqPCAxMDAgR2lnYWJpdCBBdHRhY2htZW50IFVuaXQgSW50ZXJm YWNlDQo+ID4gKi8NCj4gPiArCVJURV9FVEhfTElOS19UWVBFX0xBVUksICAgICAvKio8IDUwIEdp Z2FiaXQgQXR0YWNobWVudCBVbml0IEludGVyZmFjZQ0KPiAqLw0KPiA+ICsJUlRFX0VUSF9MSU5L X1RZUEVfU0ZQLCAgICAgIC8qKjwgUGx1Z2dhYmxlIG1vZHVsZSBmb3IgMSBHaWdhYml0ICovDQo+ ID4gKwlSVEVfRVRIX0xJTktfVFlQRV9TRlBfUExVUywgLyoqPCBQbHVnZ2FibGUgbW9kdWxlIGZv ciAxMCBHaWdhYml0ICovDQo+ID4gKwlSVEVfRVRIX0xJTktfVFlQRV9TRlAyOCwgICAgLyoqPCBQ bHVnZ2FibGUgbW9kdWxlIGZvciAyNSBHaWdhYml0ICovDQo+ID4gKwlSVEVfRVRIX0xJTktfVFlQ RV9TRlBfREQsICAgLyoqPCBQbHVnZ2FibGUgbW9kdWxlIGZvciAxMDAgR2lnYWJpdCAqLw0KPiA+ ICsJUlRFX0VUSF9MSU5LX1RZUEVfUVNGUCwgICAgIC8qKjwgTW9kdWxlIHRvIG11dGlwbGV4IDQg U0ZQIGkuZS4gNCoxPTQNCj4gPiBHaWdhYml0ICovDQo+ID4gKwlSVEVfRVRIX0xJTktfVFlQRV9R U0ZQX1BMVVMsLyoqPCBNb2R1bGUgdG8gbXV0aXBsZXggNCBTRlBfUExVUyBpLmUuDQo+ID4gNCox MD00MCBHaWdhYml0ICovDQo+ID4gKwlSVEVfRVRIX0xJTktfVFlQRV9RU0ZQMjgsICAgLyoqPCBN b2R1bGUgdG8gbXV0aXBsZXggNCBTRlAyOCBpLmUuDQo+ID4gNCoyNT0xMDAgR2lnYWJpdCAqLw0K PiA+ICsJUlRFX0VUSF9MSU5LX1RZUEVfUVNGUDU2LCAgIC8qKjwgTW9kdWxlIHRvIG11dGlwbGV4 IDQgU0ZQNTYgaS5lLg0KPiA+IDQqNTA9MjAwIEdpZ2FiaXQgKi8NCj4gPiArCVJURV9FVEhfTElO S19UWVBFX1FTRlBfREQsICAvKio8IE1vZHVsZSB0byBtdXRpcGxleCA0IFNGUF9ERCBpLmUuDQo+ ID4gNCoxMDA9NDAwIEdpZ2FiaXQgKi8NCj4gPiArCVJURV9FVEhfTElOS19UWVBFX1VOS05PV04g PSAzMSwgLyoqPCBVbmtub3duIExpbmsgVHlwZSAqLw0KPiANCj4gRm9yIHJlZmVyZW5jZSwgd2Ug ZG8gaGF2ZSBib3RoIFJURV9FVEhfU1BFRURfTlVNX05PTkUgYW5kDQo+IFJURV9FVEhfU1BFRURf TlVNX1VOS05PV04sIHdoZXJlIFJURV9FVEhfU1BFRURfTlVNX05PTkUgcmVwcmVzZW50cw0KPiAi bGluayBkb3duLCB6ZXJvIHNwZWVkIiwgYW5kIFJURV9FVEhfU1BFRURfTlVNX1VOS05PV04gcmVw cmVzZW50cyAibGluayB1cCwNCj4gdW5rbm93biBzcGVlZCIuDQo+IA0KPiBCdXQgSSBkb3VidCB3 ZSBuZWVkIGJvdGggUlRFX0VUSF9MSU5LX1RZUEVfTk9ORSBhbmQNCj4gUlRFX0VUSF9MSU5LX1RZ UEVfVU5LTk9XTi4uLg0KPiBJIGFncmVlIHRoYXQgd2UgbmVlZCBhIHZhbHVlIHRvIHJlcHJlc2Vu dCAiY29ubmVjdG9yIHR5cGUgdW5rbm93biIsIGJ1dCBkbyB3ZQ0KPiBhbHNvIG5lZWQgYSB2YWx1 ZSB0byByZXByZXNlbnQgImNvbm5lY3RvciBub3QgcHJlc2VudCI/IFdoZW4gY2FuIGEgcG9ydCBo YXZlIG5vDQo+IGNvbm5lY3Rvcj8NCj4gDQo+ID4gK307DQo+ID4gKy8qKkB9Ki8NCj4gPiArDQo+ ID4gIC8qKg0KPiA+ICAgKiBBIHN0cnVjdHVyZSB1c2VkIHRvIHJldHJpZXZlIGxpbmstbGV2ZWwg aW5mb3JtYXRpb24gb2YgYW4gRXRoZXJuZXQgcG9ydC4NCj4gPiAgICovDQo+ID4gQEAgLTM0MSw2 ICszNzQsNyBAQCBzdHJ1Y3QgcnRlX2V0aF9saW5rIHsNCj4gPiAgCQkJdWludDE2X3QgbGlua19k dXBsZXggIDogMTsgIC8qKjwNCj4gPiBSVEVfRVRIX0xJTktfW0hBTEYvRlVMTF1fRFVQTEVYICov DQo+ID4gIAkJCXVpbnQxNl90IGxpbmtfYXV0b25lZyA6IDE7ICAvKio8DQo+ID4gUlRFX0VUSF9M SU5LX1tBVVRPTkVHL0ZJWEVEXSAqLw0KPiA+ICAJCQl1aW50MTZfdCBsaW5rX3N0YXR1cyAgOiAx OyAgLyoqPCBSVEVfRVRIX0xJTktfW0RPV04vVVBdDQo+ICovDQo+ID4gKwkJCXVpbnQxNl90IGxp bmtfdHlwZSAgICA6IDU7ICAvKio8IFJURV9FVEhfTElOS19UWVBFX1hYWCAqLw0KPiA+ICAJCX07 DQo+ID4gIAl9Ow0KPiA+ICB9Ow0KPiA+IEBAIC0zMTE2LDYgKzMxNTAsMjAgQEAgaW50IHJ0ZV9l dGhfbGlua19nZXRfbm93YWl0KHVpbnQxNl90IHBvcnRfaWQsDQo+ID4gc3RydWN0IHJ0ZV9ldGhf bGluayAqbGluaykgIF9fcnRlX2V4cGVyaW1lbnRhbCAgY29uc3QgY2hhcg0KPiA+ICpydGVfZXRo X2xpbmtfc3BlZWRfdG9fc3RyKHVpbnQzMl90IGxpbmtfc3BlZWQpOw0KPiA+DQo+ID4gKy8qKg0K PiA+ICsgKiBAd2FybmluZw0KPiA+ICsgKiBAYiBFWFBFUklNRU5UQUw6IHRoaXMgQVBJIG1heSBj aGFuZ2Ugd2l0aG91dCBwcmlvciBub3RpY2UuDQo+ID4gKyAqDQo+ID4gKyAqIFRoaXMgZnVuY3Rp b24gY29udmVydHMgYW4gRXRoZXJuZXQgbGluayB0eXBlIHRvIGEgc3RyaW5nLg0KPiA+ICsgKg0K PiA+ICsgKiBAcGFyYW0gbGlua190eXBlDQo+ID4gKyAqICAgVGhlIGxpbmsgdHlwZSB0byBjb252 ZXJ0Lg0KPiA+ICsgKiBAcmV0dXJuDQo+ID4gKyAqICAgVGhlIHN0cmluZyByZXByZXNlbnRhdGlv biBvZiB0aGUgbGluayB0eXBlLg0KPiA+ICsgKi8NCj4gPiArX19ydGVfZXhwZXJpbWVudGFsDQo+ ID4gK2NvbnN0IGNoYXIgKnJ0ZV9ldGhfbGlua190eXBlX3RvX3N0cihlbnVtIHJ0ZV9ldGhfbGlu a190eXBlDQo+ID4gK2xpbmtfdHlwZSk7DQo+ID4gKw0KPiA+ICAvKioNCj4gPiAgICogQHdhcm5p bmcNCj4gPiAgICogQGIgRVhQRVJJTUVOVEFMOiB0aGlzIEFQSSBtYXkgY2hhbmdlIHdpdGhvdXQg cHJpb3Igbm90aWNlLg0KPiA+IC0tDQo+ID4gMi40My4wDQoNCg==