Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sTaYw-000F3I-L5 for pgsql-hackers@arkaria.postgresql.org; Tue, 16 Jul 2024 05:17:19 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1sTaYv-00Fc2T-4U for pgsql-hackers@arkaria.postgresql.org; Tue, 16 Jul 2024 05:17:17 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sTaYu-00Fc2L-JS for pgsql-hackers@lists.postgresql.org; Tue, 16 Jul 2024 05:17:16 +0000 Received: from esa19.fujitsucc.c3s2.iphmx.com ([216.71.158.62]) by magus.postgresql.org with esmtps (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sTaYq-002MGl-UZ for pgsql-hackers@lists.postgresql.org; Tue, 16 Jul 2024 05:17:16 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=fujitsu.com; i=@fujitsu.com; q=dns/txt; s=fj1; t=1721107033; x=1752643033; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=NI9JpqmBR41FO0RVsjtcn6UIGgIpqlJCdOHomQ92mk0=; b=poylapql32eS8M1sXnoyv4TH2zyYJtc4fsMeaUA7Xda4vJUNfPdiV7ei X+ZZpt3XJ8ubfnxdSwwXnOP3sq6SSSRJwP3HuHYQrT37twZ7aoikDYIfG OaHLBYBqNuiJ1TdiFr+QEKVslQ3PzqpvifL/0M6UsYezbdFeaC/MoueFk Pi4yelxXFE9t0bMPJ9q4k+s/p8egNq5wiNMoWFOor0No8MNmY8vxakm/y iYtlNSN98e3q9WIVa8RnPawxG/zgtsVp0ugZbz6IHfj2MelX+f0cvHw9O IDOGxZbmGRq9argrpNWGtEZJsRjb7/tpn0ok8Ztmf37sU0OP9z50cIRIy w==; X-IronPort-AV: E=McAfee;i="6700,10204,11134"; a="124772939" X-IronPort-AV: E=Sophos;i="6.09,211,1716217200"; d="scan'208,223";a="124772939" Received: from mail-japanwestazlp17010000.outbound.protection.outlook.com (HELO OS0P286CU011.outbound.protection.outlook.com) ([40.93.130.0]) by ob1.fujitsucc.c3s2.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Jul 2024 14:17:10 +0900 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=CWoML3b0Kh/t95ZPHPFn/hbM+DkkZfIoCETMaQ4sotq5xN36XkmF+F114L/EBE8dj9CuxZDfO2P+TaMlHFNvfXigiOlFRykUiAd5G9qpOlBsRPwbQrXtqyX29NGAd417PGl/tGLCxWve6UD8r90PnCswloSOI9rkIAHThiX/hWs2wyfuTQddAMKgA8uvz6SbeQyqVKw6a6TWhnh0XlX37JYt99YhBJkuJHKYZ5Rjrh4nYvS7Iq5iwOMvBz9SMZm7FZHaYcxFOb+8/hP2orWXj3EdcmqEKlY0qL9DSXi4qnzBPkoLHs9xhcVB9wSyUvZMwnikBERokXLx6U2xxUtJYA== 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=Yi8gw8jPTL1nmA90QezQetWJpaoTBDuiT36maYIf0Vc=; b=olbLPURnSS4Ib3+6eDcE1WE9WSK1u237N2BtpiMQH0c2IArJwn9pS34jlaOKCqDb+R7KBojXNGdlQNRStGW1t3us3eZwjeqbCJuM9LmXhQsQPSCcagj7C3NGWEOCI49HkpZv4kOm9MkeEmSjQWThN//G2fKfysBJUFLjpgOE4vLryzU+tI+5g4WG/OZKoG8kewj1YEFolNVoBtC8Xz53eMcLKPBSOGCRbFf2dpp5gLmMcXe+g6A3ViKd4mas/Xpb12KmZ/1hTgBgRsTV7483d8eXxnkEsaEHMZtGuSE7tt8GIzycaqOkMdEfLlXe4PCn839puyGPKYPBgF6urqcrdA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=fujitsu.com; dmarc=pass action=none header.from=fujitsu.com; dkim=pass header.d=fujitsu.com; arc=none Received: from TYCPR01MB5693.jpnprd01.prod.outlook.com (2603:1096:400:47::13) by TYWPR01MB10628.jpnprd01.prod.outlook.com (2603:1096:400:2a1::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7762.29; Tue, 16 Jul 2024 05:17:06 +0000 Received: from TYCPR01MB5693.jpnprd01.prod.outlook.com ([fe80::62c3:47ca:b86:6623]) by TYCPR01MB5693.jpnprd01.prod.outlook.com ([fe80::62c3:47ca:b86:6623%3]) with mapi id 15.20.7762.027; Tue, 16 Jul 2024 05:17:06 +0000 From: "Hayato Kuroda (Fujitsu)" To: 'Amit Kapila' , "Zhijie Hou (Fujitsu)" CC: "pgsql-hackers@lists.postgresql.org" , Vitaly Davydov , Ajin Cherian Subject: RE: Slow catchup of 2PC (twophase) transactions on replica in LR Thread-Topic: Slow catchup of 2PC (twophase) transactions on replica in LR Thread-Index: AQHa0S21cBcdasfG5UO9gx19/0CtubHt2OqAgAAZxcCAAGhyAIAJWboAgAEmeJA= Date: Tue, 16 Jul 2024 05:17:06 +0000 Message-ID: References: In-Reply-To: Accept-Language: ja-JP, en-US Content-Language: ja-JP X-MS-Has-Attach: yes X-MS-TNEF-Correlator: msip_labels: =?utf-8?B?TVNJUF9MYWJlbF9hNzI5NWNjMS1kMjc5LTQyYWMtYWI0ZC0zYjBmNGZlY2Uw?= =?utf-8?B?NTBfQWN0aW9uSWQ9YWNhYzA4ZWEtYjcyMS00ZDM2LWI3ZDktNjNkYTg1MWQ1?= =?utf-8?B?ZWMyO01TSVBfTGFiZWxfYTcyOTVjYzEtZDI3OS00MmFjLWFiNGQtM2IwZjRm?= =?utf-8?B?ZWNlMDUwX0NvbnRlbnRCaXRzPTA7TVNJUF9MYWJlbF9hNzI5NWNjMS1kMjc5?= =?utf-8?B?LTQyYWMtYWI0ZC0zYjBmNGZlY2UwNTBfRW5hYmxlZD10cnVlO01TSVBfTGFi?= =?utf-8?B?ZWxfYTcyOTVjYzEtZDI3OS00MmFjLWFiNGQtM2IwZjRmZWNlMDUwX01ldGhv?= =?utf-8?B?ZD1TdGFuZGFyZDtNU0lQX0xhYmVsX2E3Mjk1Y2MxLWQyNzktNDJhYy1hYjRk?= =?utf-8?B?LTNiMGY0ZmVjZTA1MF9OYW1lPUZVSklUU1UtUkVTVFJJQ1RFROKAiztNU0lQ?= =?utf-8?B?X0xhYmVsX2E3Mjk1Y2MxLWQyNzktNDJhYy1hYjRkLTNiMGY0ZmVjZTA1MF9T?= =?utf-8?B?ZXREYXRlPTIwMjQtMDctMTZUMDU6MTM6MDZaO01TSVBfTGFiZWxfYTcyOTVj?= =?utf-8?B?YzEtZDI3OS00MmFjLWFiNGQtM2IwZjRmZWNlMDUwX1NpdGVJZD1hMTlmMTIx?= =?utf-8?Q?d-81e1-4858-a9d8-736e267fd4c7;?= authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=fujitsu.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: TYCPR01MB5693:EE_|TYWPR01MB10628:EE_ x-ms-office365-filtering-correlation-id: fd43c2f3-da01-43c8-a9f2-08dca55688d2 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230040|366016|1800799024|376014|1580799027|38070700018; x-microsoft-antispam-message-info: =?utf-8?B?ZzkrWnRNQkdMOXh5bllNZWZxdjJRbFhXTXB4WUFmZS9hVzVIK28xMHAwYWdw?= =?utf-8?B?SFZ3bEpCY1VsaEpnT1NqbW42bW8rYVlUVldkNXJTK1pEZGJ1S0dqMnR0blNQ?= =?utf-8?B?TVBTYXFUR2c5TEIzdkhabmVBZUppcWVxYXA2SDNoWHRwV3BXbzlmejBsTnNx?= =?utf-8?B?OUdFTnpxS0dYK05GdGFBbXQvWXJHQURrOGRHZHNqVVhJakdXQk1xbU1QYmhx?= =?utf-8?B?WTV4ZUlqYW9jTzBPNDVQQzdyYmYxbyt2OCtCYWVQWjVvbFJ0Q1d0cU96K0FL?= =?utf-8?B?N1RZVE83SCt1aVJDaUJqZDNmanRNZmg4Q2ZIaXFlWWd3bVJwVDBzZm5ISzZF?= =?utf-8?B?ZStSaWk1NEp5MkdDL2lyK3FJaXBKcnFheUpRQkhnMGhCOExSbWxmOUFwaEdz?= =?utf-8?B?ZmQwakNFTHBVWjEwSVNrb0thRE5rYjZNRmNBR2dLY1p1L3VKN2Q5V01uQklP?= =?utf-8?B?Mjg5aWF0VUlBc0pKZnppK2tBejJRZngwcjh2a3ZFcjF2bWxwR1o0UVIydHU3?= =?utf-8?B?TDlBSUlxNlcwMENFaER5RjBCZG9yL0loU0Z4dFIzNnptUTBOSmJCazk0M01J?= =?utf-8?B?ZVJBRHpUcmZpbUJ0amN5a09oa1FxQXYwRFhmL1lKRWdPbGNYT3JxbWthNWhL?= =?utf-8?B?d2xMeDdrd25lZlZZYWJTK3FZWGZrWjVJdFYvK09ISlZVOTFXR2gvZUpVVkdU?= =?utf-8?B?VCs1U0Z6S0JZZ2JLenhQWU1CTjNpNG5wNmowOGxwdXVCRDEwa0xzOGtjRnFQ?= =?utf-8?B?c0hDOVJCMzUzYmdsMEtzZUo0K1gwK0ZNY1B4RzhHNUp5bXBEVm5WUEUyQUJC?= =?utf-8?B?SnFoRE81NkhGbm1UQ04wbE5BbzlBQ0JzNVdURHI1YVJuZ3NFc0hjVnpHZGVY?= =?utf-8?B?S3dnZW5PWDVNNmhnOW9OUEpDeVV6eHF5TGNPU05hVk0wN3phWEZXeVFhTms3?= =?utf-8?B?L2R4Y1Z3ZkZuZlNJQXpGVU8vKzl2Q0VvQXhSZks1K3psN1V2L0kzdWZVMGcw?= =?utf-8?B?SEsvM0pqZzdCcmVFTktFN0ZRc2tmZWhlSDMyL2ljVElJbWE4MG44Si9KbU56?= =?utf-8?B?UnBGMkY0RHN3WFVsUnVaUkNGQ2s1aWNkUU14YXpnbCt0UUtHQk54c2x6bjB4?= =?utf-8?B?NlJ1aWdVN1RrNW5kclFFUFFPeVRBLzBXa2k1NFFvRW9tYnJNWXFHd2VXM0hj?= =?utf-8?B?b2svK2ZWRkRHRFo0aStqRitsTml5aFlOOTN0MnM3RFI2eHN0eU5pWGlLSFZZ?= =?utf-8?B?MTJGQUN1WHM0aFR4Q0xFOE5EOTMxMUduOUFUT0g3bmx3a2FuTHJVNXJ1QjNn?= =?utf-8?B?eWxiSFdUbE5XcDdhN1NNWnAzQ2gwbGY2TlhKQzdVOU9wTStvbzE2SEZVSURG?= =?utf-8?B?Vmk4S0JYMlJDYUpjcmdvUDFvcjFQak1kc3JqTzJXR25JVUVERUliOVVSSk5x?= =?utf-8?B?T0FGY21OMzFYSk93dlB0ZjlvOFhKbUFqSElOc3l1NFhzdU9heEhobnN4NUE2?= =?utf-8?B?ejhBYkUxWlBsNFJZcW1iZWJUdzB6MGY5TVFzTEJXQnBNMmVQUFRKc2FvNjV4?= =?utf-8?B?dGRzajdYQ2J3WmQySUZrZjBaM3d0ZHpJaEYzWVhCRXVvZ1BHbHFBWjdyY096?= =?utf-8?B?OEhOZHkvUzV3WE1OVVBqWTBzSkRPRUFRQ3diejJORFo1eWtIbXVHZE55V09u?= =?utf-8?B?SFBtOVU4RzJRWW1BTURUcWx6d0VJWGcwNlBoMnA1MmdrbXB4TXlwQWFZUmVt?= =?utf-8?B?Qlkvd1JNcVBUeWRpSUVCQkJSSDBRNE1lcGtTQUxiTVo2eDIvSFJ6OG9IakV0?= =?utf-8?B?dWhVdWJhQ2lSdGNJVE1ac2JRMS9aWXYyQ0VuN0MvMk9LLzVwcDd0dkNxWkJs?= =?utf-8?Q?2ZpK5iJo1P19U?= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:ja;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:TYCPR01MB5693.jpnprd01.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(1800799024)(376014)(1580799027)(38070700018);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?UG93NGtoT3ZzNURTVTExamg4RGFqMnZxaEN3T0Z6V3dsN0Jra2poM0tnZDVj?= =?utf-8?B?a2h2R2g0V3JrU1d2Z1JQZi8rc01MN3lqNWVuT0tQZlMvWVJYa0xidWs2SnB3?= =?utf-8?B?WEdIdTB6YWJlbU5uc3FHd0pwNWJ2Ny9FQXhFMXlseVhSSUpqTkVDbStxdWNC?= =?utf-8?B?czdMd3Z3Q2FOZXZaQUVSa3lRWUhjSC9GVGFMeTUvdmFNT0F1UkRDTkdYM1ZM?= =?utf-8?B?WVo0MnJkOHJpVVdIZGVHbVBnR0JGVnBvQTlnSGRveGxoQmYwbFgrVTJUZ1p2?= =?utf-8?B?Qzc3Y2ZxRjRFRjJMb2dZTWZ6T3NxQUZMaTYrZC9aZGNhSWgwQjhtWHp2dmdI?= =?utf-8?B?dzA2c3pRNHJFR25kNEp2dEkwaHhSQkhjY3VxQm5GT1lKNWlQK1AycEFKT2Er?= =?utf-8?B?S1RzM09hQ3pNRUI2dmNlSVBPTDY1RVkrTFJudXJkOVI4WEVuS2xxN1lGbGFv?= =?utf-8?B?RTRZN2tJYVptem95bHJZdFdBN3dnN2hhNEZZNWhSNHVTbXZNN3dpV0hGVGNI?= =?utf-8?B?M2U3NU1qazVrOThiWXg3OXRCNERCREZCdUpoWEs0VVlXM2MzcDFObk5xMkty?= =?utf-8?B?US9VSHA0UEN1UHc1ck9CZVB5VWM0M3lybkltVjI3SGxoVVo2WC9qWFpUUmJr?= =?utf-8?B?eWdqM2J1ZmZvckJNN0Y4dmF1ajhFRkFxOVdqcHNLRG04VnllZFp0VVNWaCs5?= =?utf-8?B?Smw5UHhhSENtWXVicjVYdUE5ZWNSM1lRWjBJelFiSEIrSjMxcVQ3UEt4UkJt?= =?utf-8?B?bXBDdmF3T2R4S0xrY2lqd21haDF2N1lxT2ovUE5BU0NySmJYcU12WkZoK3h3?= =?utf-8?B?UDVaaGlFSVRZM0c0ZlJrTTgrVFJEdnBLa2I2b2cvRTNJNTRBakFNTHQvNm8w?= =?utf-8?B?NDVyb1ArTmwzWDdsZkZHMkRHN2FDaXRpTUlRVUhBMFplT05qc3Nxa1RhNXJp?= =?utf-8?B?aUdqTFJNU1BiR05lNXJub1BnQnlpUXUzMDY5MDRUL3JXblVEbkNqT2MzZDA5?= =?utf-8?B?TnBvenpaR1EzUzB6QlN6bXBia0pPRDJ0Y29qTGpZekszUHZycnd1RmhQQUJz?= =?utf-8?B?RlVhdGg3UXlTaUYzUk04em1PUFRKeTlLelhaNnUyZmJNQjlaand1Vk9UWlRR?= =?utf-8?B?d2JHRlRBRGs3VlpaaW1jQ0svK2FTOU9yYldhd3pGd25oWnVONjFhTmQ4d3VZ?= =?utf-8?B?V2xsbGNRTmNEWGE2cGJKT1ZNa1BnLzgrVDdCeExuZzg3bU5xcWxMTmdJMHhC?= =?utf-8?B?aHZiVHV6QVlHbE1aTXpjREVZYmV0ZHBId2pnaXRybzdvVnVCYVVwUFNQcWZs?= =?utf-8?B?M1o2MFlyMDlQenpEMzhDc0ZmM2tkcmtMUDgxcEd2d1p6aHNudTdSRnUvemZO?= =?utf-8?B?MmpleDV2M2lpYUVyUTdvVGp2d2FwZDNKbVJVREUwYWZwUDk5OWtkSTdGUDhX?= =?utf-8?B?TnZXbUFRajh2RjBQaE1YeFROVmZPUnB1RWl1TzRpejNGZEswUjI5MjlpUVBR?= =?utf-8?B?WW9sRmdwNHBxdnJJa3hOVTRNOHYyb1hCNDZrSCtjUGNnczRBbVRyMkM1SW96?= =?utf-8?B?WU94MWRWTjNlYnM2RXBKcHMvaW9sa1pNeTdpYnhsN1grNU9yRVlqV2VaYmFr?= =?utf-8?B?WFNUdTJUU3BhVm5iWitHNWMzcVNRY0REWUREcGJ4NFozaHVDRmR0WFRMblgv?= =?utf-8?B?MkF1VU1TdFNIaHBJR2J5ekZDQWg4dnBMNDZyVkRSTjhiQ3BuQ3FPSWdFQVEx?= =?utf-8?B?anNVeGV5bVRTMjkxL3p3U0JZMUMrdFRQTnVUZi9RSHpZQktMREh4Tkd5WjU2?= =?utf-8?B?dVdhQnBYWHdCQml2eGJueVQ3ejNPaDhRVzJPekFuSHN5NDZZd3lBY00rQlUr?= =?utf-8?B?Nnl3dzFSSTI4MUpPV3RRRmk3Y1ZudlJHdDQ1bGk3NER2eTBpNFBndmE0NGxY?= =?utf-8?B?VDQvQU9OaGpSbkFDWmR2Tm1laVVZNEZhbHlsR0dBU3pqUnA3WFh4RXhESDFr?= =?utf-8?B?YzE1Wk1PY2lYY2wrc0tML0t1UFJubTJjKzN4c2ZKZTJnT3V6UXlCcnZ5VGll?= =?utf-8?B?YWJIU1o5Y1NjaitmUE54TWtxRm5mU2JvT3BvSk5UcHpZODF2aXpUcGtabEhO?= =?utf-8?B?Sy9VcnJwQnJreFJqOUY1cUhFSnhHN2doVGI3YUYrNTh5QW83R0x6cnZWdng3?= =?utf-8?B?THc9PQ==?= Content-Type: multipart/mixed; boundary="_004_TYCPR01MB56938F06B84DD92A88234667F5A22TYCPR01MB5693jpnp_" MIME-Version: 1.0 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 0ZQ0hO7GlsKTzpG2ZPlVA1cSZJv4FW/GztOQuxm/7HmlR1UMhaKACx8428bKT4ds+GKjY/cnlvDmG01wEdQHuQ6SAplFJ/xzmeeAjH4tvI62odXKtJ+0gC7XJUoj9M1PUxRliQ4lmf4J0wODhcEy3SN6SCIGel4ZCCPLrOCa41+S+DA98as35T5aWMSU/8VSVdOFg4+CEtkAfB1fiWbtq6VervQVZIUOcKXif/k3CATO5VM8gvdYmpOpmvR75NdU+tKaQ0Fvr6AnnDh7RR6efxuTA5WNuvwEnVNHYHocInnNzeRk5u0yL7R7ysKLbZssGcCUgZgF4iqiyspbgrXqCWWSfHYgT6AvAD+20Q3jCuKnOl+K2x+WuCfcDykOtxN4vAKP8OVM8ZvgPE71w9roxOpkQha2DwsG64fFOge/Mu/46t5sL9O7GoNwugF2NFO+sH4+lJsQyIYsddepEjAC2ixBDPkBY7TUW/3Ox9Z7HFhMTd85aKjpR8Y3RJMTvZetFpphgKdlt1TTHWefOjAoefNJmeYxOpdWpBagCITUFSHdaKOaY5rJW50vafXOUoXqDoq08hUCh+rRNfa0YF6G9g5WKOusf9VHS/oEO2KSxYy65pxbOo5p5WA/FCi9gO35 X-OriginatorOrg: fujitsu.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYCPR01MB5693.jpnprd01.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: fd43c2f3-da01-43c8-a9f2-08dca55688d2 X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Jul 2024 05:17:06.0735 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a19f121d-81e1-4858-a9d8-736e267fd4c7 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: eRKkBjQJLY1ennG/YvESZYahovDh8NISPU0PSucslSNpDufQL/KDICZRTiZLfjChHTD9Xxckd6e8I+TJ7JDEzNqaZ6mp/kgmSbuft0pcBQc= X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYWPR01MB10628 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --_004_TYCPR01MB56938F06B84DD92A88234667F5A22TYCPR01MB5693jpnp_ Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 RGVhciBBbWl0LCBIb3UsDQoNClRoYW5rcyBmb3IgZ2l2aW5nIGNvbW1lbnRzISBQU0EgbmV3IHZl cnNpb25zLg0KV2hhdCdzIG5ldzoNCg0KMDAwMTogaW5jbHVkZWQgSG91J3MgcGF0Y2ggWzFdIG5v dCB0byBvdmVyd3JpdGUgc2xvdCBvcHRpb25zLg0KICAgICAgU29tZSBvdGhlciBjb21tZW50cyB3 ZXJlIGFsc28gYWRkcmVzc2VkLg0KMDAwMjogbm90IHNvIGNoYW5nZWQsIGp1c3QgcmViYXNlZC4N CjAwMDM6IFR5cG8gd2FzIGZpeGVkLCBzL0FsdGVyL0FmdGVyLy4NCg0KWzFdOiBodHRwczovL3d3 dy5wb3N0Z3Jlc3FsLm9yZy9tZXNzYWdlLWlkL09TM1BSMDFNQjU3MTg0RTA5OTU1MjEzMDBBQzA2 Q0I0Qjk0QTcyJTQwT1MzUFIwMU1CNTcxOC5qcG5wcmQwMS5wcm9kLm91dGxvb2suY29tIA0KDQpC ZXN0IHJlZ2FyZHMsDQpIYXlhdG8gS3Vyb2RhDQpGVUpJVFNVIExJTUlURUQNCg0K --_004_TYCPR01MB56938F06B84DD92A88234667F5A22TYCPR01MB5693jpnp_ Content-Type: application/octet-stream; name="v18-0001-Allow-altering-of-two_phase-option-of-a-SUBSCRIP.patch" Content-Description: v18-0001-Allow-altering-of-two_phase-option-of-a-SUBSCRIP.patch Content-Disposition: attachment; filename="v18-0001-Allow-altering-of-two_phase-option-of-a-SUBSCRIP.patch"; size=33502; creation-date="Tue, 16 Jul 2024 04:55:05 GMT"; modification-date="Tue, 16 Jul 2024 05:16:34 GMT" Content-Transfer-Encoding: base64 RnJvbSBlN2EyMDUxZDkwYjIzNjk4OTcwN2QzMzIzNmYwYWI4NDBjOTgyMjgzIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBamluIENoZXJpYW4gPGFqaW5jQGZhc3QuYXUuZnVqaXRzdS5j b20+CkRhdGU6IEZyaSwgNSBBcHIgMjAyNCAwNjo0NzoxOCAtMDQwMApTdWJqZWN0OiBbUEFUQ0gg djE4IDEvM10gQWxsb3cgYWx0ZXJpbmcgb2YgdHdvX3BoYXNlIG9wdGlvbiBvZiBhIFNVQlNDUklQ VElPTgoKVGhpcyBwYXRjaCBhbGxvd3MgdGhlIHVzZXIgdG8gYWx0ZXIgdGhlICd0d29fcGhhc2Un IG9wdGlvbiBvZiBhIHN1YnNjcmliZXIgcHJvdmlkZWQgbm8KdW5jb21taXR0ZWQgcHJlcGFyZWQg dHJhbnNhY3Rpb25zIGFyZSBwZW5kaW5nIG9uIHRoYXQgc3Vic2NyaXB0aW9uLgoKQXV0aG9yOiBD aGVyaWFuIEFqaW4sIEhheWF0byBLdXJvZGEKLS0tCiBkb2Mvc3JjL3NnbWwvcHJvdG9jb2wuc2dt bCAgICAgICAgICAgICAgICAgICAgfCAgMTYgKysrCiBkb2Mvc3JjL3NnbWwvcmVmL2FsdGVyX3N1 YnNjcmlwdGlvbi5zZ21sICAgICAgfCAgMTIgKy0KIHNyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2Ft L3R3b3BoYXNlLmMgICAgICAgICB8ICA2MiArKysrKysrKysKIHNyYy9iYWNrZW5kL2NvbW1hbmRz L3N1YnNjcmlwdGlvbmNtZHMuYyAgICAgICB8IDEzMSArKysrKysrKysrKysrLS0tLS0KIC4uLi9s aWJwcXdhbHJlY2VpdmVyL2xpYnBxd2FscmVjZWl2ZXIuYyAgICAgICB8ICAgOSArLQogc3JjL2Jh Y2tlbmQvcmVwbGljYXRpb24vbG9naWNhbC9sYXVuY2hlci5jICAgIHwgIDEyICstCiBzcmMvYmFj a2VuZC9yZXBsaWNhdGlvbi9sb2dpY2FsL3dvcmtlci5jICAgICAgfCAgMjUgKy0tLQogc3JjL2Jh Y2tlbmQvcmVwbGljYXRpb24vc2xvdC5jICAgICAgICAgICAgICAgIHwgIDI4ICsrKy0KIHNyYy9i YWNrZW5kL3JlcGxpY2F0aW9uL3dhbHNlbmRlci5jICAgICAgICAgICB8ICAzMyArKysrLQogc3Jj L2Jpbi9wc3FsL3RhYi1jb21wbGV0ZS5jICAgICAgICAgICAgICAgICAgIHwgICAyICstCiBzcmMv aW5jbHVkZS9hY2Nlc3MvdHdvcGhhc2UuaCAgICAgICAgICAgICAgICAgfCAgIDUgKwogc3JjL2lu Y2x1ZGUvcmVwbGljYXRpb24vc2xvdC5oICAgICAgICAgICAgICAgIHwgICAzICstCiBzcmMvaW5j bHVkZS9yZXBsaWNhdGlvbi93YWxyZWNlaXZlci5oICAgICAgICAgfCAgMTEgKy0KIHNyYy9pbmNs dWRlL3JlcGxpY2F0aW9uL3dvcmtlcl9pbnRlcm5hbC5oICAgICB8ICAgMyArLQogc3JjL3Rlc3Qv cmVncmVzcy9leHBlY3RlZC9zdWJzY3JpcHRpb24ub3V0ICAgIHwgICA1ICstCiBzcmMvdGVzdC9y ZWdyZXNzL3NxbC9zdWJzY3JpcHRpb24uc3FsICAgICAgICAgfCAgIDUgKy0KIHNyYy90ZXN0L3N1 YnNjcmlwdGlvbi90LzAyMV90d29waGFzZS5wbCAgICAgICB8ICA3NyArKysrKysrKystCiAxNyBm aWxlcyBjaGFuZ2VkLCAzMzcgaW5zZXJ0aW9ucygrKSwgMTAyIGRlbGV0aW9ucygtKQoKZGlmZiAt LWdpdCBhL2RvYy9zcmMvc2dtbC9wcm90b2NvbC5zZ21sIGIvZG9jL3NyYy9zZ21sL3Byb3RvY29s LnNnbWwKaW5kZXggMWIyN2QwYTU0Ny4uM2FjNGE0YmUyOCAxMDA2NDQKLS0tIGEvZG9jL3NyYy9z Z21sL3Byb3RvY29sLnNnbWwKKysrIGIvZG9jL3NyYy9zZ21sL3Byb3RvY29sLnNnbWwKQEAgLTIy MDYsNiArMjIwNiwyMiBAQCBwc3FsICJkYm5hbWU9cG9zdGdyZXMgcmVwbGljYXRpb249ZGF0YWJh c2UiIC1jICJJREVOVElGWV9TWVNURU07IgogICAgICAgIDwvdmFybGlzdGVudHJ5PgogICAgICAg PC92YXJpYWJsZWxpc3Q+CiAKKyAgICAgIDx2YXJpYWJsZWxpc3Q+CisgICAgICAgPHZhcmxpc3Rl bnRyeT4KKyAgICAgICAgPHRlcm0+PGxpdGVyYWw+VFdPX1BIQVNFIFsgPHJlcGxhY2VhYmxlIGNs YXNzPSJwYXJhbWV0ZXIiPmJvb2xlYW48L3JlcGxhY2VhYmxlPiBdPC9saXRlcmFsPjwvdGVybT4K KyAgICAgICAgPGxpc3RpdGVtPgorICAgICAgICAgPHBhcmE+CisgICAgICAgICAgSWYgdHJ1ZSwg dGhpcyBsb2dpY2FsIHJlcGxpY2F0aW9uIHNsb3Qgc3VwcG9ydHMgZGVjb2Rpbmcgb2YgdHdvLXBo YXNlCisgICAgICAgICAgY29tbWl0LiBXaXRoIHRoaXMgb3B0aW9uLCBjb21tYW5kcyByZWxhdGVk IHRvIHR3by1waGFzZSBjb21taXQgc3VjaCBhcworICAgICAgICAgIDxsaXRlcmFsPlBSRVBBUkUg VFJBTlNBQ1RJT048L2xpdGVyYWw+LCA8bGl0ZXJhbD5DT01NSVQgUFJFUEFSRUQ8L2xpdGVyYWw+ CisgICAgICAgICAgYW5kIDxsaXRlcmFsPlJPTExCQUNLIFBSRVBBUkVEPC9saXRlcmFsPiBhcmUg ZGVjb2RlZCBhbmQgdHJhbnNtaXR0ZWQuCisgICAgICAgICAgVGhlIHRyYW5zYWN0aW9uIHdpbGwg YmUgZGVjb2RlZCBhbmQgdHJhbnNtaXR0ZWQgYXQKKyAgICAgICAgICA8bGl0ZXJhbD5QUkVQQVJF IFRSQU5TQUNUSU9OPC9saXRlcmFsPiB0aW1lLgorICAgICAgICAgPC9wYXJhPgorICAgICAgICA8 L2xpc3RpdGVtPgorICAgICAgIDwvdmFybGlzdGVudHJ5PgorICAgICAgPC92YXJpYWJsZWxpc3Q+ CisKICAgICAgPC9saXN0aXRlbT4KICAgICA8L3Zhcmxpc3RlbnRyeT4KIApkaWZmIC0tZ2l0IGEv ZG9jL3NyYy9zZ21sL3JlZi9hbHRlcl9zdWJzY3JpcHRpb24uc2dtbCBiL2RvYy9zcmMvc2dtbC9y ZWYvYWx0ZXJfc3Vic2NyaXB0aW9uLnNnbWwKaW5kZXggNDc2ZjE5NTYyMi4uMGIyM2RmMWI3NyAx MDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL3JlZi9hbHRlcl9zdWJzY3JpcHRpb24uc2dtbAorKysg Yi9kb2Mvc3JjL3NnbWwvcmVmL2FsdGVyX3N1YnNjcmlwdGlvbi5zZ21sCkBAIC02OCw4ICs2OCw5 IEBAIEFMVEVSIFNVQlNDUklQVElPTiA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+bmFt ZTwvcmVwbGFjZWFibGU+IFJFTkFNRSBUTyA8CiAgIDxwYXJhPgogICAgQ29tbWFuZHMgPGNvbW1h bmQ+QUxURVIgU1VCU0NSSVBUSU9OIC4uLiBSRUZSRVNIIFBVQkxJQ0FUSU9OPC9jb21tYW5kPiwK ICAgIDxjb21tYW5kPkFMVEVSIFNVQlNDUklQVElPTiAuLi4ge1NFVHxBRER8RFJPUH0gUFVCTElD QVRJT04gLi4uPC9jb21tYW5kPgotICAgd2l0aCA8bGl0ZXJhbD5yZWZyZXNoPC9saXRlcmFsPiBv cHRpb24gYXMgPGxpdGVyYWw+dHJ1ZTwvbGl0ZXJhbD4gYW5kCi0gICA8Y29tbWFuZD5BTFRFUiBT VUJTQ1JJUFRJT04gLi4uIFNFVCAoZmFpbG92ZXIgPSB0cnVlfGZhbHNlKTwvY29tbWFuZD4KKyAg IHdpdGggPGxpdGVyYWw+cmVmcmVzaDwvbGl0ZXJhbD4gb3B0aW9uIGFzIDxsaXRlcmFsPnRydWU8 L2xpdGVyYWw+LAorICAgPGNvbW1hbmQ+QUxURVIgU1VCU0NSSVBUSU9OIC4uLiBTRVQgKGZhaWxv dmVyID0gdHJ1ZXxmYWxzZSk8L2NvbW1hbmQ+IGFuZAorICAgPGNvbW1hbmQ+QUxURVIgU1VCU0NS SVBUSU9OIC4uLiBTRVQgKHR3b19waGFzZSA9IHRydWV8ZmFsc2UpPC9jb21tYW5kPgogICAgY2Fu bm90IGJlIGV4ZWN1dGVkIGluc2lkZSBhIHRyYW5zYWN0aW9uIGJsb2NrLgogCiAgICBUaGVzZSBj b21tYW5kcyBhbHNvIGNhbm5vdCBiZSBleGVjdXRlZCB3aGVuIHRoZSBzdWJzY3JpcHRpb24gaGFz CkBAIC0yMjgsOSArMjI5LDEyIEBAIEFMVEVSIFNVQlNDUklQVElPTiA8cmVwbGFjZWFibGUgY2xh c3M9InBhcmFtZXRlciI+bmFtZTwvcmVwbGFjZWFibGU+IFJFTkFNRSBUTyA8CiAgICAgICA8bGlu ayBsaW5rZW5kPSJzcWwtY3JlYXRlc3Vic2NyaXB0aW9uLXBhcmFtcy13aXRoLWRpc2FibGUtb24t ZXJyb3IiPjxsaXRlcmFsPmRpc2FibGVfb25fZXJyb3I8L2xpdGVyYWw+PC9saW5rPiwKICAgICAg IDxsaW5rIGxpbmtlbmQ9InNxbC1jcmVhdGVzdWJzY3JpcHRpb24tcGFyYW1zLXdpdGgtcGFzc3dv cmQtcmVxdWlyZWQiPjxsaXRlcmFsPnBhc3N3b3JkX3JlcXVpcmVkPC9saXRlcmFsPjwvbGluaz4s CiAgICAgICA8bGluayBsaW5rZW5kPSJzcWwtY3JlYXRlc3Vic2NyaXB0aW9uLXBhcmFtcy13aXRo LXJ1bi1hcy1vd25lciI+PGxpdGVyYWw+cnVuX2FzX293bmVyPC9saXRlcmFsPjwvbGluaz4sCi0g ICAgICA8bGluayBsaW5rZW5kPSJzcWwtY3JlYXRlc3Vic2NyaXB0aW9uLXBhcmFtcy13aXRoLW9y aWdpbiI+PGxpdGVyYWw+b3JpZ2luPC9saXRlcmFsPjwvbGluaz4sIGFuZAotICAgICAgPGxpbmsg bGlua2VuZD0ic3FsLWNyZWF0ZXN1YnNjcmlwdGlvbi1wYXJhbXMtd2l0aC1mYWlsb3ZlciI+PGxp dGVyYWw+ZmFpbG92ZXI8L2xpdGVyYWw+PC9saW5rPi4KKyAgICAgIDxsaW5rIGxpbmtlbmQ9InNx bC1jcmVhdGVzdWJzY3JpcHRpb24tcGFyYW1zLXdpdGgtb3JpZ2luIj48bGl0ZXJhbD5vcmlnaW48 L2xpdGVyYWw+PC9saW5rPiwKKyAgICAgIDxsaW5rIGxpbmtlbmQ9InNxbC1jcmVhdGVzdWJzY3Jp cHRpb24tcGFyYW1zLXdpdGgtZmFpbG92ZXIiPjxsaXRlcmFsPmZhaWxvdmVyPC9saXRlcmFsPjwv bGluaz4sIGFuZAorICAgICAgPGxpbmsgbGlua2VuZD0ic3FsLWNyZWF0ZXN1YnNjcmlwdGlvbi1w YXJhbXMtd2l0aC10d28tcGhhc2UiPjxsaXRlcmFsPnR3b19waGFzZTwvbGl0ZXJhbD48L2xpbms+ LgogICAgICAgT25seSBhIHN1cGVydXNlciBjYW4gc2V0IDxsaXRlcmFsPnBhc3N3b3JkX3JlcXVp cmVkID0gZmFsc2U8L2xpdGVyYWw+LgorICAgICAgVGhlIDxsaXRlcmFsPnR3b19waGFzZTwvbGl0 ZXJhbD4gcGFyYW1ldGVyIGNhbiBvbmx5IGJlIGFsdGVyZWQgd2hlbiB0aGUKKyAgICAgIHN1YnNj cmlwdGlvbiBpcyBkaXNhYmxlZC4KICAgICAgPC9wYXJhPgogCiAgICAgIDxwYXJhPgpkaWZmIC0t Z2l0IGEvc3JjL2JhY2tlbmQvYWNjZXNzL3RyYW5zYW0vdHdvcGhhc2UuYyBiL3NyYy9iYWNrZW5k L2FjY2Vzcy90cmFuc2FtL3R3b3BoYXNlLmMKaW5kZXggOWE4MjU3ZmNhZi4uMzViY2U2ODA5ZCAx MDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvYWNjZXNzL3RyYW5zYW0vdHdvcGhhc2UuYworKysgYi9z cmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS90d29waGFzZS5jCkBAIC0yNjgxLDMgKzI2ODEsNjUg QEAgTG9va3VwR1hhY3QoY29uc3QgY2hhciAqZ2lkLCBYTG9nUmVjUHRyIHByZXBhcmVfZW5kX2xz biwKIAlMV0xvY2tSZWxlYXNlKFR3b1BoYXNlU3RhdGVMb2NrKTsKIAlyZXR1cm4gZm91bmQ7CiB9 CisKKy8qCisgKiBUd29QaGFzZVRyYW5zYWN0aW9uR2lkCisgKgkJRm9ybSB0aGUgcHJlcGFyZWQg dHJhbnNhY3Rpb24gR0lEIGZvciB0d29fcGhhc2UgdHJhbnNhY3Rpb25zLgorICoKKyAqIFJldHVy biB0aGUgR0lEIGluIHRoZSBzdXBwbGllZCBidWZmZXIuCisgKi8KK3ZvaWQKK1R3b1BoYXNlVHJh bnNhY3Rpb25HaWQoT2lkIHN1YmlkLCBUcmFuc2FjdGlvbklkIHhpZCwgY2hhciAqZ2lkLCBpbnQg c3pnaWQpCit7CisJQXNzZXJ0KHN1YmlkICE9IEludmFsaWRSZXBPcmlnaW5JZCk7CisKKwlpZiAo IVRyYW5zYWN0aW9uSWRJc1ZhbGlkKHhpZCkpCisJCWVyZXBvcnQoRVJST1IsCisJCQkJKGVycmNv ZGUoRVJSQ09ERV9QUk9UT0NPTF9WSU9MQVRJT04pLAorCQkJCSBlcnJtc2dfaW50ZXJuYWwoImlu dmFsaWQgdHdvLXBoYXNlIHRyYW5zYWN0aW9uIElEIikpKTsKKworCXNucHJpbnRmKGdpZCwgc3pn aWQsICJwZ19naWRfJXVfJXUiLCBzdWJpZCwgeGlkKTsKK30KKworLyoKKyAqIElzVHdvUGhhc2VU cmFuc2FjdGlvbkdpZEZvclN1YmlkCisgKgkJQ2hlY2sgd2hldGhlciB0aGUgZ2l2ZW4gR0lEIChh cyBmb3JtZWQgYnkgVHdvUGhhc2VUcmFuc2FjdGlvbkdpZCkgaXMKKyAqCQlmb3IgdGhlIHNwZWNp ZmllZCAnc3ViaWQnLgorICovCitzdGF0aWMgYm9vbAorSXNUd29QaGFzZVRyYW5zYWN0aW9uR2lk Rm9yU3ViaWQoT2lkIHN1YmlkLCBjaGFyICpnaWQpCit7CisJaW50CQkJcmV0OworCU9pZAkJCXN1 YmlkX3dyaXR0ZW47CisJVHJhbnNhY3Rpb25JZCB4aWQ7CisKKwlyZXQgPSBzc2NhbmYoZ2lkLCAi cGdfZ2lkXyV1XyV1IiwgJnN1YmlkX3dyaXR0ZW4sICZ4aWQpOworCisJcmV0dXJuIChyZXQgPT0g MiAmJiBzdWJpZCA9PSBzdWJpZF93cml0dGVuKTsKK30KKworLyoKKyAqIExvb2t1cEdYYWN0QnlT dWJpZAorICoJCUNoZWNrIGlmIHRoZSBwcmVwYXJlZCB0cmFuc2FjdGlvbiBkb25lIGJ5IGFwcGx5 IHdvcmtlciBleGlzdHMuCisgKi8KK2Jvb2wKK0xvb2t1cEdYYWN0QnlTdWJpZChPaWQgc3ViaWQp Cit7CisJYm9vbAkJZm91bmQgPSBmYWxzZTsKKworCUxXTG9ja0FjcXVpcmUoVHdvUGhhc2VTdGF0 ZUxvY2ssIExXX1NIQVJFRCk7CisJZm9yIChpbnQgaSA9IDA7IGkgPCBUd29QaGFzZVN0YXRlLT5u dW1QcmVwWGFjdHM7IGkrKykKKwl7CisJCUdsb2JhbFRyYW5zYWN0aW9uIGd4YWN0ID0gVHdvUGhh c2VTdGF0ZS0+cHJlcFhhY3RzW2ldOworCisJCS8qIElnbm9yZSBub3QteWV0LXZhbGlkIEdJRHMu ICovCisJCWlmIChneGFjdC0+dmFsaWQgJiYKKwkJCUlzVHdvUGhhc2VUcmFuc2FjdGlvbkdpZEZv clN1YmlkKHN1YmlkLCBneGFjdC0+Z2lkKSkKKwkJeworCQkJZm91bmQgPSB0cnVlOworCQkJYnJl YWs7CisJCX0KKwl9CisJTFdMb2NrUmVsZWFzZShUd29QaGFzZVN0YXRlTG9jayk7CisJcmV0dXJu IGZvdW5kOworfQpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvY29tbWFuZHMvc3Vic2NyaXB0aW9u Y21kcy5jIGIvc3JjL2JhY2tlbmQvY29tbWFuZHMvc3Vic2NyaXB0aW9uY21kcy5jCmluZGV4IDE2 ZDgzYjMyNTMuLmQ3ZTJiMTQxYjMgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3N1 YnNjcmlwdGlvbmNtZHMuYworKysgYi9zcmMvYmFja2VuZC9jb21tYW5kcy9zdWJzY3JpcHRpb25j bWRzLmMKQEAgLTE2LDYgKzE2LDcgQEAKIAogI2luY2x1ZGUgImFjY2Vzcy9odHVwX2RldGFpbHMu aCIKICNpbmNsdWRlICJhY2Nlc3MvdGFibGUuaCIKKyNpbmNsdWRlICJhY2Nlc3MvdHdvcGhhc2Uu aCIKICNpbmNsdWRlICJhY2Nlc3MveGFjdC5oIgogI2luY2x1ZGUgImNhdGFsb2cvY2F0YWxvZy5o IgogI2luY2x1ZGUgImNhdGFsb2cvZGVwZW5kZW5jeS5oIgpAQCAtMTA5LDYgKzExMCw4IEBAIHN0 YXRpYyB2b2lkIGNoZWNrX3B1YmxpY2F0aW9uc19vcmlnaW4oV2FsUmVjZWl2ZXJDb25uICp3cmNv bm4sCiBzdGF0aWMgdm9pZCBjaGVja19kdXBsaWNhdGVzX2luX3B1Ymxpc3QoTGlzdCAqcHVibGlz dCwgRGF0dW0gKmRhdHVtcyk7CiBzdGF0aWMgTGlzdCAqbWVyZ2VfcHVibGljYXRpb25zKExpc3Qg Km9sZHB1Ymxpc3QsIExpc3QgKm5ld3B1Ymxpc3QsIGJvb2wgYWRkcHViLCBjb25zdCBjaGFyICpz dWJuYW1lKTsKIHN0YXRpYyB2b2lkIFJlcG9ydFNsb3RDb25uZWN0aW9uRXJyb3IoTGlzdCAqcnN0 YXRlcywgT2lkIHN1YmlkLCBjaGFyICpzbG90bmFtZSwgY2hhciAqZXJyKTsKK3N0YXRpYyB2b2lk IENoZWNrQWx0ZXJTdWJPcHRpb24oU3Vic2NyaXB0aW9uICpzdWIsIGNvbnN0IGNoYXIgKm9wdGlv biwKKwkJCQkJCQkJYm9vbCBpc1RvcExldmVsKTsKIAogCiAvKgpAQCAtMjU5LDIxICsyNjIsOSBA QCBwYXJzZV9zdWJzY3JpcHRpb25fb3B0aW9ucyhQYXJzZVN0YXRlICpwc3RhdGUsIExpc3QgKnN0 bXRfb3B0aW9ucywKIAkJCW9wdHMtPnNwZWNpZmllZF9vcHRzIHw9IFNVQk9QVF9TVFJFQU1JTkc7 CiAJCQlvcHRzLT5zdHJlYW1pbmcgPSBkZWZHZXRTdHJlYW1pbmdNb2RlKGRlZmVsKTsKIAkJfQot CQllbHNlIGlmIChzdHJjbXAoZGVmZWwtPmRlZm5hbWUsICJ0d29fcGhhc2UiKSA9PSAwKQorCQll bHNlIGlmIChJc1NldChzdXBwb3J0ZWRfb3B0cywgU1VCT1BUX1RXT1BIQVNFX0NPTU1JVCkgJiYK KwkJCQkgc3RyY21wKGRlZmVsLT5kZWZuYW1lLCAidHdvX3BoYXNlIikgPT0gMCkKIAkJewotCQkJ LyoKLQkJCSAqIERvIG5vdCBhbGxvdyB0b2dnbGluZyBvZiB0d29fcGhhc2Ugb3B0aW9uLiBEb2lu ZyBzbyBjb3VsZCBjYXVzZQotCQkJICogbWlzc2luZyBvZiB0cmFuc2FjdGlvbnMgYW5kIGxlYWQg dG8gYW4gaW5jb25zaXN0ZW50IHJlcGxpY2EuCi0JCQkgKiBTZWUgY29tbWVudHMgYXRvcCB3b3Jr ZXIuYwotCQkJICoKLQkJCSAqIE5vdGU6IFVuc3VwcG9ydGVkIHR3b3BoYXNlIGluZGljYXRlcyB0 aGF0IHRoaXMgY2FsbCBvcmlnaW5hdGVkCi0JCQkgKiBmcm9tIEFsdGVyU3Vic2NyaXB0aW9uLgot CQkJICovCi0JCQlpZiAoIUlzU2V0KHN1cHBvcnRlZF9vcHRzLCBTVUJPUFRfVFdPUEhBU0VfQ09N TUlUKSkKLQkJCQllcmVwb3J0KEVSUk9SLAotCQkJCQkJKGVycmNvZGUoRVJSQ09ERV9TWU5UQVhf RVJST1IpLAotCQkJCQkJIGVycm1zZygidW5yZWNvZ25pemVkIHN1YnNjcmlwdGlvbiBwYXJhbWV0 ZXI6IFwiJXNcIiIsIGRlZmVsLT5kZWZuYW1lKSkpOwotCiAJCQlpZiAoSXNTZXQob3B0cy0+c3Bl Y2lmaWVkX29wdHMsIFNVQk9QVF9UV09QSEFTRV9DT01NSVQpKQogCQkJCWVycm9yQ29uZmxpY3Rp bmdEZWZFbGVtKGRlZmVsLCBwc3RhdGUpOwogCkBAIC0xMDc5LDYgKzEwNzAsNDQgQEAgQWx0ZXJT dWJzY3JpcHRpb25fcmVmcmVzaChTdWJzY3JpcHRpb24gKnN1YiwgYm9vbCBjb3B5X2RhdGEsCiAJ CXRhYmxlX2Nsb3NlKHJlbCwgTm9Mb2NrKTsKIH0KIAorLyoKKyAqIENvbW1vbiBjaGVja3MgZm9y IGFsdGVyaW5nIGZhaWxvdmVyIGFuZCB0d29fcGhhc2Ugb3B0aW9uCisgKi8KK3N0YXRpYyB2b2lk CitDaGVja0FsdGVyU3ViT3B0aW9uKFN1YnNjcmlwdGlvbiAqc3ViLCBjb25zdCBjaGFyICpvcHRp b24sIGJvb2wgaXNUb3BMZXZlbCkKK3sKKwlTdHJpbmdJbmZvRGF0YSBjbWQ7CisKKwlpZiAoIXN1 Yi0+c2xvdG5hbWUpCisJCWVyZXBvcnQoRVJST1IsCisJCQkJKGVycmNvZGUoRVJSQ09ERV9PQkpF Q1RfTk9UX0lOX1BSRVJFUVVJU0lURV9TVEFURSksCisJCQkJIGVycm1zZygiY2Fubm90IHNldCAl cyBmb3IgYSBzdWJzY3JpcHRpb24gdGhhdCBkb2VzIG5vdCBoYXZlIGEgc2xvdCBuYW1lIiwKKwkJ CQkJCW9wdGlvbikpKTsKKworCS8qCisJICogRG8gbm90IGFsbG93IGNoYW5naW5nIHRoZSBvcHRp b24gaWYgdGhlIHN1YnNjcmlwdGlvbiBpcyBlbmFibGVkLiBUaGlzCisJICogaXMgYmVjYXVzZSBi b3RoIGZhaWxvdmVyIGFuZCB0d29fcGhhc2Ugb3B0aW9ucyBvZiB0aGUgc2xvdCBvbiB0aGUKKwkg KiBwdWJsaXNoZXIgY2Fubm90IGJlIG1vZGlmaWVkIGlmIHRoZSBzbG90IGlzIGN1cnJlbnRseSBh Y3F1aXJlZCBieSB0aGUKKwkgKiBhcHBseSB3b3JrZXIuCisJICovCisJaWYgKHN1Yi0+ZW5hYmxl ZCkKKwkJZXJlcG9ydChFUlJPUiwKKwkJCQkoZXJyY29kZShFUlJDT0RFX09CSkVDVF9OT1RfSU5f UFJFUkVRVUlTSVRFX1NUQVRFKSwKKwkJCQkgZXJybXNnKCJjYW5ub3Qgc2V0ICVzIGZvciBlbmFi bGVkIHN1YnNjcmlwdGlvbiIsCisJCQkJCQlvcHRpb24pKSk7CisKKwlpbml0U3RyaW5nSW5mbygm Y21kKTsKKwlhcHBlbmRTdHJpbmdJbmZvKCZjbWQsICJBTFRFUiBTVUJTQ1JJUFRJT04gLi4uIFNF VCAoJXMpIiwgb3B0aW9uKTsKKworCS8qCisJICogVGhlIGNoYW5nZWQgb3B0aW9uIG9mIHRoZSBz bG90IGNhbid0IGJlIHJvbGxlZCBiYWNrOiBwcmV2ZW50IHdlIGFyZSBpbgorCSAqIHRoZSB0cmFu c2FjdGlvbiBzdGF0ZS4KKwkgKi8KKwlQcmV2ZW50SW5UcmFuc2FjdGlvbkJsb2NrKGlzVG9wTGV2 ZWwsIGNtZC5kYXRhKTsKKworCXBmcmVlKGNtZC5kYXRhKTsKK30KKwogLyoKICAqIEFsdGVyIHRo ZSBleGlzdGluZyBzdWJzY3JpcHRpb24uCiAgKi8KQEAgLTExNDUsNyArMTE3NCw4IEBAIEFsdGVy U3Vic2NyaXB0aW9uKFBhcnNlU3RhdGUgKnBzdGF0ZSwgQWx0ZXJTdWJzY3JpcHRpb25TdG10ICpz dG10LAogCQkJewogCQkJCXN1cHBvcnRlZF9vcHRzID0gKFNVQk9QVF9TTE9UX05BTUUgfAogCQkJ CQkJCQkgIFNVQk9QVF9TWU5DSFJPTk9VU19DT01NSVQgfCBTVUJPUFRfQklOQVJZIHwKLQkJCQkJ CQkJICBTVUJPUFRfU1RSRUFNSU5HIHwgU1VCT1BUX0RJU0FCTEVfT05fRVJSIHwKKwkJCQkJCQkJ ICBTVUJPUFRfU1RSRUFNSU5HIHwgU1VCT1BUX1RXT1BIQVNFX0NPTU1JVCB8CisJCQkJCQkJCSAg U1VCT1BUX0RJU0FCTEVfT05fRVJSIHwKIAkJCQkJCQkJICBTVUJPUFRfUEFTU1dPUkRfUkVRVUlS RUQgfAogCQkJCQkJCQkgIFNVQk9QVF9SVU5fQVNfT1dORVIgfCBTVUJPUFRfRkFJTE9WRVIgfAog CQkJCQkJCQkgIFNVQk9QVF9PUklHSU4pOwpAQCAtMTIyOSwzMyArMTI1OSw1OSBAQCBBbHRlclN1 YnNjcmlwdGlvbihQYXJzZVN0YXRlICpwc3RhdGUsIEFsdGVyU3Vic2NyaXB0aW9uU3RtdCAqc3Rt dCwKIAogCQkJCWlmIChJc1NldChvcHRzLnNwZWNpZmllZF9vcHRzLCBTVUJPUFRfRkFJTE9WRVIp KQogCQkJCXsKLQkJCQkJaWYgKCFzdWItPnNsb3RuYW1lKQorCQkJCQlDaGVja0FsdGVyU3ViT3B0 aW9uKHN1YiwgImZhaWxvdmVyIiwgaXNUb3BMZXZlbCk7CisKKwkJCQkJdmFsdWVzW0FudW1fcGdf c3Vic2NyaXB0aW9uX3N1YmZhaWxvdmVyIC0gMV0gPQorCQkJCQkJQm9vbEdldERhdHVtKG9wdHMu ZmFpbG92ZXIpOworCQkJCQlyZXBsYWNlc1tBbnVtX3BnX3N1YnNjcmlwdGlvbl9zdWJmYWlsb3Zl ciAtIDFdID0gdHJ1ZTsKKwkJCQl9CisKKwkJCQlpZiAoSXNTZXQob3B0cy5zcGVjaWZpZWRfb3B0 cywgU1VCT1BUX1RXT1BIQVNFX0NPTU1JVCkpCisJCQkJeworCQkJCQlDaGVja0FsdGVyU3ViT3B0 aW9uKHN1YiwgInR3b19waGFzZSIsIGlzVG9wTGV2ZWwpOworCisJCQkJCS8qCisJCQkJCSAqIHNs b3RfbmFtZSBhbmQgdHdvX3BoYXNlIGNhbm5vdCBiZSBhbHRlcmVkCisJCQkJCSAqIHNpbXVsdGFu ZW91c2x5LiBUaGUgbGF0dGVyIHBhcnQgcmVmZXJzIHRvIHRoZSBwcmUtc2V0CisJCQkJCSAqIHNs b3QgbmFtZSBhbmQgdHJpZXMgdG8gbW9kaWZ5IHRoZSBzbG90IG9wdGlvbiwgc28KKwkJCQkJICog Y2hhbmdpbmcgYm90aCBkb2VzIG5vdCBtYWtlIHNlbnNlLgorCQkJCQkgKi8KKwkJCQkJaWYgKElz U2V0KG9wdHMuc3BlY2lmaWVkX29wdHMsIFNVQk9QVF9TTE9UX05BTUUpKQogCQkJCQkJZXJlcG9y dChFUlJPUiwKLQkJCQkJCQkJKGVycmNvZGUoRVJSQ09ERV9PQkpFQ1RfTk9UX0lOX1BSRVJFUVVJ U0lURV9TVEFURSksCi0JCQkJCQkJCSBlcnJtc2coImNhbm5vdCBzZXQgJXMgZm9yIGEgc3Vic2Ny aXB0aW9uIHRoYXQgZG9lcyBub3QgaGF2ZSBhIHNsb3QgbmFtZSIsCi0JCQkJCQkJCQkJImZhaWxv dmVyIikpKTsKKwkJCQkJCQkJKGVycmNvZGUoRVJSQ09ERV9TWU5UQVhfRVJST1IpLAorCQkJCQkJ CQkgZXJybXNnKCJzbG90X25hbWUgYW5kIHR3b19waGFzZSBjYW5ub3QgYmUgYWx0ZXJlZCBhdCB0 aGUgc2FtZSB0aW1lIikpKTsKIAogCQkJCQkvKgotCQkJCQkgKiBEbyBub3QgYWxsb3cgY2hhbmdp bmcgdGhlIGZhaWxvdmVyIHN0YXRlIGlmIHRoZQotCQkJCQkgKiBzdWJzY3JpcHRpb24gaXMgZW5h YmxlZC4gVGhpcyBpcyBiZWNhdXNlIHRoZSBmYWlsb3ZlcgotCQkJCQkgKiBzdGF0ZSBvZiB0aGUg c2xvdCBvbiB0aGUgcHVibGlzaGVyIGNhbm5vdCBiZSBtb2RpZmllZAotCQkJCQkgKiBpZiB0aGUg c2xvdCBpcyBjdXJyZW50bHkgYWNxdWlyZWQgYnkgdGhlIGFwcGx5IHdvcmtlci4KKwkJCQkJICog V29ya2VycyBtYXkgc3RpbGwgc3Vydml2ZSBldmVuIGlmIHRoZSBzdWJzY3JpcHRpb24gaGFzCisJ CQkJCSAqIGJlZW4gZGlzYWJsZWQuIFRoZXkgbWF5IHJlYWQgdGhlIHBnX3N1YnNjcmlwdGlvbgor CQkJCQkgKiBjYXRhbG9nIGFuZCBkZXRlY3QgdGhhdCB0aGUgdHdvcGhhc2UgcGFyYW1ldGVyIGlz CisJCQkJCSAqIHVwZGF0ZWQsIHdoaWNoIGNhdXNlcyB0aGUgYXNzZXJ0aW9uIGZhaWx1cmUuIEVu c3VyZQorCQkJCQkgKiB3b3JrZXJzIGhhdmUgYWxyZWFkeSBiZWVuIGV4aXRlZCB0byBhdm9pZCBp dC4KIAkJCQkJICovCi0JCQkJCWlmIChzdWItPmVuYWJsZWQpCisJCQkJCWlmIChsb2dpY2FscmVw X3dvcmtlcnNfZmluZChzdWJpZCwgdHJ1ZSwgdHJ1ZSkpCiAJCQkJCQllcmVwb3J0KEVSUk9SLAog CQkJCQkJCQkoZXJyY29kZShFUlJDT0RFX09CSkVDVF9OT1RfSU5fUFJFUkVRVUlTSVRFX1NUQVRF KSwKLQkJCQkJCQkJIGVycm1zZygiY2Fubm90IHNldCAlcyBmb3IgZW5hYmxlZCBzdWJzY3JpcHRp b24iLAotCQkJCQkJCQkJCSJmYWlsb3ZlciIpKSk7CisJCQkJCQkJCSBlcnJtc2coImNhbm5vdCBh bHRlciB0d29fcGhhc2Ugd2hlbiBsb2dpY2FsIHJlcGxpY2F0aW9uIHdvcmtlciBpcyBzdGlsbCBy dW5uaW5nIiksCisJCQkJCQkJCSBlcnJoaW50KCJXYWl0IGNlcnRhaW4gdGltZSBhbmQgdHJ5IGFn YWluLiIpKSk7CiAKIAkJCQkJLyoKLQkJCQkJICogVGhlIGNoYW5nZWQgZmFpbG92ZXIgb3B0aW9u IG9mIHRoZSBzbG90IGNhbid0IGJlIHJvbGxlZAotCQkJCQkgKiBiYWNrLgorCQkJCQkgKiB0d29f cGhhc2UgY2Fubm90IGJlIGRpc2FibGVkIGlmIHRoZXJlIGFyZSBhbnkKKwkJCQkJICogdW5jb21t aXR0ZWQgcHJlcGFyZWQgdHJhbnNhY3Rpb25zIHByZXNlbnQuCiAJCQkJCSAqLwotCQkJCQlQcmV2 ZW50SW5UcmFuc2FjdGlvbkJsb2NrKGlzVG9wTGV2ZWwsICJBTFRFUiBTVUJTQ1JJUFRJT04gLi4u IFNFVCAoZmFpbG92ZXIpIik7Ci0KLQkJCQkJdmFsdWVzW0FudW1fcGdfc3Vic2NyaXB0aW9uX3N1 YmZhaWxvdmVyIC0gMV0gPQotCQkJCQkJQm9vbEdldERhdHVtKG9wdHMuZmFpbG92ZXIpOwotCQkJ CQlyZXBsYWNlc1tBbnVtX3BnX3N1YnNjcmlwdGlvbl9zdWJmYWlsb3ZlciAtIDFdID0gdHJ1ZTsK KwkJCQkJaWYgKCFvcHRzLnR3b3BoYXNlICYmCisJCQkJCQlzdWItPnR3b3BoYXNlc3RhdGUgPT0g TE9HSUNBTFJFUF9UV09QSEFTRV9TVEFURV9FTkFCTEVEICYmCisJCQkJCQlMb29rdXBHWGFjdEJ5 U3ViaWQoc3ViaWQpKQorCQkJCQkJZXJlcG9ydChFUlJPUiwKKwkJCQkJCQkJKGVycmNvZGUoRVJS Q09ERV9PQkpFQ1RfTk9UX0lOX1BSRVJFUVVJU0lURV9TVEFURSksCisJCQkJCQkJCSBlcnJtc2co ImNhbm5vdCBkaXNhYmxlIHR3b19waGFzZSB3aGVuIHByZXBhcmVkIHRyYW5zYWN0aW9ucyBhcmUg cHJlc2VudCIpLAorCQkJCQkJCQkgZXJyaGludCgiUmVzb2x2ZSB0aGVzZSB0cmFuc2FjdGlvbnMg YW5kIHRyeSBhZ2Fpbi4iKSkpOworCisJCQkJCS8qIENoYW5nZSBzeXN0ZW0gY2F0YWxvZyBhY29v cmRpbmdseSAqLworCQkJCQl2YWx1ZXNbQW51bV9wZ19zdWJzY3JpcHRpb25fc3VidHdvcGhhc2Vz dGF0ZSAtIDFdID0KKwkJCQkJCUNoYXJHZXREYXR1bShvcHRzLnR3b3BoYXNlID8KKwkJCQkJCQkJ CSBMT0dJQ0FMUkVQX1RXT1BIQVNFX1NUQVRFX1BFTkRJTkcgOgorCQkJCQkJCQkJIExPR0lDQUxS RVBfVFdPUEhBU0VfU1RBVEVfRElTQUJMRUQpOworCQkJCQlyZXBsYWNlc1tBbnVtX3BnX3N1YnNj cmlwdGlvbl9zdWJ0d29waGFzZXN0YXRlIC0gMV0gPSB0cnVlOwogCQkJCX0KIAogCQkJCWlmIChJ c1NldChvcHRzLnNwZWNpZmllZF9vcHRzLCBTVUJPUFRfT1JJR0lOKSkKQEAgLTE1MDcsNyArMTU2 Myw4IEBAIEFsdGVyU3Vic2NyaXB0aW9uKFBhcnNlU3RhdGUgKnBzdGF0ZSwgQWx0ZXJTdWJzY3Jp cHRpb25TdG10ICpzdG10LAogCSAqIGRvaW5nIHRoZSBkYXRhYmFzZSBvcGVyYXRpb25zIHdlIHdv bid0IGJlIGFibGUgdG8gcm9sbGJhY2sgYWx0ZXJlZAogCSAqIHNsb3QuCiAJICovCi0JaWYgKHJl cGxhY2VzW0FudW1fcGdfc3Vic2NyaXB0aW9uX3N1YmZhaWxvdmVyIC0gMV0pCisJaWYgKHJlcGxh Y2VzW0FudW1fcGdfc3Vic2NyaXB0aW9uX3N1YmZhaWxvdmVyIC0gMV0gfHwKKwkJcmVwbGFjZXNb QW51bV9wZ19zdWJzY3JpcHRpb25fc3VidHdvcGhhc2VzdGF0ZSAtIDFdKQogCXsKIAkJYm9vbAkJ bXVzdF91c2VfcGFzc3dvcmQ7CiAJCWNoYXIJICAgKmVycjsKQEAgLTE1MjgsNyArMTU4NSw3IEBA IEFsdGVyU3Vic2NyaXB0aW9uKFBhcnNlU3RhdGUgKnBzdGF0ZSwgQWx0ZXJTdWJzY3JpcHRpb25T dG10ICpzdG10LAogCiAJCVBHX1RSWSgpOwogCQl7Ci0JCQl3YWxyY3ZfYWx0ZXJfc2xvdCh3cmNv bm4sIHN1Yi0+c2xvdG5hbWUsIG9wdHMuZmFpbG92ZXIpOworCQkJd2FscmN2X2FsdGVyX3Nsb3Qo d3Jjb25uLCBzdWItPnNsb3RuYW1lLCBvcHRzLmZhaWxvdmVyLCBvcHRzLnR3b3BoYXNlKTsKIAkJ fQogCQlQR19GSU5BTExZKCk7CiAJCXsKQEAgLTE2NzUsOSArMTczMiw3IEBAIERyb3BTdWJzY3Jp cHRpb24oRHJvcFN1YnNjcmlwdGlvblN0bXQgKnN0bXQsIGJvb2wgaXNUb3BMZXZlbCkKIAkgKiBO ZXcgd29ya2VycyB3b24ndCBiZSBzdGFydGVkIGJlY2F1c2Ugd2UgaG9sZCBhbiBleGNsdXNpdmUg bG9jayBvbiB0aGUKIAkgKiBzdWJzY3JpcHRpb24gdGlsbCB0aGUgZW5kIG9mIHRoZSB0cmFuc2Fj dGlvbi4KIAkgKi8KLQlMV0xvY2tBY3F1aXJlKExvZ2ljYWxSZXBXb3JrZXJMb2NrLCBMV19TSEFS RUQpOwotCXN1YndvcmtlcnMgPSBsb2dpY2FscmVwX3dvcmtlcnNfZmluZChzdWJpZCwgZmFsc2Up OwotCUxXTG9ja1JlbGVhc2UoTG9naWNhbFJlcFdvcmtlckxvY2spOworCXN1YndvcmtlcnMgPSBs b2dpY2FscmVwX3dvcmtlcnNfZmluZChzdWJpZCwgZmFsc2UsIHRydWUpOwogCWZvcmVhY2gobGMs IHN1YndvcmtlcnMpCiAJewogCQlMb2dpY2FsUmVwV29ya2VyICp3ID0gKExvZ2ljYWxSZXBXb3Jr ZXIgKikgbGZpcnN0KGxjKTsKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL2xp YnBxd2FscmVjZWl2ZXIvbGlicHF3YWxyZWNlaXZlci5jIGIvc3JjL2JhY2tlbmQvcmVwbGljYXRp b24vbGlicHF3YWxyZWNlaXZlci9saWJwcXdhbHJlY2VpdmVyLmMKaW5kZXggNmM0MmMyMDlkMi4u MWNiNjAxYTE0OCAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvcmVwbGljYXRpb24vbGlicHF3YWxy ZWNlaXZlci9saWJwcXdhbHJlY2VpdmVyLmMKKysrIGIvc3JjL2JhY2tlbmQvcmVwbGljYXRpb24v bGlicHF3YWxyZWNlaXZlci9saWJwcXdhbHJlY2VpdmVyLmMKQEAgLTgwLDcgKzgwLDcgQEAgc3Rh dGljIGNoYXIgKmxpYnBxcmN2X2NyZWF0ZV9zbG90KFdhbFJlY2VpdmVyQ29ubiAqY29ubiwKIAkJ CQkJCQkJICBDUlNTbmFwc2hvdEFjdGlvbiBzbmFwc2hvdF9hY3Rpb24sCiAJCQkJCQkJCSAgWExv Z1JlY1B0ciAqbHNuKTsKIHN0YXRpYyB2b2lkIGxpYnBxcmN2X2FsdGVyX3Nsb3QoV2FsUmVjZWl2 ZXJDb25uICpjb25uLCBjb25zdCBjaGFyICpzbG90bmFtZSwKLQkJCQkJCQkJYm9vbCBmYWlsb3Zl cik7CisJCQkJCQkJCWJvb2wgZmFpbG92ZXIsIGJvb2wgdHdvX3BoYXNlKTsKIHN0YXRpYyBwaWRf dCBsaWJwcXJjdl9nZXRfYmFja2VuZF9waWQoV2FsUmVjZWl2ZXJDb25uICpjb25uKTsKIHN0YXRp YyBXYWxSY3ZFeGVjUmVzdWx0ICpsaWJwcXJjdl9leGVjKFdhbFJlY2VpdmVyQ29ubiAqY29ubiwK IAkJCQkJCQkJCSAgIGNvbnN0IGNoYXIgKnF1ZXJ5LApAQCAtMTEyMSwxNSArMTEyMSwxNiBAQCBs aWJwcXJjdl9jcmVhdGVfc2xvdChXYWxSZWNlaXZlckNvbm4gKmNvbm4sIGNvbnN0IGNoYXIgKnNs b3RuYW1lLAogICovCiBzdGF0aWMgdm9pZAogbGlicHFyY3ZfYWx0ZXJfc2xvdChXYWxSZWNlaXZl ckNvbm4gKmNvbm4sIGNvbnN0IGNoYXIgKnNsb3RuYW1lLAotCQkJCQlib29sIGZhaWxvdmVyKQor CQkJCQlib29sIGZhaWxvdmVyLCBib29sIHR3b19waGFzZSkKIHsKIAlTdHJpbmdJbmZvRGF0YSBj bWQ7CiAJUEdyZXN1bHQgICAqcmVzOwogCiAJaW5pdFN0cmluZ0luZm8oJmNtZCk7Ci0JYXBwZW5k U3RyaW5nSW5mbygmY21kLCAiQUxURVJfUkVQTElDQVRJT05fU0xPVCAlcyAoIEZBSUxPVkVSICVz ICkiLAorCWFwcGVuZFN0cmluZ0luZm8oJmNtZCwgIkFMVEVSX1JFUExJQ0FUSU9OX1NMT1QgJXMg KCBGQUlMT1ZFUiAlcywgVFdPX1BIQVNFICVzICkiLAogCQkJCQkgcXVvdGVfaWRlbnRpZmllcihz bG90bmFtZSksCi0JCQkJCSBmYWlsb3ZlciA/ICJ0cnVlIiA6ICJmYWxzZSIpOworCQkJCQkgZmFp bG92ZXIgPyAidHJ1ZSIgOiAiZmFsc2UiLAorCQkJCQkgdHdvX3BoYXNlID8gInRydWUiIDogImZh bHNlIik7CiAKIAlyZXMgPSBsaWJwcXJjdl9QUWV4ZWMoY29ubi0+c3RyZWFtQ29ubiwgY21kLmRh dGEpOwogCXBmcmVlKGNtZC5kYXRhKTsKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3JlcGxpY2F0 aW9uL2xvZ2ljYWwvbGF1bmNoZXIuYyBiL3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL2xvZ2ljYWwv bGF1bmNoZXIuYwppbmRleCAyN2MzYTkxZmI3Li40NTc0NGI3NzFmIDEwMDY0NAotLS0gYS9zcmMv YmFja2VuZC9yZXBsaWNhdGlvbi9sb2dpY2FsL2xhdW5jaGVyLmMKKysrIGIvc3JjL2JhY2tlbmQv cmVwbGljYXRpb24vbG9naWNhbC9sYXVuY2hlci5jCkBAIC0yNzIsMTIgKzI3MiwxNSBAQCBsb2dp Y2FscmVwX3dvcmtlcl9maW5kKE9pZCBzdWJpZCwgT2lkIHJlbGlkLCBib29sIG9ubHlfcnVubmlu ZykKICAqIHRoZSBzdWJzY3JpcHRpb24sIGluc3RlYWQgb2YganVzdCBvbmUuCiAgKi8KIExpc3Qg KgotbG9naWNhbHJlcF93b3JrZXJzX2ZpbmQoT2lkIHN1YmlkLCBib29sIG9ubHlfcnVubmluZykK K2xvZ2ljYWxyZXBfd29ya2Vyc19maW5kKE9pZCBzdWJpZCwgYm9vbCBvbmx5X3J1bm5pbmcsIGJv b2wgcmVxdWlyZV9sb2NrKQogewogCWludAkJCWk7CiAJTGlzdAkgICAqcmVzID0gTklMOwogCi0J QXNzZXJ0KExXTG9ja0hlbGRCeU1lKExvZ2ljYWxSZXBXb3JrZXJMb2NrKSk7CisJaWYgKHJlcXVp cmVfbG9jaykKKwkJTFdMb2NrQWNxdWlyZShMb2dpY2FsUmVwV29ya2VyTG9jaywgTFdfU0hBUkVE KTsKKwllbHNlCisJCUFzc2VydChMV0xvY2tIZWxkQnlNZShMb2dpY2FsUmVwV29ya2VyTG9jaykp OwogCiAJLyogU2VhcmNoIGZvciBhdHRhY2hlZCB3b3JrZXIgZm9yIGEgZ2l2ZW4gc3Vic2NyaXB0 aW9uIGlkLiAqLwogCWZvciAoaSA9IDA7IGkgPCBtYXhfbG9naWNhbF9yZXBsaWNhdGlvbl93b3Jr ZXJzOyBpKyspCkBAIC0yODgsNiArMjkxLDkgQEAgbG9naWNhbHJlcF93b3JrZXJzX2ZpbmQoT2lk IHN1YmlkLCBib29sIG9ubHlfcnVubmluZykKIAkJCXJlcyA9IGxhcHBlbmQocmVzLCB3KTsKIAl9 CiAKKwlpZiAocmVxdWlyZV9sb2NrKQorCQlMV0xvY2tSZWxlYXNlKExvZ2ljYWxSZXBXb3JrZXJM b2NrKTsKKwogCXJldHVybiByZXM7CiB9CiAKQEAgLTc1OSw3ICs3NjUsNyBAQCBsb2dpY2FscmVw X3dvcmtlcl9kZXRhY2godm9pZCkKIAogCQlMV0xvY2tBY3F1aXJlKExvZ2ljYWxSZXBXb3JrZXJM b2NrLCBMV19TSEFSRUQpOwogCi0JCXdvcmtlcnMgPSBsb2dpY2FscmVwX3dvcmtlcnNfZmluZChN eUxvZ2ljYWxSZXBXb3JrZXItPnN1YmlkLCB0cnVlKTsKKwkJd29ya2VycyA9IGxvZ2ljYWxyZXBf d29ya2Vyc19maW5kKE15TG9naWNhbFJlcFdvcmtlci0+c3ViaWQsIHRydWUsIGZhbHNlKTsKIAkJ Zm9yZWFjaChsYywgd29ya2VycykKIAkJewogCQkJTG9naWNhbFJlcFdvcmtlciAqdyA9IChMb2dp Y2FsUmVwV29ya2VyICopIGxmaXJzdChsYyk7CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9yZXBs aWNhdGlvbi9sb2dpY2FsL3dvcmtlci5jIGIvc3JjL2JhY2tlbmQvcmVwbGljYXRpb24vbG9naWNh bC93b3JrZXIuYwppbmRleCBjMGJkYTYyNjliLi42Yzc5OGNkNWI0IDEwMDY0NAotLS0gYS9zcmMv YmFja2VuZC9yZXBsaWNhdGlvbi9sb2dpY2FsL3dvcmtlci5jCisrKyBiL3NyYy9iYWNrZW5kL3Jl cGxpY2F0aW9uL2xvZ2ljYWwvd29ya2VyLmMKQEAgLTQwMSw5ICs0MDEsNiBAQCBzdGF0aWMgdm9p ZCBhcHBseV9oYW5kbGVfdHVwbGVfcm91dGluZyhBcHBseUV4ZWN1dGlvbkRhdGEgKmVkYXRhLAog CQkJCQkJCQkJICAgTG9naWNhbFJlcFR1cGxlRGF0YSAqbmV3dHVwLAogCQkJCQkJCQkJICAgQ21k VHlwZSBvcGVyYXRpb24pOwogCi0vKiBDb21wdXRlIEdJRCBmb3IgdHdvX3BoYXNlIHRyYW5zYWN0 aW9ucyAqLwotc3RhdGljIHZvaWQgVHdvUGhhc2VUcmFuc2FjdGlvbkdpZChPaWQgc3ViaWQsIFRy YW5zYWN0aW9uSWQgeGlkLCBjaGFyICpnaWQsIGludCBzemdpZCk7Ci0KIC8qIEZ1bmN0aW9ucyBm b3Igc2tpcHBpbmcgY2hhbmdlcyAqLwogc3RhdGljIHZvaWQgbWF5YmVfc3RhcnRfc2tpcHBpbmdf Y2hhbmdlcyhYTG9nUmVjUHRyIGZpbmlzaF9sc24pOwogc3RhdGljIHZvaWQgc3RvcF9za2lwcGlu Z19jaGFuZ2VzKHZvaWQpOwpAQCAtMzkxMSw3ICszOTA4LDcgQEAgbWF5YmVfcmVyZWFkX3N1YnNj cmlwdGlvbih2b2lkKQogCS8qICFzbG90bmFtZSBzaG91bGQgbmV2ZXIgaGFwcGVuIHdoZW4gZW5h YmxlZCBpcyB0cnVlLiAqLwogCUFzc2VydChuZXdzdWItPnNsb3RuYW1lKTsKIAotCS8qIHR3by1w aGFzZSBzaG91bGQgbm90IGJlIGFsdGVyZWQgKi8KKwkvKiB0d28tcGhhc2UgY2Fubm90IGJlIGFs dGVyZWQgd2hpbGUgdGhlIHdvcmtlciBleGlzdHMgKi8KIAlBc3NlcnQobmV3c3ViLT50d29waGFz ZXN0YXRlID09IE15U3Vic2NyaXB0aW9uLT50d29waGFzZXN0YXRlKTsKIAogCS8qCkBAIC00Mzk2 LDI0ICs0MzkzLDYgQEAgY2xlYW51cF9zdWJ4YWN0X2luZm8oKQogCXN1YnhhY3RfZGF0YS5uc3Vi eGFjdHNfbWF4ID0gMDsKIH0KIAotLyoKLSAqIEZvcm0gdGhlIHByZXBhcmVkIHRyYW5zYWN0aW9u IEdJRCBmb3IgdHdvX3BoYXNlIHRyYW5zYWN0aW9ucy4KLSAqCi0gKiBSZXR1cm4gdGhlIEdJRCBp biB0aGUgc3VwcGxpZWQgYnVmZmVyLgotICovCi1zdGF0aWMgdm9pZAotVHdvUGhhc2VUcmFuc2Fj dGlvbkdpZChPaWQgc3ViaWQsIFRyYW5zYWN0aW9uSWQgeGlkLCBjaGFyICpnaWQsIGludCBzemdp ZCkKLXsKLQlBc3NlcnQoc3ViaWQgIT0gSW52YWxpZFJlcE9yaWdpbklkKTsKLQotCWlmICghVHJh bnNhY3Rpb25JZElzVmFsaWQoeGlkKSkKLQkJZXJlcG9ydChFUlJPUiwKLQkJCQkoZXJyY29kZShF UlJDT0RFX1BST1RPQ09MX1ZJT0xBVElPTiksCi0JCQkJIGVycm1zZ19pbnRlcm5hbCgiaW52YWxp ZCB0d28tcGhhc2UgdHJhbnNhY3Rpb24gSUQiKSkpOwotCi0Jc25wcmludGYoZ2lkLCBzemdpZCwg InBnX2dpZF8ldV8ldSIsIHN1YmlkLCB4aWQpOwotfQotCiAvKgogICogQ29tbW9uIGZ1bmN0aW9u IHRvIHJ1biB0aGUgYXBwbHkgbG9vcCB3aXRoIGVycm9yIGhhbmRsaW5nLiBEaXNhYmxlIHRoZQog ICogc3Vic2NyaXB0aW9uLCBpZiBuZWNlc3NhcnkuCkBAIC01MDE0LDcgKzQ5OTMsNyBAQCBBdEVP WGFjdF9Mb2dpY2FsUmVwV29ya2Vycyhib29sIGlzQ29tbWl0KQogCQkJTGlzdAkgICAqd29ya2Vy czsKIAkJCUxpc3RDZWxsICAgKmxjMjsKIAotCQkJd29ya2VycyA9IGxvZ2ljYWxyZXBfd29ya2Vy c19maW5kKHN1YmlkLCB0cnVlKTsKKwkJCXdvcmtlcnMgPSBsb2dpY2FscmVwX3dvcmtlcnNfZmlu ZChzdWJpZCwgdHJ1ZSwgZmFsc2UpOwogCQkJZm9yZWFjaChsYzIsIHdvcmtlcnMpCiAJCQl7CiAJ CQkJTG9naWNhbFJlcFdvcmtlciAqd29ya2VyID0gKExvZ2ljYWxSZXBXb3JrZXIgKikgbGZpcnN0 KGxjMik7CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9yZXBsaWNhdGlvbi9zbG90LmMgYi9zcmMv YmFja2VuZC9yZXBsaWNhdGlvbi9zbG90LmMKaW5kZXggYmFmOWI4OWRjNC4uMmYxNjdhMmFkYyAx MDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvcmVwbGljYXRpb24vc2xvdC5jCisrKyBiL3NyYy9iYWNr ZW5kL3JlcGxpY2F0aW9uL3Nsb3QuYwpAQCAtODA0LDkgKzgwNCwxMiBAQCBSZXBsaWNhdGlvblNs b3REcm9wKGNvbnN0IGNoYXIgKm5hbWUsIGJvb2wgbm93YWl0KQogICogQ2hhbmdlIHRoZSBkZWZp bml0aW9uIG9mIHRoZSBzbG90IGlkZW50aWZpZWQgYnkgdGhlIHNwZWNpZmllZCBuYW1lLgogICov CiB2b2lkCi1SZXBsaWNhdGlvblNsb3RBbHRlcihjb25zdCBjaGFyICpuYW1lLCBib29sIGZhaWxv dmVyKQorUmVwbGljYXRpb25TbG90QWx0ZXIoY29uc3QgY2hhciAqbmFtZSwgYm9vbCAqZmFpbG92 ZXIsIGJvb2wgKnR3b19waGFzZSkKIHsKKwlib29sCQl1cGRhdGVfc2xvdCA9IGZhbHNlOworCiAJ QXNzZXJ0KE15UmVwbGljYXRpb25TbG90ID09IE5VTEwpOworCUFzc2VydChmYWlsb3ZlciB8fCB0 d29fcGhhc2UpOwogCiAJUmVwbGljYXRpb25TbG90QWNxdWlyZShuYW1lLCBmYWxzZSk7CiAKQEAg LTgzMiw3ICs4MzUsNyBAQCBSZXBsaWNhdGlvblNsb3RBbHRlcihjb25zdCBjaGFyICpuYW1lLCBi b29sIGZhaWxvdmVyKQogCQkgKiBEbyBub3QgYWxsb3cgdXNlcnMgdG8gZW5hYmxlIGZhaWxvdmVy IG9uIHRoZSBzdGFuZGJ5IGFzIHdlIGRvIG5vdAogCQkgKiBzdXBwb3J0IHN5bmMgdG8gdGhlIGNh c2NhZGluZyBzdGFuZGJ5LgogCQkgKi8KLQkJaWYgKGZhaWxvdmVyKQorCQlpZiAoZmFpbG92ZXIg JiYgKmZhaWxvdmVyKQogCQkJZXJlcG9ydChFUlJPUiwKIAkJCQkJZXJyY29kZShFUlJDT0RFX0ZF QVRVUkVfTk9UX1NVUFBPUlRFRCksCiAJCQkJCWVycm1zZygiY2Fubm90IGVuYWJsZSBmYWlsb3Zl ciBmb3IgYSByZXBsaWNhdGlvbiBzbG90IgpAQCAtODQzLDE3ICs4NDYsMzIgQEAgUmVwbGljYXRp b25TbG90QWx0ZXIoY29uc3QgY2hhciAqbmFtZSwgYm9vbCBmYWlsb3ZlcikKIAkgKiBEbyBub3Qg YWxsb3cgdXNlcnMgdG8gZW5hYmxlIGZhaWxvdmVyIGZvciB0ZW1wb3Jhcnkgc2xvdHMgYXMgd2Ug ZG8gbm90CiAJICogc3VwcG9ydCBzeW5jaW5nIHRlbXBvcmFyeSBzbG90cyB0byB0aGUgc3RhbmRi eS4KIAkgKi8KLQlpZiAoZmFpbG92ZXIgJiYgTXlSZXBsaWNhdGlvblNsb3QtPmRhdGEucGVyc2lz dGVuY3kgPT0gUlNfVEVNUE9SQVJZKQorCWlmIChmYWlsb3ZlciAmJiAqZmFpbG92ZXIgJiYKKwkJ TXlSZXBsaWNhdGlvblNsb3QtPmRhdGEucGVyc2lzdGVuY3kgPT0gUlNfVEVNUE9SQVJZKQogCQll cmVwb3J0KEVSUk9SLAogCQkJCWVycmNvZGUoRVJSQ09ERV9GRUFUVVJFX05PVF9TVVBQT1JURUQp LAogCQkJCWVycm1zZygiY2Fubm90IGVuYWJsZSBmYWlsb3ZlciBmb3IgYSB0ZW1wb3JhcnkgcmVw bGljYXRpb24gc2xvdCIpKTsKIAotCWlmIChNeVJlcGxpY2F0aW9uU2xvdC0+ZGF0YS5mYWlsb3Zl ciAhPSBmYWlsb3ZlcikKKwlpZiAoZmFpbG92ZXIgJiYgTXlSZXBsaWNhdGlvblNsb3QtPmRhdGEu ZmFpbG92ZXIgIT0gKmZhaWxvdmVyKQorCXsKKwkJU3BpbkxvY2tBY3F1aXJlKCZNeVJlcGxpY2F0 aW9uU2xvdC0+bXV0ZXgpOworCQlNeVJlcGxpY2F0aW9uU2xvdC0+ZGF0YS5mYWlsb3ZlciA9ICpm YWlsb3ZlcjsKKwkJU3BpbkxvY2tSZWxlYXNlKCZNeVJlcGxpY2F0aW9uU2xvdC0+bXV0ZXgpOwor CisJCXVwZGF0ZV9zbG90ID0gdHJ1ZTsKKwl9CisKKwlpZiAodHdvX3BoYXNlICYmIE15UmVwbGlj YXRpb25TbG90LT5kYXRhLnR3b19waGFzZSAhPSAqdHdvX3BoYXNlKQogCXsKIAkJU3BpbkxvY2tB Y3F1aXJlKCZNeVJlcGxpY2F0aW9uU2xvdC0+bXV0ZXgpOwotCQlNeVJlcGxpY2F0aW9uU2xvdC0+ ZGF0YS5mYWlsb3ZlciA9IGZhaWxvdmVyOworCQlNeVJlcGxpY2F0aW9uU2xvdC0+ZGF0YS50d29f cGhhc2UgPSAqdHdvX3BoYXNlOwogCQlTcGluTG9ja1JlbGVhc2UoJk15UmVwbGljYXRpb25TbG90 LT5tdXRleCk7CiAKKwkJdXBkYXRlX3Nsb3QgPSB0cnVlOworCX0KKworCWlmICh1cGRhdGVfc2xv dCkKKwl7CiAJCVJlcGxpY2F0aW9uU2xvdE1hcmtEaXJ0eSgpOwogCQlSZXBsaWNhdGlvblNsb3RT YXZlKCk7CiAJfQpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvcmVwbGljYXRpb24vd2Fsc2VuZGVy LmMgYi9zcmMvYmFja2VuZC9yZXBsaWNhdGlvbi93YWxzZW5kZXIuYwppbmRleCAyZDFhOWVjOTAw Li5mM2I1MDY4ZDk1IDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9yZXBsaWNhdGlvbi93YWxzZW5k ZXIuYworKysgYi9zcmMvYmFja2VuZC9yZXBsaWNhdGlvbi93YWxzZW5kZXIuYwpAQCAtMTQxMCwy MiArMTQxMCwzNCBAQCBEcm9wUmVwbGljYXRpb25TbG90KERyb3BSZXBsaWNhdGlvblNsb3RDbWQg KmNtZCkKICAqIFByb2Nlc3MgZXh0cmEgb3B0aW9ucyBnaXZlbiB0byBBTFRFUl9SRVBMSUNBVElP Tl9TTE9ULgogICovCiBzdGF0aWMgdm9pZAotUGFyc2VBbHRlclJlcGxTbG90T3B0aW9ucyhBbHRl clJlcGxpY2F0aW9uU2xvdENtZCAqY21kLCBib29sICpmYWlsb3ZlcikKK1BhcnNlQWx0ZXJSZXBs U2xvdE9wdGlvbnMoQWx0ZXJSZXBsaWNhdGlvblNsb3RDbWQgKmNtZCwKKwkJCQkJCSAgYm9vbCAq ZmFpbG92ZXJfZ2l2ZW4sIGJvb2wgKmZhaWxvdmVyLAorCQkJCQkJICBib29sICp0d29fcGhhc2Vf Z2l2ZW4sIGJvb2wgKnR3b19waGFzZSkKIHsKLQlib29sCQlmYWlsb3Zlcl9naXZlbiA9IGZhbHNl OworCSpmYWlsb3Zlcl9naXZlbiA9IGZhbHNlOworCSp0d29fcGhhc2VfZ2l2ZW4gPSBmYWxzZTsK IAogCS8qIFBhcnNlIG9wdGlvbnMgKi8KIAlmb3JlYWNoX3B0cihEZWZFbGVtLCBkZWZlbCwgY21k LT5vcHRpb25zKQogCXsKIAkJaWYgKHN0cmNtcChkZWZlbC0+ZGVmbmFtZSwgImZhaWxvdmVyIikg PT0gMCkKIAkJewotCQkJaWYgKGZhaWxvdmVyX2dpdmVuKQorCQkJaWYgKCpmYWlsb3Zlcl9naXZl bikKIAkJCQllcmVwb3J0KEVSUk9SLAogCQkJCQkJKGVycmNvZGUoRVJSQ09ERV9TWU5UQVhfRVJS T1IpLAogCQkJCQkJIGVycm1zZygiY29uZmxpY3Rpbmcgb3IgcmVkdW5kYW50IG9wdGlvbnMiKSkp OwotCQkJZmFpbG92ZXJfZ2l2ZW4gPSB0cnVlOworCQkJKmZhaWxvdmVyX2dpdmVuID0gdHJ1ZTsK IAkJCSpmYWlsb3ZlciA9IGRlZkdldEJvb2xlYW4oZGVmZWwpOwogCQl9CisJCWVsc2UgaWYgKHN0 cmNtcChkZWZlbC0+ZGVmbmFtZSwgInR3b19waGFzZSIpID09IDApCisJCXsKKwkJCWlmICgqdHdv X3BoYXNlX2dpdmVuKQorCQkJCWVyZXBvcnQoRVJST1IsCisJCQkJCQkoZXJyY29kZShFUlJDT0RF X1NZTlRBWF9FUlJPUiksCisJCQkJCQkgZXJybXNnKCJjb25mbGljdGluZyBvciByZWR1bmRhbnQg b3B0aW9ucyIpKSk7CisJCQkqdHdvX3BoYXNlX2dpdmVuID0gdHJ1ZTsKKwkJCSp0d29fcGhhc2Ug PSBkZWZHZXRCb29sZWFuKGRlZmVsKTsKKwkJfQogCQllbHNlCiAJCQllbG9nKEVSUk9SLCAidW5y ZWNvZ25pemVkIG9wdGlvbjogJXMiLCBkZWZlbC0+ZGVmbmFtZSk7CiAJfQpAQCAtMTQzNywxMCAr MTQ0OSwxNyBAQCBQYXJzZUFsdGVyUmVwbFNsb3RPcHRpb25zKEFsdGVyUmVwbGljYXRpb25TbG90 Q21kICpjbWQsIGJvb2wgKmZhaWxvdmVyKQogc3RhdGljIHZvaWQKIEFsdGVyUmVwbGljYXRpb25T bG90KEFsdGVyUmVwbGljYXRpb25TbG90Q21kICpjbWQpCiB7Ci0JYm9vbAkJZmFpbG92ZXIgPSBm YWxzZTsKKwlib29sCQlmYWlsb3Zlcl9naXZlbjsKKwlib29sCQl0d29fcGhhc2VfZ2l2ZW47CisJ Ym9vbAkJZmFpbG92ZXI7CisJYm9vbAkJdHdvX3BoYXNlOworCisJUGFyc2VBbHRlclJlcGxTbG90 T3B0aW9ucyhjbWQsICZmYWlsb3Zlcl9naXZlbiwgJmZhaWxvdmVyLAorCQkJCQkJCSAgJnR3b19w aGFzZV9naXZlbiwgJnR3b19waGFzZSk7CiAKLQlQYXJzZUFsdGVyUmVwbFNsb3RPcHRpb25zKGNt ZCwgJmZhaWxvdmVyKTsKLQlSZXBsaWNhdGlvblNsb3RBbHRlcihjbWQtPnNsb3RuYW1lLCBmYWls b3Zlcik7CisJUmVwbGljYXRpb25TbG90QWx0ZXIoY21kLT5zbG90bmFtZSwKKwkJCQkJCSBmYWls b3Zlcl9naXZlbiA/ICZmYWlsb3ZlciA6IE5VTEwsCisJCQkJCQkgdHdvX3BoYXNlX2dpdmVuID8g JnR3b19waGFzZSA6IE5VTEwpOwogfQogCiAvKgpkaWZmIC0tZ2l0IGEvc3JjL2Jpbi9wc3FsL3Rh Yi1jb21wbGV0ZS5jIGIvc3JjL2Jpbi9wc3FsL3RhYi1jb21wbGV0ZS5jCmluZGV4IGQ0NTNlMjI0 ZDkuLjg5MWZhY2UxYjYgMTAwNjQ0Ci0tLSBhL3NyYy9iaW4vcHNxbC90YWItY29tcGxldGUuYwor KysgYi9zcmMvYmluL3BzcWwvdGFiLWNvbXBsZXRlLmMKQEAgLTE5NDgsNyArMTk0OCw3IEBAIHBz cWxfY29tcGxldGlvbihjb25zdCBjaGFyICp0ZXh0LCBpbnQgc3RhcnQsIGludCBlbmQpCiAJZWxz ZSBpZiAoSGVhZE1hdGNoZXMoIkFMVEVSIiwgIlNVQlNDUklQVElPTiIsIE1hdGNoQW55KSAmJiBU YWlsTWF0Y2hlcygiU0VUIiwgIigiKSkKIAkJQ09NUExFVEVfV0lUSCgiYmluYXJ5IiwgImRpc2Fi bGVfb25fZXJyb3IiLCAiZmFpbG92ZXIiLCAib3JpZ2luIiwKIAkJCQkJICAicGFzc3dvcmRfcmVx dWlyZWQiLCAicnVuX2FzX293bmVyIiwgInNsb3RfbmFtZSIsCi0JCQkJCSAgInN0cmVhbWluZyIs ICJzeW5jaHJvbm91c19jb21taXQiKTsKKwkJCQkJICAic3RyZWFtaW5nIiwgInN5bmNocm9ub3Vz X2NvbW1pdCIsICJ0d29fcGhhc2UiKTsKIAkvKiBBTFRFUiBTVUJTQ1JJUFRJT04gPG5hbWU+IFNL SVAgKCAqLwogCWVsc2UgaWYgKEhlYWRNYXRjaGVzKCJBTFRFUiIsICJTVUJTQ1JJUFRJT04iLCBN YXRjaEFueSkgJiYgVGFpbE1hdGNoZXMoIlNLSVAiLCAiKCIpKQogCQlDT01QTEVURV9XSVRIKCJs c24iKTsKZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL2FjY2Vzcy90d29waGFzZS5oIGIvc3JjL2lu Y2x1ZGUvYWNjZXNzL3R3b3BoYXNlLmgKaW5kZXggNTYyNDhjMDAwNi4uZDM3ZTA2ZmRlZSAxMDA2 NDQKLS0tIGEvc3JjL2luY2x1ZGUvYWNjZXNzL3R3b3BoYXNlLmgKKysrIGIvc3JjL2luY2x1ZGUv YWNjZXNzL3R3b3BoYXNlLmgKQEAgLTYyLDQgKzYyLDkgQEAgZXh0ZXJuIHZvaWQgUHJlcGFyZVJl ZG9SZW1vdmUoVHJhbnNhY3Rpb25JZCB4aWQsIGJvb2wgZ2l2ZVdhcm5pbmcpOwogZXh0ZXJuIHZv aWQgcmVzdG9yZVR3b1BoYXNlRGF0YSh2b2lkKTsKIGV4dGVybiBib29sIExvb2t1cEdYYWN0KGNv bnN0IGNoYXIgKmdpZCwgWExvZ1JlY1B0ciBwcmVwYXJlX2VuZF9sc24sCiAJCQkJCQlUaW1lc3Rh bXBUeiBvcmlnaW5fcHJlcGFyZV90aW1lc3RhbXApOworCitleHRlcm4gdm9pZCBUd29QaGFzZVRy YW5zYWN0aW9uR2lkKE9pZCBzdWJpZCwgVHJhbnNhY3Rpb25JZCB4aWQsIGNoYXIgKmdpZCwKKwkJ CQkJCQkJICAgaW50IHN6Z2lkKTsKK2V4dGVybiBib29sIExvb2t1cEdYYWN0QnlTdWJpZChPaWQg c3ViaWQpOworCiAjZW5kaWYJCQkJCQkJLyogVFdPUEhBU0VfSCAqLwpkaWZmIC0tZ2l0IGEvc3Jj L2luY2x1ZGUvcmVwbGljYXRpb24vc2xvdC5oIGIvc3JjL2luY2x1ZGUvcmVwbGljYXRpb24vc2xv dC5oCmluZGV4IGM5Njc1ZWU4N2MuLmNkZTE2NDQ3MmEgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRl L3JlcGxpY2F0aW9uL3Nsb3QuaAorKysgYi9zcmMvaW5jbHVkZS9yZXBsaWNhdGlvbi9zbG90LmgK QEAgLTI0Myw3ICsyNDMsOCBAQCBleHRlcm4gdm9pZCBSZXBsaWNhdGlvblNsb3RDcmVhdGUoY29u c3QgY2hhciAqbmFtZSwgYm9vbCBkYl9zcGVjaWZpYywKIGV4dGVybiB2b2lkIFJlcGxpY2F0aW9u U2xvdFBlcnNpc3Qodm9pZCk7CiBleHRlcm4gdm9pZCBSZXBsaWNhdGlvblNsb3REcm9wKGNvbnN0 IGNoYXIgKm5hbWUsIGJvb2wgbm93YWl0KTsKIGV4dGVybiB2b2lkIFJlcGxpY2F0aW9uU2xvdERy b3BBY3F1aXJlZCh2b2lkKTsKLWV4dGVybiB2b2lkIFJlcGxpY2F0aW9uU2xvdEFsdGVyKGNvbnN0 IGNoYXIgKm5hbWUsIGJvb2wgZmFpbG92ZXIpOworZXh0ZXJuIHZvaWQgUmVwbGljYXRpb25TbG90 QWx0ZXIoY29uc3QgY2hhciAqbmFtZSwgYm9vbCAqZmFpbG92ZXIsCisJCQkJCQkJCSBib29sICp0 d29fcGhhc2UpOwogCiBleHRlcm4gdm9pZCBSZXBsaWNhdGlvblNsb3RBY3F1aXJlKGNvbnN0IGNo YXIgKm5hbWUsIGJvb2wgbm93YWl0KTsKIGV4dGVybiB2b2lkIFJlcGxpY2F0aW9uU2xvdFJlbGVh c2Uodm9pZCk7CmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9yZXBsaWNhdGlvbi93YWxyZWNlaXZl ci5oIGIvc3JjL2luY2x1ZGUvcmVwbGljYXRpb24vd2FscmVjZWl2ZXIuaAppbmRleCAxMmY3MWZh OTliLi4zMWZhMTI1N2VjIDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS9yZXBsaWNhdGlvbi93YWxy ZWNlaXZlci5oCisrKyBiL3NyYy9pbmNsdWRlL3JlcGxpY2F0aW9uL3dhbHJlY2VpdmVyLmgKQEAg LTM3MiwxMiArMzcyLDEzIEBAIHR5cGVkZWYgY2hhciAqKCp3YWxyY3ZfY3JlYXRlX3Nsb3RfZm4p IChXYWxSZWNlaXZlckNvbm4gKmNvbm4sCiAvKgogICogd2FscmN2X2FsdGVyX3Nsb3RfZm4KICAq Ci0gKiBDaGFuZ2UgdGhlIGRlZmluaXRpb24gb2YgYSByZXBsaWNhdGlvbiBzbG90LiBDdXJyZW50 bHksIGl0IG9ubHkgc3VwcG9ydHMKLSAqIGNoYW5naW5nIHRoZSBmYWlsb3ZlciBwcm9wZXJ0eSBv ZiB0aGUgc2xvdC4KKyAqIENoYW5nZSB0aGUgZGVmaW5pdGlvbiBvZiBhIHJlcGxpY2F0aW9uIHNs b3QuIEN1cnJlbnRseSwgaXQgc3VwcG9ydHMKKyAqIGNoYW5naW5nIHRoZSBmYWlsb3ZlciBhbmQg dGhlIHR3b19waGFzZSBwcm9wZXJ0eSBvZiB0aGUgc2xvdC4KICAqLwogdHlwZWRlZiB2b2lkICgq d2FscmN2X2FsdGVyX3Nsb3RfZm4pIChXYWxSZWNlaXZlckNvbm4gKmNvbm4sCiAJCQkJCQkJCQkg IGNvbnN0IGNoYXIgKnNsb3RuYW1lLAotCQkJCQkJCQkJICBib29sIGZhaWxvdmVyKTsKKwkJCQkJ CQkJCSAgYm9vbCBmYWlsb3ZlciwKKwkJCQkJCQkJCSAgYm9vbCB0d29fcGhhc2UpOwogCiAvKgog ICogd2FscmN2X2dldF9iYWNrZW5kX3BpZF9mbgpAQCAtNDU1LDggKzQ1Niw4IEBAIGV4dGVybiBQ R0RMTElNUE9SVCBXYWxSZWNlaXZlckZ1bmN0aW9uc1R5cGUgKldhbFJlY2VpdmVyRnVuY3Rpb25z OwogCVdhbFJlY2VpdmVyRnVuY3Rpb25zLT53YWxyY3Zfc2VuZChjb25uLCBidWZmZXIsIG5ieXRl cykKICNkZWZpbmUgd2FscmN2X2NyZWF0ZV9zbG90KGNvbm4sIHNsb3RuYW1lLCB0ZW1wb3Jhcnks IHR3b19waGFzZSwgZmFpbG92ZXIsIHNuYXBzaG90X2FjdGlvbiwgbHNuKSBcCiAJV2FsUmVjZWl2 ZXJGdW5jdGlvbnMtPndhbHJjdl9jcmVhdGVfc2xvdChjb25uLCBzbG90bmFtZSwgdGVtcG9yYXJ5 LCB0d29fcGhhc2UsIGZhaWxvdmVyLCBzbmFwc2hvdF9hY3Rpb24sIGxzbikKLSNkZWZpbmUgd2Fs cmN2X2FsdGVyX3Nsb3QoY29ubiwgc2xvdG5hbWUsIGZhaWxvdmVyKSBcCi0JV2FsUmVjZWl2ZXJG dW5jdGlvbnMtPndhbHJjdl9hbHRlcl9zbG90KGNvbm4sIHNsb3RuYW1lLCBmYWlsb3ZlcikKKyNk ZWZpbmUgd2FscmN2X2FsdGVyX3Nsb3QoY29ubiwgc2xvdG5hbWUsIGZhaWxvdmVyLCB0d29fcGhh c2UpIFwKKwlXYWxSZWNlaXZlckZ1bmN0aW9ucy0+d2FscmN2X2FsdGVyX3Nsb3QoY29ubiwgc2xv dG5hbWUsIGZhaWxvdmVyLCB0d29fcGhhc2UpCiAjZGVmaW5lIHdhbHJjdl9nZXRfYmFja2VuZF9w aWQoY29ubikgXAogCVdhbFJlY2VpdmVyRnVuY3Rpb25zLT53YWxyY3ZfZ2V0X2JhY2tlbmRfcGlk KGNvbm4pCiAjZGVmaW5lIHdhbHJjdl9leGVjKGNvbm4sIGV4ZWMsIG5SZXRUeXBlcywgcmV0VHlw ZXMpIFwKZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL3JlcGxpY2F0aW9uL3dvcmtlcl9pbnRlcm5h bC5oIGIvc3JjL2luY2x1ZGUvcmVwbGljYXRpb24vd29ya2VyX2ludGVybmFsLmgKaW5kZXggNTE1 YWVmZDUxOS4uOTkwZjUyNDJmOSAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvcmVwbGljYXRpb24v d29ya2VyX2ludGVybmFsLmgKKysrIGIvc3JjL2luY2x1ZGUvcmVwbGljYXRpb24vd29ya2VyX2lu dGVybmFsLmgKQEAgLTI0MCw3ICsyNDAsOCBAQCBleHRlcm4gUEdETExJTVBPUlQgYm9vbCBJbml0 aWFsaXppbmdBcHBseVdvcmtlcjsKIGV4dGVybiB2b2lkIGxvZ2ljYWxyZXBfd29ya2VyX2F0dGFj aChpbnQgc2xvdCk7CiBleHRlcm4gTG9naWNhbFJlcFdvcmtlciAqbG9naWNhbHJlcF93b3JrZXJf ZmluZChPaWQgc3ViaWQsIE9pZCByZWxpZCwKIAkJCQkJCQkJCQkJCWJvb2wgb25seV9ydW5uaW5n KTsKLWV4dGVybiBMaXN0ICpsb2dpY2FscmVwX3dvcmtlcnNfZmluZChPaWQgc3ViaWQsIGJvb2wg b25seV9ydW5uaW5nKTsKK2V4dGVybiBMaXN0ICpsb2dpY2FscmVwX3dvcmtlcnNfZmluZChPaWQg c3ViaWQsIGJvb2wgb25seV9ydW5uaW5nLAorCQkJCQkJCQkJIGJvb2wgcmVxdWlyZV9sb2NrKTsK IGV4dGVybiBib29sIGxvZ2ljYWxyZXBfd29ya2VyX2xhdW5jaChMb2dpY2FsUmVwV29ya2VyVHlw ZSB3dHlwZSwKIAkJCQkJCQkJCSBPaWQgZGJpZCwgT2lkIHN1YmlkLCBjb25zdCBjaGFyICpzdWJu YW1lLAogCQkJCQkJCQkJIE9pZCB1c2VyaWQsIE9pZCByZWxpZCwKZGlmZiAtLWdpdCBhL3NyYy90 ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvc3Vic2NyaXB0aW9uLm91dCBiL3NyYy90ZXN0L3JlZ3Jlc3Mv ZXhwZWN0ZWQvc3Vic2NyaXB0aW9uLm91dAppbmRleCA1YzJmMWVlNTE3Li41MmNjYjE2MGZhIDEw MDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3N1YnNjcmlwdGlvbi5vdXQKKysr IGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9zdWJzY3JpcHRpb24ub3V0CkBAIC0zNzcsMTAg KzM3Nyw3IEBAIEhJTlQ6ICBUbyBpbml0aWF0ZSByZXBsaWNhdGlvbiwgeW91IG11c3QgbWFudWFs bHkgY3JlYXRlIHRoZSByZXBsaWNhdGlvbiBzbG90LCBlCiAgcmVncmVzc190ZXN0c3ViIHwgcmVn cmVzc19zdWJzY3JpcHRpb25fdXNlciB8IGYgICAgICAgfCB7dGVzdHB1Yn0gICB8IGYgICAgICB8 IG9mZiAgICAgICB8IHAgICAgICAgICAgICAgICAgfCBmICAgICAgICAgICAgICAgIHwgYW55ICAg IHwgdCAgICAgICAgICAgICAgICAgfCBmICAgICAgICAgICAgIHwgZiAgICAgICAgfCBvZmYgICAg ICAgICAgICAgICAgfCBkYm5hbWU9cmVncmVzc19kb2Vzbm90ZXhpc3QgfCAwLzAKICgxIHJvdykK IAotLS1mYWlsIC0gYWx0ZXIgb2YgdHdvX3BoYXNlIG9wdGlvbiBub3Qgc3VwcG9ydGVkLgotQUxU RVIgU1VCU0NSSVBUSU9OIHJlZ3Jlc3NfdGVzdHN1YiBTRVQgKHR3b19waGFzZSA9IGZhbHNlKTsK LUVSUk9SOiAgdW5yZWNvZ25pemVkIHN1YnNjcmlwdGlvbiBwYXJhbWV0ZXI6ICJ0d29fcGhhc2Ui Ci0tLSBidXQgY2FuIGFsdGVyIHN0cmVhbWluZyB3aGVuIHR3b19waGFzZSBlbmFibGVkCistLSBX ZSBjYW4gYWx0ZXIgc3RyZWFtaW5nIHdoZW4gdHdvX3BoYXNlIGVuYWJsZWQKIEFMVEVSIFNVQlND UklQVElPTiByZWdyZXNzX3Rlc3RzdWIgU0VUIChzdHJlYW1pbmcgPSB0cnVlKTsKIFxkUnMrCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGlz dCBvZiBzdWJzY3JpcHRpb25zCmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC9zdWJz Y3JpcHRpb24uc3FsIGIvc3JjL3Rlc3QvcmVncmVzcy9zcWwvc3Vic2NyaXB0aW9uLnNxbAppbmRl eCAzZTViYTRjYjhjLi5hMzg4NmQ3OWNhIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL3Nx bC9zdWJzY3JpcHRpb24uc3FsCisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3N1YnNjcmlwdGlv bi5zcWwKQEAgLTI1NiwxMCArMjU2LDcgQEAgQ1JFQVRFIFNVQlNDUklQVElPTiByZWdyZXNzX3Rl c3RzdWIgQ09OTkVDVElPTiAnZGJuYW1lPXJlZ3Jlc3NfZG9lc25vdGV4aXN0JyBQVUIKIENSRUFU RSBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3ViIENPTk5FQ1RJT04gJ2RibmFtZT1yZWdyZXNz X2RvZXNub3RleGlzdCcgUFVCTElDQVRJT04gdGVzdHB1YiBXSVRIIChjb25uZWN0ID0gZmFsc2Us IHR3b19waGFzZSA9IHRydWUpOwogCiBcZFJzKwotLS1mYWlsIC0gYWx0ZXIgb2YgdHdvX3BoYXNl IG9wdGlvbiBub3Qgc3VwcG9ydGVkLgotQUxURVIgU1VCU0NSSVBUSU9OIHJlZ3Jlc3NfdGVzdHN1 YiBTRVQgKHR3b19waGFzZSA9IGZhbHNlKTsKLQotLS0gYnV0IGNhbiBhbHRlciBzdHJlYW1pbmcg d2hlbiB0d29fcGhhc2UgZW5hYmxlZAorLS0gV2UgY2FuIGFsdGVyIHN0cmVhbWluZyB3aGVuIHR3 b19waGFzZSBlbmFibGVkCiBBTFRFUiBTVUJTQ1JJUFRJT04gcmVncmVzc190ZXN0c3ViIFNFVCAo c3RyZWFtaW5nID0gdHJ1ZSk7CiAKIFxkUnMrCmRpZmYgLS1naXQgYS9zcmMvdGVzdC9zdWJzY3Jp cHRpb24vdC8wMjFfdHdvcGhhc2UucGwgYi9zcmMvdGVzdC9zdWJzY3JpcHRpb24vdC8wMjFfdHdv cGhhc2UucGwKaW5kZXggOTQzN2NkNGMzYi4uNGU4ZjYyN2Y3YiAxMDA2NDQKLS0tIGEvc3JjL3Rl c3Qvc3Vic2NyaXB0aW9uL3QvMDIxX3R3b3BoYXNlLnBsCisrKyBiL3NyYy90ZXN0L3N1YnNjcmlw dGlvbi90LzAyMV90d29waGFzZS5wbApAQCAtMzY3LDYgKzM2Nyw4MSBAQCAkcmVzdWx0ID0KICAg JG5vZGVfc3Vic2NyaWJlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsICJTRUxFQ1QgY291bnQoKikg RlJPTSB0YWJfY29weTsiKTsKIGlzKCRyZXN1bHQsIHFxKDIpLCAncmVwbGljYXRlZCBkYXRhIGlu IHN1YnNjcmliZXIgdGFibGUnKTsKIAorIyBDbGVhbiB1cAorJG5vZGVfc3Vic2NyaWJlci0+c2Fm ZV9wc3FsKCdwb3N0Z3JlcycsICJEUk9QIFNVQlNDUklQVElPTiB0YXBfc3ViIik7CisKKyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyMgRGlzYWJsZSB0aGUgc3Vic2NyaXB0aW9uIGFu ZCBhbHRlciBpdCB0byB0d29fcGhhc2UgPSBmYWxzZSwKKyMgdGhlbiB2ZXJpZnkgdGhhdCB0aGUg YWx0ZXJlZCBzdWJzY3JpcHRpb24gcmVmbGVjdHMgdGhlIHR3b19waGFzZSBvcHRpb24uCisjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisKKyMgQWx0ZXIgc3Vic2NyaXB0aW9uIHR3b19w aGFzZSB0byBmYWxzZQorJG5vZGVfc3Vic2NyaWJlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsCisg ICAgIkFMVEVSIFNVQlNDUklQVElPTiB0YXBfc3ViX2NvcHkgRElTQUJMRTsiKTsKKyRub2RlX3N1 YnNjcmliZXItPnBvbGxfcXVlcnlfdW50aWwoJ3Bvc3RncmVzJywKKyAgICAiU0VMRUNUIGNvdW50 KCopID0gMCBGUk9NIHBnX3N0YXRfYWN0aXZpdHkgV0hFUkUgYmFja2VuZF90eXBlID0gJ2xvZ2lj YWwgcmVwbGljYXRpb24gd29ya2VyJyIKKyk7Ciskbm9kZV9zdWJzY3JpYmVyLT5zYWZlX3BzcWwo CisJJ3Bvc3RncmVzJywgIgorICAgIEFMVEVSIFNVQlNDUklQVElPTiB0YXBfc3ViX2NvcHkgU0VU ICh0d29fcGhhc2UgPSBmYWxzZSk7CisgICAgQUxURVIgU1VCU0NSSVBUSU9OIHRhcF9zdWJfY29w eSBFTkFCTEU7Iik7CisKKyMgV2FpdCBmb3Igc3Vic2NyaXB0aW9uIHN0YXJ0dXAKKyRub2RlX3N1 YnNjcmliZXItPndhaXRfZm9yX3N1YnNjcmlwdGlvbl9zeW5jKCRub2RlX3B1Ymxpc2hlciwgJGFw cG5hbWVfY29weSk7CisKKyMgTWFrZSBzdXJlIHRoYXQgdGhlIHR3by1waGFzZSBpcyBkaXNhYmxl ZCBvbiB0aGUgc3Vic2NyaWJlcgorJHJlc3VsdCA9ICRub2RlX3N1YnNjcmliZXItPnNhZmVfcHNx bCgncG9zdGdyZXMnLAorCSJTRUxFQ1Qgc3VidHdvcGhhc2VzdGF0ZSBGUk9NIHBnX3N1YnNjcmlw dGlvbiBXSEVSRSBzdWJuYW1lID0gJ3RhcF9zdWJfY29weSc7IgorKTsKK2lzKCRyZXN1bHQsIHFx KGQpLCAndHdvLXBoYXNlIHNob3VsZCBiZSBkaXNhYmxlZCcpOworCisjIE5vdyBkbyBhIHByZXBh cmUgb24gdGhlIHB1Ymxpc2hlciBhbmQgbWFrZSBzdXJlIHRoYXQgaXQgaXMgbm90IHJlcGxpY2F0 ZWQuCiskbm9kZV9wdWJsaXNoZXItPnNhZmVfcHNxbCgKKwkncG9zdGdyZXMnLCBxcXsKKyAgICBC RUdJTjsKKyAgICBJTlNFUlQgSU5UTyB0YWJfY29weSBWQUxVRVMgKDEwMCk7CisgICAgUFJFUEFS RSBUUkFOU0FDVElPTiAnbmV3Z2lkJzsKKwl9KTsKKworIyBXYWl0IGZvciB0aGUgc3Vic2NyaWJl ciB0byBjYXRjaHVwCiskbm9kZV9wdWJsaXNoZXItPndhaXRfZm9yX2NhdGNodXAoJGFwcG5hbWVf Y29weSk7CisKKyMgTWFrZSBzdXJlIHRoZXJlIGFyZSBubyBwcmVwYXJlZCB0cmFuc2FjdGlvbnMg b24gdGhlIHN1YnNjcmliZXIKKyRyZXN1bHQgPSAkbm9kZV9zdWJzY3JpYmVyLT5zYWZlX3BzcWwo J3Bvc3RncmVzJywKKwkiU0VMRUNUIGNvdW50KCopIEZST00gcGdfcHJlcGFyZWRfeGFjdHM7Iik7 CitpcygkcmVzdWx0LCBxcSgwKSwgJ3Nob3VsZCBiZSBubyBwcmVwYXJlZCB0cmFuc2FjdGlvbnMg b24gc3Vic2NyaWJlcicpOworCisjIE5vdyBjb21taXQgdGhlIGluc2VydCBhbmQgdmVyaWZ5IHRo YXQgaXQgaXMgcmVwbGljYXRlZAorJG5vZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVz JywgIkNPTU1JVCBQUkVQQVJFRCAnbmV3Z2lkJzsiKTsKKworIyBXYWl0IGZvciB0aGUgc3Vic2Ny aWJlciB0byBjYXRjaHVwCiskbm9kZV9wdWJsaXNoZXItPndhaXRfZm9yX2NhdGNodXAoJGFwcG5h bWVfY29weSk7CisKKyMgTWFrZSBzdXJlIHRoYXQgdGhlIGNvbW1pdHRlZCB0cmFuc2FjdGlvbiBp cyByZXBsaWNhdGVkLgorJHJlc3VsdCA9CisgICRub2RlX3N1YnNjcmliZXItPnNhZmVfcHNxbCgn cG9zdGdyZXMnLCAiU0VMRUNUIGNvdW50KCopIEZST00gdGFiX2NvcHk7Iik7CitpcygkcmVzdWx0 LCBxcSgzKSwgJ3JlcGxpY2F0ZWQgZGF0YSBpbiBzdWJzY3JpYmVyIHRhYmxlJyk7CisKKyMgQWx0 ZXIgc3Vic2NyaXB0aW9uIHR3b19waGFzZSB0byB0cnVlCiskbm9kZV9zdWJzY3JpYmVyLT5zYWZl X3BzcWwoJ3Bvc3RncmVzJywKKyAgICAiQUxURVIgU1VCU0NSSVBUSU9OIHRhcF9zdWJfY29weSBE SVNBQkxFOyIpOworJG5vZGVfc3Vic2NyaWJlci0+cG9sbF9xdWVyeV91bnRpbCgncG9zdGdyZXMn LAorICAgICJTRUxFQ1QgY291bnQoKikgPSAwIEZST00gcGdfc3RhdF9hY3Rpdml0eSBXSEVSRSBi YWNrZW5kX3R5cGUgPSAnbG9naWNhbCByZXBsaWNhdGlvbiB3b3JrZXInIgorKTsKKyRub2RlX3N1 YnNjcmliZXItPnNhZmVfcHNxbCgKKwkncG9zdGdyZXMnLCAiCisgICAgQUxURVIgU1VCU0NSSVBU SU9OIHRhcF9zdWJfY29weSBTRVQgKHR3b19waGFzZSA9IHRydWUpOworICAgIEFMVEVSIFNVQlND UklQVElPTiB0YXBfc3ViX2NvcHkgRU5BQkxFOyIpOworCisjIFdhaXQgZm9yIHN1YnNjcmlwdGlv biBzdGFydHVwCiskbm9kZV9zdWJzY3JpYmVyLT53YWl0X2Zvcl9zdWJzY3JpcHRpb25fc3luYygk bm9kZV9wdWJsaXNoZXIsICRhcHBuYW1lX2NvcHkpOworCisjIE1ha2Ugc3VyZSB0aGF0IHRoZSB0 d28tcGhhc2UgaXMgZW5hYmxlZCBvbiB0aGUgc3Vic2NyaWJlcgorJHJlc3VsdCA9ICRub2RlX3N1 YnNjcmliZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLAorCSJTRUxFQ1Qgc3VidHdvcGhhc2VzdGF0 ZSBGUk9NIHBnX3N1YnNjcmlwdGlvbiBXSEVSRSBzdWJuYW1lID0gJ3RhcF9zdWJfY29weSc7Igor KTsKK2lzKCRyZXN1bHQsIHFxKGUpLCAndHdvLXBoYXNlIHNob3VsZCBiZSBlbmFibGVkJyk7CisK ICRub2RlX3N1YnNjcmliZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLCAiRFJPUCBTVUJTQ1JJUFRJ T04gdGFwX3N1Yl9jb3B5OyIpOwogJG5vZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVz JywgIkRST1AgUFVCTElDQVRJT04gdGFwX3B1Yl9jb3B5OyIpOwogCkBAIC0zNzQsOCArNDQ5LDYg QEAgJG5vZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywgIkRST1AgUFVCTElDQVRJ T04gdGFwX3B1Yl9jb3B5OyIpOwogIyBjaGVjayBhbGwgdGhlIGNsZWFudXAKICMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMKIAotJG5vZGVfc3Vic2NyaWJlci0+c2FmZV9wc3FsKCdwb3N0 Z3JlcycsICJEUk9QIFNVQlNDUklQVElPTiB0YXBfc3ViIik7Ci0KICRyZXN1bHQgPSAkbm9kZV9z dWJzY3JpYmVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKIAkiU0VMRUNUIGNvdW50KCopIEZST00g cGdfc3Vic2NyaXB0aW9uIik7CiBpcygkcmVzdWx0LCBxcSgwKSwgJ2NoZWNrIHN1YnNjcmlwdGlv biB3YXMgZHJvcHBlZCBvbiBzdWJzY3JpYmVyJyk7Ci0tIAoyLjQzLjAKCg== --_004_TYCPR01MB56938F06B84DD92A88234667F5A22TYCPR01MB5693jpnp_ Content-Type: application/octet-stream; name="v18-0002-Alter-slot-option-two_phase-only-when-altering-t.patch" Content-Description: v18-0002-Alter-slot-option-two_phase-only-when-altering-t.patch Content-Disposition: attachment; filename="v18-0002-Alter-slot-option-two_phase-only-when-altering-t.patch"; size=14274; creation-date="Tue, 16 Jul 2024 04:55:05 GMT"; modification-date="Tue, 16 Jul 2024 05:16:34 GMT" Content-Transfer-Encoding: base64 RnJvbSBlNjNjMTQ1NzJhMzRlZmE0NjM5ZTAzOGEzYzUwZTkzMGY3MTBkMDZjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBIYXlhdG8gS3Vyb2RhIDxrdXJvZGEuaGF5YXRvQGZ1aml0c3Uu Y29tPgpEYXRlOiBXZWQsIDE3IEFwciAyMDI0IDA2OjE4OjIzICswMDAwClN1YmplY3Q6IFtQQVRD SCB2MTggMi8zXSBBbHRlciBzbG90IG9wdGlvbiB0d29fcGhhc2Ugb25seSB3aGVuIGFsdGVyaW5n ICJ0cnVlIgogdG8gImZhbHNlIgoKU2luY2UgdGhlIHR3b19waGFzZSBvcHRpb24gaXMgY29udHJv bGxlZCBieSBib3RoIHRoZSBwdWJsaXNoZXIgKGFzIGEgc2xvdCBvcHRpb24pCmFuZCB0aGUgc3Vi c2NyaWJlciAoYXMgYSBzdWJzY3JpcHRpb24gb3B0aW9uKSwgdGhlIHNsb3Qgb3B0aW9uIG11c3Qg YWxzbyBiZQptb2RpZmllZC4KClJlZ2FyZGluZyB0aGUgZmFsc2UtPnRydWUgY2FzZSwgdGhlIGJh Y2tlbmQgcHJvY2VzcyBhbHRlcnMgdGhlIHN1YnR3b3BoYXNlIHRvCkxPR0lDQUxSRVBfVFdPUEhB U0VfU1RBVEVfUEVORElORyBvbmNlLiBBZnRlciB0aGUgc3Vic2NyaXB0aW9uIGlzIGVuYWJsZWQs IGEgbmV3CmxvZ2ljYWwgcmVwbGljYXRpb24gd29ya2VyIHJlcXVlc3RzIHRvIGNoYW5nZSB0aGUg dHdvX3BoYXNlIG9wdGlvbiBvZiBpdHMgc2xvdApmcm9tIHBlbmRpbmcgdG8gdHJ1ZSBhZnRlciB0 aGUgaW5pdGlhbCBkYXRhIHN5bmNocm9uaXphdGlvbiBpcyBkb25lLiBUaGUgY29kZQpwYXRoIGlz IHRoZSBzYW1lIGFzIHRoZSBjYXNlIGluIHdoaWNoIHR3b19waGFzZSBpcyBpbml0aWFsbHkgc2V0 IHRvIHRydWUsIHNvCnRoZXJlIGlzIG5vIG5lZWQgdG8gZG8gc29tZXRoaW5nIHJlbWFya2FibGUu IEhvd2V2ZXIsIGZvciB0aGUgdHJ1ZS0+ZmFsc2UgY2FzZSwKdGhlIGJhY2tlbmQgbXVzdCBjb25u ZWN0IHRvIHRoZSBwdWJsaXNoZXIgYW5kIGV4cHJlc3NseSBjaGFuZ2UgdGhlIHBhcmFtZXRlcgpi ZWNhdXNlIHRoZSBhcHBseSB3b3JrZXIgZG9lcyBub3QgYWx0ZXIgdGhlIG9wdGlvbiB0byBmYWxz ZS4gQmVjYXVzZSB0aGlzCm9wZXJhdGlvbiBjYW5ub3QgYmUgcm9sbGVkIGJhY2ssIGFsdGVyaW5n IHRoZSB0d29fcGhhc2UgcGFyYW1ldGVyIGZyb20gInRydWUiCnRvICJmYWxzZSIgd2l0aGluIGEg dHJhbnNhY3Rpb24gaXMgcHJvaGliaXRlZC4KLS0tCiBkb2Mvc3JjL3NnbWwvcmVmL2FsdGVyX3N1 YnNjcmlwdGlvbi5zZ21sICAgICAgfCAgMiArLQogc3JjL2JhY2tlbmQvY29tbWFuZHMvc3Vic2Ny aXB0aW9uY21kcy5jICAgICAgIHwgODAgKysrKysrKysrKysrKystLS0tLQogLi4uL2xpYnBxd2Fs cmVjZWl2ZXIvbGlicHF3YWxyZWNlaXZlci5jICAgICAgIHwgMjMgKysrKy0tCiBzcmMvaW5jbHVk ZS9yZXBsaWNhdGlvbi93YWxyZWNlaXZlci5oICAgICAgICAgfCAgNSArLQogc3JjL3Rlc3Qvc3Vi c2NyaXB0aW9uL3QvMDIxX3R3b3BoYXNlLnBsICAgICAgIHwgNDEgKysrKysrLS0tLQogNSBmaWxl cyBjaGFuZ2VkLCAxMDUgaW5zZXJ0aW9ucygrKSwgNDYgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvZG9jL3NyYy9zZ21sL3JlZi9hbHRlcl9zdWJzY3JpcHRpb24uc2dtbCBiL2RvYy9zcmMvc2dt bC9yZWYvYWx0ZXJfc3Vic2NyaXB0aW9uLnNnbWwKaW5kZXggMGIyM2RmMWI3Ny4uZGY0NDQxNTY2 MSAxMDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL3JlZi9hbHRlcl9zdWJzY3JpcHRpb24uc2dtbAor KysgYi9kb2Mvc3JjL3NnbWwvcmVmL2FsdGVyX3N1YnNjcmlwdGlvbi5zZ21sCkBAIC03MCw3ICs3 MCw3IEBAIEFMVEVSIFNVQlNDUklQVElPTiA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+ bmFtZTwvcmVwbGFjZWFibGU+IFJFTkFNRSBUTyA8CiAgICA8Y29tbWFuZD5BTFRFUiBTVUJTQ1JJ UFRJT04gLi4uIHtTRVR8QUREfERST1B9IFBVQkxJQ0FUSU9OIC4uLjwvY29tbWFuZD4KICAgIHdp dGggPGxpdGVyYWw+cmVmcmVzaDwvbGl0ZXJhbD4gb3B0aW9uIGFzIDxsaXRlcmFsPnRydWU8L2xp dGVyYWw+LAogICAgPGNvbW1hbmQ+QUxURVIgU1VCU0NSSVBUSU9OIC4uLiBTRVQgKGZhaWxvdmVy ID0gdHJ1ZXxmYWxzZSk8L2NvbW1hbmQ+IGFuZAotICAgPGNvbW1hbmQ+QUxURVIgU1VCU0NSSVBU SU9OIC4uLiBTRVQgKHR3b19waGFzZSA9IHRydWV8ZmFsc2UpPC9jb21tYW5kPgorICAgPGNvbW1h bmQ+QUxURVIgU1VCU0NSSVBUSU9OIC4uLiBTRVQgKHR3b19waGFzZSA9IGZhbHNlKTwvY29tbWFu ZD4KICAgIGNhbm5vdCBiZSBleGVjdXRlZCBpbnNpZGUgYSB0cmFuc2FjdGlvbiBibG9jay4KIAog ICAgVGhlc2UgY29tbWFuZHMgYWxzbyBjYW5ub3QgYmUgZXhlY3V0ZWQgd2hlbiB0aGUgc3Vic2Ny aXB0aW9uIGhhcwpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvY29tbWFuZHMvc3Vic2NyaXB0aW9u Y21kcy5jIGIvc3JjL2JhY2tlbmQvY29tbWFuZHMvc3Vic2NyaXB0aW9uY21kcy5jCmluZGV4IGQ3 ZTJiMTQxYjMuLmYwOWE2YmIyOTAgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3N1 YnNjcmlwdGlvbmNtZHMuYworKysgYi9zcmMvYmFja2VuZC9jb21tYW5kcy9zdWJzY3JpcHRpb25j bWRzLmMKQEAgLTExMSw3ICsxMTEsNyBAQCBzdGF0aWMgdm9pZCBjaGVja19kdXBsaWNhdGVzX2lu X3B1Ymxpc3QoTGlzdCAqcHVibGlzdCwgRGF0dW0gKmRhdHVtcyk7CiBzdGF0aWMgTGlzdCAqbWVy Z2VfcHVibGljYXRpb25zKExpc3QgKm9sZHB1Ymxpc3QsIExpc3QgKm5ld3B1Ymxpc3QsIGJvb2wg YWRkcHViLCBjb25zdCBjaGFyICpzdWJuYW1lKTsKIHN0YXRpYyB2b2lkIFJlcG9ydFNsb3RDb25u ZWN0aW9uRXJyb3IoTGlzdCAqcnN0YXRlcywgT2lkIHN1YmlkLCBjaGFyICpzbG90bmFtZSwgY2hh ciAqZXJyKTsKIHN0YXRpYyB2b2lkIENoZWNrQWx0ZXJTdWJPcHRpb24oU3Vic2NyaXB0aW9uICpz dWIsIGNvbnN0IGNoYXIgKm9wdGlvbiwKLQkJCQkJCQkJYm9vbCBpc1RvcExldmVsKTsKKwkJCQkJ CQkJYm9vbCBuZWVkc191cGRhdGUsIGJvb2wgaXNUb3BMZXZlbCk7CiAKIAogLyoKQEAgLTEwNzQs MTEgKzEwNzQsOSBAQCBBbHRlclN1YnNjcmlwdGlvbl9yZWZyZXNoKFN1YnNjcmlwdGlvbiAqc3Vi LCBib29sIGNvcHlfZGF0YSwKICAqIENvbW1vbiBjaGVja3MgZm9yIGFsdGVyaW5nIGZhaWxvdmVy IGFuZCB0d29fcGhhc2Ugb3B0aW9uCiAgKi8KIHN0YXRpYyB2b2lkCi1DaGVja0FsdGVyU3ViT3B0 aW9uKFN1YnNjcmlwdGlvbiAqc3ViLCBjb25zdCBjaGFyICpvcHRpb24sIGJvb2wgaXNUb3BMZXZl bCkKK0NoZWNrQWx0ZXJTdWJPcHRpb24oU3Vic2NyaXB0aW9uICpzdWIsIGNvbnN0IGNoYXIgKm9w dGlvbiwgYm9vbCBuZWVkc191cGRhdGUsIGJvb2wgaXNUb3BMZXZlbCkKIHsKLQlTdHJpbmdJbmZv RGF0YSBjbWQ7Ci0KLQlpZiAoIXN1Yi0+c2xvdG5hbWUpCisJaWYgKG5lZWRzX3VwZGF0ZSAmJiAh c3ViLT5zbG90bmFtZSkKIAkJZXJlcG9ydChFUlJPUiwKIAkJCQkoZXJyY29kZShFUlJDT0RFX09C SkVDVF9OT1RfSU5fUFJFUkVRVUlTSVRFX1NUQVRFKSwKIAkJCQkgZXJybXNnKCJjYW5ub3Qgc2V0 ICVzIGZvciBhIHN1YnNjcmlwdGlvbiB0aGF0IGRvZXMgbm90IGhhdmUgYSBzbG90IG5hbWUiLApA QCAtMTA5NiwxNiArMTA5NCwyMCBAQCBDaGVja0FsdGVyU3ViT3B0aW9uKFN1YnNjcmlwdGlvbiAq c3ViLCBjb25zdCBjaGFyICpvcHRpb24sIGJvb2wgaXNUb3BMZXZlbCkKIAkJCQkgZXJybXNnKCJj YW5ub3Qgc2V0ICVzIGZvciBlbmFibGVkIHN1YnNjcmlwdGlvbiIsCiAJCQkJCQlvcHRpb24pKSk7 CiAKLQlpbml0U3RyaW5nSW5mbygmY21kKTsKLQlhcHBlbmRTdHJpbmdJbmZvKCZjbWQsICJBTFRF UiBTVUJTQ1JJUFRJT04gLi4uIFNFVCAoJXMpIiwgb3B0aW9uKTsKLQogCS8qCiAJICogVGhlIGNo YW5nZWQgb3B0aW9uIG9mIHRoZSBzbG90IGNhbid0IGJlIHJvbGxlZCBiYWNrOiBwcmV2ZW50IHdl IGFyZSBpbgogCSAqIHRoZSB0cmFuc2FjdGlvbiBzdGF0ZS4KIAkgKi8KLQlQcmV2ZW50SW5UcmFu c2FjdGlvbkJsb2NrKGlzVG9wTGV2ZWwsIGNtZC5kYXRhKTsKKwlpZiAobmVlZHNfdXBkYXRlKQor CXsKKwkJU3RyaW5nSW5mb0RhdGEgY21kOwogCi0JcGZyZWUoY21kLmRhdGEpOworCQlpbml0U3Ry aW5nSW5mbygmY21kKTsKKwkJYXBwZW5kU3RyaW5nSW5mbygmY21kLCAiQUxURVIgU1VCU0NSSVBU SU9OIC4uLiBTRVQgKCVzKSIsIG9wdGlvbik7CisKKwkJUHJldmVudEluVHJhbnNhY3Rpb25CbG9j ayhpc1RvcExldmVsLCBjbWQuZGF0YSk7CisJCXBmcmVlKGNtZC5kYXRhKTsKKwl9CiB9CiAKIC8q CkBAIC0xMTI3LDYgKzExMjksOCBAQCBBbHRlclN1YnNjcmlwdGlvbihQYXJzZVN0YXRlICpwc3Rh dGUsIEFsdGVyU3Vic2NyaXB0aW9uU3RtdCAqc3RtdCwKIAlGb3JtX3BnX3N1YnNjcmlwdGlvbiBm b3JtOwogCWJpdHMzMgkJc3VwcG9ydGVkX29wdHM7CiAJU3ViT3B0cwkJb3B0cyA9IHswfTsKKwli b29sCQl1cGRhdGVfZmFpbG92ZXIgPSBmYWxzZTsKKwlib29sCQl1cGRhdGVfdHdvX3BoYXNlID0g ZmFsc2U7CiAKIAlyZWwgPSB0YWJsZV9vcGVuKFN1YnNjcmlwdGlvblJlbGF0aW9uSWQsIFJvd0V4 Y2x1c2l2ZUxvY2spOwogCkBAIC0xMjU5LDcgKzEyNjMsMTYgQEAgQWx0ZXJTdWJzY3JpcHRpb24o UGFyc2VTdGF0ZSAqcHN0YXRlLCBBbHRlclN1YnNjcmlwdGlvblN0bXQgKnN0bXQsCiAKIAkJCQlp ZiAoSXNTZXQob3B0cy5zcGVjaWZpZWRfb3B0cywgU1VCT1BUX0ZBSUxPVkVSKSkKIAkJCQl7Ci0J CQkJCUNoZWNrQWx0ZXJTdWJPcHRpb24oc3ViLCAiZmFpbG92ZXIiLCBpc1RvcExldmVsKTsKKwkJ CQkJLyoKKwkJCQkJICogRmlyc3QgbWFyayB0aGUgbmVlZHMgdG8gYWx0ZXIgdGhlIHJlcGxpY2F0 aW9uIHNsb3QuCisJCQkJCSAqIEZhaWxvdmVyIG9wdGlvbiBpcyBjb250cm9sbGVkIGJ5IGJvdGgg dGhlIHB1Ymxpc2hlciAoYXMKKwkJCQkJICogYSBzbG90IG9wdGlvbikgYW5kIHRoZSBzdWJzY3Jp YmVyIChhcyBhIHN1YnNjcmlwdGlvbgorCQkJCQkgKiBvcHRpb24pLgorCQkJCQkgKi8KKwkJCQkJ dXBkYXRlX2ZhaWxvdmVyID0gdHJ1ZTsKKworCQkJCQlDaGVja0FsdGVyU3ViT3B0aW9uKHN1Yiwg ImZhaWxvdmVyIiwgdXBkYXRlX2ZhaWxvdmVyLAorCQkJCQkJCQkJCWlzVG9wTGV2ZWwpOwogCiAJ CQkJCXZhbHVlc1tBbnVtX3BnX3N1YnNjcmlwdGlvbl9zdWJmYWlsb3ZlciAtIDFdID0KIAkJCQkJ CUJvb2xHZXREYXR1bShvcHRzLmZhaWxvdmVyKTsKQEAgLTEyNjgsMTUgKzEyODEsMzcgQEAgQWx0 ZXJTdWJzY3JpcHRpb24oUGFyc2VTdGF0ZSAqcHN0YXRlLCBBbHRlclN1YnNjcmlwdGlvblN0bXQg KnN0bXQsCiAKIAkJCQlpZiAoSXNTZXQob3B0cy5zcGVjaWZpZWRfb3B0cywgU1VCT1BUX1RXT1BI QVNFX0NPTU1JVCkpCiAJCQkJewotCQkJCQlDaGVja0FsdGVyU3ViT3B0aW9uKHN1YiwgInR3b19w aGFzZSIsIGlzVG9wTGV2ZWwpOworCQkJCQkvKgorCQkJCQkgKiBGaXJzdCBjaGVjayB0aGUgbmVl ZCB0byBhbHRlciB0aGUgcmVwbGljYXRpb24gc2xvdC4KKwkJCQkJICogVHdvX3BoYXNlIG9wdGlv biBpcyBjb250cm9sbGVkIGJ5IGJvdGggdGhlIHB1Ymxpc2hlcgorCQkJCQkgKiAoYXMgYSBzbG90 IG9wdGlvbikgYW5kIHRoZSBzdWJzY3JpYmVyIChhcyBhCisJCQkJCSAqIHN1YnNjcmlwdGlvbiBv cHRpb24pLiBUaGUgc2xvdCBvcHRpb24gbXVzdCBiZSBhbHRlcmVkCisJCQkJCSAqIG9ubHkgd2hl biBjaGFuZ2luZyAidHJ1ZSIgdG8gImZhbHNlIi4KKwkJCQkJICoKKwkJCQkJICogVGhlcmUgaXMg bm8gbmVlZCB0byBkbyBzb21ldGhpbmcgcmVtYXJrYWJsZSByZWdhcmRpbmcKKwkJCQkJICogdGhl ICJmYWxzZSIgdG8gInRydWUiIGNhc2U7IHRoZSBiYWNrZW5kIHByb2Nlc3MgYWx0ZXJzCisJCQkJ CSAqIHN1YnR3b3BoYXNlIHRvIExPR0lDQUxSRVBfVFdPUEhBU0VfU1RBVEVfUEVORElORyBvbmNl LgorCQkJCQkgKiBBZnRlciB0aGUgc3Vic2NyaXB0aW9uIGlzIGVuYWJsZWQsIGEgbmV3IGxvZ2lj YWwKKwkJCQkJICogcmVwbGljYXRpb24gd29ya2VyIHJlcXVlc3RzIHRvIGNoYW5nZSB0aGUgdHdv X3BoYXNlCisJCQkJCSAqIG9wdGlvbiBvZiBpdHMgc2xvdCBmcm9tIHBlbmRpbmcgdG8gdHJ1ZSB3 aGVuIHRoZQorCQkJCQkgKiBpbml0aWFsIGRhdGEgc3luY2hyb25pemF0aW9uIGlzIGRvbmUuIFRo ZSBjb2RlIHBhdGggaXMKKwkJCQkJICogdGhlIHNhbWUgYXMgdGhlIGNhc2UgaW4gd2hpY2ggdHdv X3BoYXNlIGlzIGluaXRpYWxseQorCQkJCQkgKiBzZXQgdG8gdHJ1ZS4KKwkJCQkJICovCisJCQkJ CXVwZGF0ZV90d29fcGhhc2UgPSAhb3B0cy50d29waGFzZTsKKworCQkJCQlDaGVja0FsdGVyU3Vi T3B0aW9uKHN1YiwgInR3b19waGFzZSIsIHVwZGF0ZV90d29fcGhhc2UsCisJCQkJCQkJCQkJaXNU b3BMZXZlbCk7CiAKIAkJCQkJLyoKLQkJCQkJICogc2xvdF9uYW1lIGFuZCB0d29fcGhhc2UgY2Fu bm90IGJlIGFsdGVyZWQKLQkJCQkJICogc2ltdWx0YW5lb3VzbHkuIFRoZSBsYXR0ZXIgcGFydCBy ZWZlcnMgdG8gdGhlIHByZS1zZXQKLQkJCQkJICogc2xvdCBuYW1lIGFuZCB0cmllcyB0byBtb2Rp ZnkgdGhlIHNsb3Qgb3B0aW9uLCBzbwotCQkJCQkgKiBjaGFuZ2luZyBib3RoIGRvZXMgbm90IG1h a2Ugc2Vuc2UuCisJCQkJCSAqIElmIHRoZSB3b19waGFzZSBzbG90IG9wdGlvbiBtdXN0IGJlIGFs dGVyZWQsIHRoaXMKKwkJCQkJICogY2Fubm90IGJlIGFsdGVyZWQgd2l0aCBzbG90X25hbWUgc2lt dWx0YW5lb3VzbHkuIFRoZQorCQkJCQkgKiBsYXR0ZXIgcGFydCByZWZlcnMgdG8gdGhlIHByZS1z ZXQgc2xvdCBuYW1lIGFuZCB0cmllcworCQkJCQkgKiB0byBtb2RpZnkgdGhlIHNsb3Qgb3B0aW9u LCBzbyBjaGFuZ2luZyBib3RoIGRvZXMgbm90CisJCQkJCSAqIG1ha2Ugc2Vuc2UuCiAJCQkJCSAq LwotCQkJCQlpZiAoSXNTZXQob3B0cy5zcGVjaWZpZWRfb3B0cywgU1VCT1BUX1NMT1RfTkFNRSkp CisJCQkJCWlmICh1cGRhdGVfdHdvX3BoYXNlICYmCisJCQkJCQlJc1NldChvcHRzLnNwZWNpZmll ZF9vcHRzLCBTVUJPUFRfU0xPVF9OQU1FKSkKIAkJCQkJCWVyZXBvcnQoRVJST1IsCiAJCQkJCQkJ CShlcnJjb2RlKEVSUkNPREVfU1lOVEFYX0VSUk9SKSwKIAkJCQkJCQkJIGVycm1zZygic2xvdF9u YW1lIGFuZCB0d29fcGhhc2UgY2Fubm90IGJlIGFsdGVyZWQgYXQgdGhlIHNhbWUgdGltZSIpKSk7 CkBAIC0xMjk4LDcgKzEzMzMsNyBAQCBBbHRlclN1YnNjcmlwdGlvbihQYXJzZVN0YXRlICpwc3Rh dGUsIEFsdGVyU3Vic2NyaXB0aW9uU3RtdCAqc3RtdCwKIAkJCQkJICogdHdvX3BoYXNlIGNhbm5v dCBiZSBkaXNhYmxlZCBpZiB0aGVyZSBhcmUgYW55CiAJCQkJCSAqIHVuY29tbWl0dGVkIHByZXBh cmVkIHRyYW5zYWN0aW9ucyBwcmVzZW50LgogCQkJCQkgKi8KLQkJCQkJaWYgKCFvcHRzLnR3b3Bo YXNlICYmCisJCQkJCWlmICh1cGRhdGVfdHdvX3BoYXNlICYmCiAJCQkJCQlzdWItPnR3b3BoYXNl c3RhdGUgPT0gTE9HSUNBTFJFUF9UV09QSEFTRV9TVEFURV9FTkFCTEVEICYmCiAJCQkJCQlMb29r dXBHWGFjdEJ5U3ViaWQoc3ViaWQpKQogCQkJCQkJZXJlcG9ydChFUlJPUiwKQEAgLTE1NTcsMTQg KzE1OTIsMTMgQEAgQWx0ZXJTdWJzY3JpcHRpb24oUGFyc2VTdGF0ZSAqcHN0YXRlLCBBbHRlclN1 YnNjcmlwdGlvblN0bXQgKnN0bXQsCiAJfQogCiAJLyoKLQkgKiBUcnkgdG8gYWNxdWlyZSB0aGUg Y29ubmVjdGlvbiBuZWNlc3NhcnkgZm9yIGFsdGVyaW5nIHNsb3QuCisJICogVHJ5IHRvIGFjcXVp cmUgdGhlIGNvbm5lY3Rpb24gbmVjZXNzYXJ5IGZvciBhbHRlcmluZyBzbG90LCBpZiBuZWVkZWQu CiAJICoKIAkgKiBUaGlzIGhhcyB0byBiZSBhdCB0aGUgZW5kIGJlY2F1c2Ugb3RoZXJ3aXNlIGlm IHRoZXJlIGlzIGFuIGVycm9yIHdoaWxlCiAJICogZG9pbmcgdGhlIGRhdGFiYXNlIG9wZXJhdGlv bnMgd2Ugd29uJ3QgYmUgYWJsZSB0byByb2xsYmFjayBhbHRlcmVkCiAJICogc2xvdC4KIAkgKi8K LQlpZiAocmVwbGFjZXNbQW51bV9wZ19zdWJzY3JpcHRpb25fc3ViZmFpbG92ZXIgLSAxXSB8fAot CQlyZXBsYWNlc1tBbnVtX3BnX3N1YnNjcmlwdGlvbl9zdWJ0d29waGFzZXN0YXRlIC0gMV0pCisJ aWYgKHVwZGF0ZV9mYWlsb3ZlciB8fCB1cGRhdGVfdHdvX3BoYXNlKQogCXsKIAkJYm9vbAkJbXVz dF91c2VfcGFzc3dvcmQ7CiAJCWNoYXIJICAgKmVycjsKQEAgLTE1ODUsNyArMTYxOSw5IEBAIEFs dGVyU3Vic2NyaXB0aW9uKFBhcnNlU3RhdGUgKnBzdGF0ZSwgQWx0ZXJTdWJzY3JpcHRpb25TdG10 ICpzdG10LAogCiAJCVBHX1RSWSgpOwogCQl7Ci0JCQl3YWxyY3ZfYWx0ZXJfc2xvdCh3cmNvbm4s IHN1Yi0+c2xvdG5hbWUsIG9wdHMuZmFpbG92ZXIsIG9wdHMudHdvcGhhc2UpOworCQkJd2FscmN2 X2FsdGVyX3Nsb3Qod3Jjb25uLCBzdWItPnNsb3RuYW1lLAorCQkJCQkJCSAgdXBkYXRlX2ZhaWxv dmVyID8gJm9wdHMuZmFpbG92ZXIgOiBOVUxMLAorCQkJCQkJCSAgdXBkYXRlX3R3b19waGFzZSA/ ICZvcHRzLnR3b3BoYXNlIDogTlVMTCk7CiAJCX0KIAkJUEdfRklOQUxMWSgpOwogCQl7CmRpZmYg LS1naXQgYS9zcmMvYmFja2VuZC9yZXBsaWNhdGlvbi9saWJwcXdhbHJlY2VpdmVyL2xpYnBxd2Fs cmVjZWl2ZXIuYyBiL3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL2xpYnBxd2FscmVjZWl2ZXIvbGli cHF3YWxyZWNlaXZlci5jCmluZGV4IDFjYjYwMWExNDguLjk3Zjk1N2NkODcgMTAwNjQ0Ci0tLSBh L3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL2xpYnBxd2FscmVjZWl2ZXIvbGlicHF3YWxyZWNlaXZl ci5jCisrKyBiL3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL2xpYnBxd2FscmVjZWl2ZXIvbGlicHF3 YWxyZWNlaXZlci5jCkBAIC04MCw3ICs4MCw3IEBAIHN0YXRpYyBjaGFyICpsaWJwcXJjdl9jcmVh dGVfc2xvdChXYWxSZWNlaXZlckNvbm4gKmNvbm4sCiAJCQkJCQkJCSAgQ1JTU25hcHNob3RBY3Rp b24gc25hcHNob3RfYWN0aW9uLAogCQkJCQkJCQkgIFhMb2dSZWNQdHIgKmxzbik7CiBzdGF0aWMg dm9pZCBsaWJwcXJjdl9hbHRlcl9zbG90KFdhbFJlY2VpdmVyQ29ubiAqY29ubiwgY29uc3QgY2hh ciAqc2xvdG5hbWUsCi0JCQkJCQkJCWJvb2wgZmFpbG92ZXIsIGJvb2wgdHdvX3BoYXNlKTsKKwkJ CQkJCQkJY29uc3QgYm9vbCAqZmFpbG92ZXIsIGNvbnN0IGJvb2wgKnR3b19waGFzZSk7CiBzdGF0 aWMgcGlkX3QgbGlicHFyY3ZfZ2V0X2JhY2tlbmRfcGlkKFdhbFJlY2VpdmVyQ29ubiAqY29ubik7 CiBzdGF0aWMgV2FsUmN2RXhlY1Jlc3VsdCAqbGlicHFyY3ZfZXhlYyhXYWxSZWNlaXZlckNvbm4g KmNvbm4sCiAJCQkJCQkJCQkgICBjb25zdCBjaGFyICpxdWVyeSwKQEAgLTExMjEsMTYgKzExMjEs MjcgQEAgbGlicHFyY3ZfY3JlYXRlX3Nsb3QoV2FsUmVjZWl2ZXJDb25uICpjb25uLCBjb25zdCBj aGFyICpzbG90bmFtZSwKICAqLwogc3RhdGljIHZvaWQKIGxpYnBxcmN2X2FsdGVyX3Nsb3QoV2Fs UmVjZWl2ZXJDb25uICpjb25uLCBjb25zdCBjaGFyICpzbG90bmFtZSwKLQkJCQkJYm9vbCBmYWls b3ZlciwgYm9vbCB0d29fcGhhc2UpCisJCQkJCWNvbnN0IGJvb2wgKmZhaWxvdmVyLCBjb25zdCBi b29sICp0d29fcGhhc2UpCiB7CiAJU3RyaW5nSW5mb0RhdGEgY21kOwogCVBHcmVzdWx0ICAgKnJl czsKIAogCWluaXRTdHJpbmdJbmZvKCZjbWQpOwotCWFwcGVuZFN0cmluZ0luZm8oJmNtZCwgIkFM VEVSX1JFUExJQ0FUSU9OX1NMT1QgJXMgKCBGQUlMT1ZFUiAlcywgVFdPX1BIQVNFICVzICkiLAot CQkJCQkgcXVvdGVfaWRlbnRpZmllcihzbG90bmFtZSksCi0JCQkJCSBmYWlsb3ZlciA/ICJ0cnVl IiA6ICJmYWxzZSIsCi0JCQkJCSB0d29fcGhhc2UgPyAidHJ1ZSIgOiAiZmFsc2UiKTsKKwlhcHBl bmRTdHJpbmdJbmZvKCZjbWQsICJBTFRFUl9SRVBMSUNBVElPTl9TTE9UICVzICggIiwKKwkJCQkJ IHF1b3RlX2lkZW50aWZpZXIoc2xvdG5hbWUpKTsKKworCWlmIChmYWlsb3ZlcikKKwkJYXBwZW5k U3RyaW5nSW5mbygmY21kLCAiRkFJTE9WRVIgJXMiLAorCQkJCQkJICpmYWlsb3ZlciA/ICJ0cnVl IiA6ICJmYWxzZSIpOworCisJaWYgKGZhaWxvdmVyICYmIHR3b19waGFzZSkKKwkJYXBwZW5kU3Ry aW5nSW5mbygmY21kLCAiLCAiKTsKKworCWlmICh0d29fcGhhc2UpCisJCWFwcGVuZFN0cmluZ0lu Zm8oJmNtZCwgIlRXT19QSEFTRSAlcyIsCisJCQkJCQkgKnR3b19waGFzZSA/ICJ0cnVlIiA6ICJm YWxzZSIpOworCisJYXBwZW5kU3RyaW5nSW5mb1N0cmluZygmY21kLCAiICk7Iik7CiAKIAlyZXMg PSBsaWJwcXJjdl9QUWV4ZWMoY29ubi0+c3RyZWFtQ29ubiwgY21kLmRhdGEpOwogCXBmcmVlKGNt ZC5kYXRhKTsKZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL3JlcGxpY2F0aW9uL3dhbHJlY2VpdmVy LmggYi9zcmMvaW5jbHVkZS9yZXBsaWNhdGlvbi93YWxyZWNlaXZlci5oCmluZGV4IDMxZmExMjU3 ZWMuLjdmZmE1YTU4YjMgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL3JlcGxpY2F0aW9uL3dhbHJl Y2VpdmVyLmgKKysrIGIvc3JjL2luY2x1ZGUvcmVwbGljYXRpb24vd2FscmVjZWl2ZXIuaApAQCAt Mzc3LDggKzM3Nyw5IEBAIHR5cGVkZWYgY2hhciAqKCp3YWxyY3ZfY3JlYXRlX3Nsb3RfZm4pIChX YWxSZWNlaXZlckNvbm4gKmNvbm4sCiAgKi8KIHR5cGVkZWYgdm9pZCAoKndhbHJjdl9hbHRlcl9z bG90X2ZuKSAoV2FsUmVjZWl2ZXJDb25uICpjb25uLAogCQkJCQkJCQkJICBjb25zdCBjaGFyICpz bG90bmFtZSwKLQkJCQkJCQkJCSAgYm9vbCBmYWlsb3ZlciwKLQkJCQkJCQkJCSAgYm9vbCB0d29f cGhhc2UpOworCQkJCQkJCQkJICBjb25zdCBib29sICpmYWlsb3ZlciwKKwkJCQkJCQkJCSAgY29u c3QgYm9vbCAqdHdvX3BoYXNlKTsKKwogCiAvKgogICogd2FscmN2X2dldF9iYWNrZW5kX3BpZF9m bgpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3Qvc3Vic2NyaXB0aW9uL3QvMDIxX3R3b3BoYXNlLnBsIGIv c3JjL3Rlc3Qvc3Vic2NyaXB0aW9uL3QvMDIxX3R3b3BoYXNlLnBsCmluZGV4IDRlOGY2MjdmN2Iu LmY1NmRmZjRiMTIgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3N1YnNjcmlwdGlvbi90LzAyMV90d29w aGFzZS5wbAorKysgYi9zcmMvdGVzdC9zdWJzY3JpcHRpb24vdC8wMjFfdHdvcGhhc2UucGwKQEAg LTM3NSw2ICszNzUsMTIgQEAgJG5vZGVfc3Vic2NyaWJlci0+c2FmZV9wc3FsKCdwb3N0Z3Jlcycs ICJEUk9QIFNVQlNDUklQVElPTiB0YXBfc3ViIik7CiAjIHRoZW4gdmVyaWZ5IHRoYXQgdGhlIGFs dGVyZWQgc3Vic2NyaXB0aW9uIHJlZmxlY3RzIHRoZSB0d29fcGhhc2Ugb3B0aW9uLgogIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwogCisjIENvbmZpcm0gdHdvLXBoYXNlIHNsb3Qgb3B0 aW9uIGlzIGVuYWJsZWQgYmVmb3JlIGFsdGVyaW5nCiskcmVzdWx0ID0gJG5vZGVfcHVibGlzaGVy LT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKKwkiU0VMRUNUIHR3b19waGFzZSBGUk9NIHBnX3JlcGxp Y2F0aW9uX3Nsb3RzIFdIRVJFIHNsb3RfbmFtZSA9ICd0YXBfc3ViX2NvcHknOyIKKyk7Citpcygk cmVzdWx0LCBxcSh0KSwgJ3R3by1waGFzZSBpcyBlbmFibGVkJyk7CisKICMgQWx0ZXIgc3Vic2Ny aXB0aW9uIHR3b19waGFzZSB0byBmYWxzZQogJG5vZGVfc3Vic2NyaWJlci0+c2FmZV9wc3FsKCdw b3N0Z3JlcycsCiAgICAgIkFMVEVSIFNVQlNDUklQVElPTiB0YXBfc3ViX2NvcHkgRElTQUJMRTsi KTsKQEAgLTM5Myw3ICszOTksMTMgQEAgJG5vZGVfc3Vic2NyaWJlci0+d2FpdF9mb3Jfc3Vic2Ny aXB0aW9uX3N5bmMoJG5vZGVfcHVibGlzaGVyLCAkYXBwbmFtZV9jb3B5KTsKICRyZXN1bHQgPSAk bm9kZV9zdWJzY3JpYmVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKIAkiU0VMRUNUIHN1YnR3b3Bo YXNlc3RhdGUgRlJPTSBwZ19zdWJzY3JpcHRpb24gV0hFUkUgc3VibmFtZSA9ICd0YXBfc3ViX2Nv cHknOyIKICk7Ci1pcygkcmVzdWx0LCBxcShkKSwgJ3R3by1waGFzZSBzaG91bGQgYmUgZGlzYWJs ZWQnKTsKK2lzKCRyZXN1bHQsIHFxKGQpLCAndHdvLXBoYXNlIHN1YnNjcmlwdGlvbiBvcHRpb24g c2hvdWxkIGJlIGRpc2FibGVkJyk7CisKKyMgTWFrZSBzdXJlIHRoYXQgdGhlIHR3by1waGFzZSBz bG90IG9wdGlvbiBpcyBhbHNvIGRpc2FibGVkCiskcmVzdWx0ID0gJG5vZGVfcHVibGlzaGVyLT5z YWZlX3BzcWwoJ3Bvc3RncmVzJywKKwkiU0VMRUNUIHR3b19waGFzZSBGUk9NIHBnX3JlcGxpY2F0 aW9uX3Nsb3RzIFdIRVJFIHNsb3RfbmFtZSA9ICd0YXBfc3ViX2NvcHknOyIKKyk7CitpcygkcmVz dWx0LCBxcShmKSwgJ3R3by1waGFzZSBzbG90IG9wdGlvbiBzaG91bGQgYmUgZGlzYWJsZWQnKTsK IAogIyBOb3cgZG8gYSBwcmVwYXJlIG9uIHRoZSBwdWJsaXNoZXIgYW5kIG1ha2Ugc3VyZSB0aGF0 IGl0IGlzIG5vdCByZXBsaWNhdGVkLgogJG5vZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwoCkBAIC00 MTEsNiArNDIzLDE5IEBAICRyZXN1bHQgPSAkbm9kZV9zdWJzY3JpYmVyLT5zYWZlX3BzcWwoJ3Bv c3RncmVzJywKIAkiU0VMRUNUIGNvdW50KCopIEZST00gcGdfcHJlcGFyZWRfeGFjdHM7Iik7CiBp cygkcmVzdWx0LCBxcSgwKSwgJ3Nob3VsZCBiZSBubyBwcmVwYXJlZCB0cmFuc2FjdGlvbnMgb24g c3Vic2NyaWJlcicpOwogCisjIFRvZ2dsZSB0aGUgdHdvX3BoYXNlIHRvICJ0cnVlIiAqYmVmb3Jl KiB0aGUgQ09NTUlUIFBSRVBBUkVELiBTaW5jZSB3ZSBhcmUgdGhlCisjIHNwZWNpYWwgcGF0aCBm b3IgdGhlIGNhc2Ugd2hlcmUgYm90aCB0d29fcGhhc2UgYW5kIGZhaWxvdmVyIGFyZSBhbHRlcmVk LCBpdAorIyBpcyBhbHNvIHNldCB0byAidHJ1ZSIuCiskbm9kZV9zdWJzY3JpYmVyLT5zYWZlX3Bz cWwoJ3Bvc3RncmVzJywKKyAgICAiQUxURVIgU1VCU0NSSVBUSU9OIHRhcF9zdWJfY29weSBESVNB QkxFOyIpOworJG5vZGVfc3Vic2NyaWJlci0+cG9sbF9xdWVyeV91bnRpbCgncG9zdGdyZXMnLAor ICAgICJTRUxFQ1QgY291bnQoKikgPSAwIEZST00gcGdfc3RhdF9hY3Rpdml0eSBXSEVSRSBiYWNr ZW5kX3R5cGUgPSAnbG9naWNhbCByZXBsaWNhdGlvbiB3b3JrZXInIgorKTsKKyRub2RlX3N1YnNj cmliZXItPnNhZmVfcHNxbCgKKwkncG9zdGdyZXMnLCAiCisgICAgQUxURVIgU1VCU0NSSVBUSU9O IHRhcF9zdWJfY29weSBTRVQgKHR3b19waGFzZSA9IHRydWUsIGZhaWxvdmVyID0gdHJ1ZSk7Cisg ICAgQUxURVIgU1VCU0NSSVBUSU9OIHRhcF9zdWJfY29weSBFTkFCTEU7Iik7CisKICMgTm93IGNv bW1pdCB0aGUgaW5zZXJ0IGFuZCB2ZXJpZnkgdGhhdCBpdCBpcyByZXBsaWNhdGVkCiAkbm9kZV9w dWJsaXNoZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLCAiQ09NTUlUIFBSRVBBUkVEICduZXdnaWQn OyIpOwogCkBAIC00MjIsMjAgKzQ0Nyw2IEBAICRyZXN1bHQgPQogICAkbm9kZV9zdWJzY3JpYmVy LT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywgIlNFTEVDVCBjb3VudCgqKSBGUk9NIHRhYl9jb3B5OyIp OwogaXMoJHJlc3VsdCwgcXEoMyksICdyZXBsaWNhdGVkIGRhdGEgaW4gc3Vic2NyaWJlciB0YWJs ZScpOwogCi0jIEFsdGVyIHN1YnNjcmlwdGlvbiB0d29fcGhhc2UgdG8gdHJ1ZQotJG5vZGVfc3Vi c2NyaWJlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsCi0gICAgIkFMVEVSIFNVQlNDUklQVElPTiB0 YXBfc3ViX2NvcHkgRElTQUJMRTsiKTsKLSRub2RlX3N1YnNjcmliZXItPnBvbGxfcXVlcnlfdW50 aWwoJ3Bvc3RncmVzJywKLSAgICAiU0VMRUNUIGNvdW50KCopID0gMCBGUk9NIHBnX3N0YXRfYWN0 aXZpdHkgV0hFUkUgYmFja2VuZF90eXBlID0gJ2xvZ2ljYWwgcmVwbGljYXRpb24gd29ya2VyJyIK LSk7Ci0kbm9kZV9zdWJzY3JpYmVyLT5zYWZlX3BzcWwoCi0JJ3Bvc3RncmVzJywgIgotICAgIEFM VEVSIFNVQlNDUklQVElPTiB0YXBfc3ViX2NvcHkgU0VUICh0d29fcGhhc2UgPSB0cnVlKTsKLSAg ICBBTFRFUiBTVUJTQ1JJUFRJT04gdGFwX3N1Yl9jb3B5IEVOQUJMRTsiKTsKLQotIyBXYWl0IGZv ciBzdWJzY3JpcHRpb24gc3RhcnR1cAotJG5vZGVfc3Vic2NyaWJlci0+d2FpdF9mb3Jfc3Vic2Ny aXB0aW9uX3N5bmMoJG5vZGVfcHVibGlzaGVyLCAkYXBwbmFtZV9jb3B5KTsKLQogIyBNYWtlIHN1 cmUgdGhhdCB0aGUgdHdvLXBoYXNlIGlzIGVuYWJsZWQgb24gdGhlIHN1YnNjcmliZXIKICRyZXN1 bHQgPSAkbm9kZV9zdWJzY3JpYmVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKIAkiU0VMRUNUIHN1 YnR3b3BoYXNlc3RhdGUgRlJPTSBwZ19zdWJzY3JpcHRpb24gV0hFUkUgc3VibmFtZSA9ICd0YXBf c3ViX2NvcHknOyIKLS0gCjIuNDMuMAoK --_004_TYCPR01MB56938F06B84DD92A88234667F5A22TYCPR01MB5693jpnp_ Content-Type: application/octet-stream; name="v18-0003-Notify-users-to-roll-back-prepared-transactions.patch" Content-Description: v18-0003-Notify-users-to-roll-back-prepared-transactions.patch Content-Disposition: attachment; filename="v18-0003-Notify-users-to-roll-back-prepared-transactions.patch"; size=2208; creation-date="Tue, 16 Jul 2024 04:55:05 GMT"; modification-date="Tue, 16 Jul 2024 05:16:34 GMT" Content-Transfer-Encoding: base64 RnJvbSAxN2ViYTJiMTNlYjIyMGY0ODg1ZTRkY2RhZGVmYzRlZGQ2NDA5ODQ0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBIYXlhdG8gS3Vyb2RhIDxrdXJvZGEuaGF5YXRvQGZ1aml0c3Uu Y29tPgpEYXRlOiBUdWUsIDkgSnVsIDIwMjQgMDg6MDE6NDMgKzAwMDAKU3ViamVjdDogW1BBVENI IHYxOCAzLzNdIE5vdGlmeSB1c2VycyB0byByb2xsIGJhY2sgcHJlcGFyZWQgdHJhbnNhY3Rpb25z CgotLS0KIGRvYy9zcmMvc2dtbC9yZWYvYWx0ZXJfc3Vic2NyaXB0aW9uLnNnbWwgfCAxNSArKysr KysrKysrKysrLS0KIDEgZmlsZSBjaGFuZ2VkLCAxMyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9yZWYvYWx0ZXJfc3Vic2NyaXB0aW9uLnNn bWwgYi9kb2Mvc3JjL3NnbWwvcmVmL2FsdGVyX3N1YnNjcmlwdGlvbi5zZ21sCmluZGV4IGRmNDQ0 MTU2NjEuLmUwMjFmODcyOWIgMTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9yZWYvYWx0ZXJfc3Vi c2NyaXB0aW9uLnNnbWwKKysrIGIvZG9jL3NyYy9zZ21sL3JlZi9hbHRlcl9zdWJzY3JpcHRpb24u c2dtbApAQCAtMjMzLDggKzIzMyw2IEBAIEFMVEVSIFNVQlNDUklQVElPTiA8cmVwbGFjZWFibGUg Y2xhc3M9InBhcmFtZXRlciI+bmFtZTwvcmVwbGFjZWFibGU+IFJFTkFNRSBUTyA8CiAgICAgICA8 bGluayBsaW5rZW5kPSJzcWwtY3JlYXRlc3Vic2NyaXB0aW9uLXBhcmFtcy13aXRoLWZhaWxvdmVy Ij48bGl0ZXJhbD5mYWlsb3ZlcjwvbGl0ZXJhbD48L2xpbms+LCBhbmQKICAgICAgIDxsaW5rIGxp bmtlbmQ9InNxbC1jcmVhdGVzdWJzY3JpcHRpb24tcGFyYW1zLXdpdGgtdHdvLXBoYXNlIj48bGl0 ZXJhbD50d29fcGhhc2U8L2xpdGVyYWw+PC9saW5rPi4KICAgICAgIE9ubHkgYSBzdXBlcnVzZXIg Y2FuIHNldCA8bGl0ZXJhbD5wYXNzd29yZF9yZXF1aXJlZCA9IGZhbHNlPC9saXRlcmFsPi4KLSAg ICAgIFRoZSA8bGl0ZXJhbD50d29fcGhhc2U8L2xpdGVyYWw+IHBhcmFtZXRlciBjYW4gb25seSBi ZSBhbHRlcmVkIHdoZW4gdGhlCi0gICAgICBzdWJzY3JpcHRpb24gaXMgZGlzYWJsZWQuCiAgICAg IDwvcGFyYT4KIAogICAgICA8cGFyYT4KQEAgLTI1Niw2ICsyNTQsMTkgQEAgQUxURVIgU1VCU0NS SVBUSU9OIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5uYW1lPC9yZXBsYWNlYWJsZT4g UkVOQU1FIFRPIDwKICAgICAgIDxsaW5rIGxpbmtlbmQ9InNxbC1jcmVhdGVzdWJzY3JpcHRpb24t cGFyYW1zLXdpdGgtZmFpbG92ZXIiPjxsaXRlcmFsPmZhaWxvdmVyPC9saXRlcmFsPjwvbGluaz4K ICAgICAgIG9wdGlvbiBpcyBlbmFibGVkLgogICAgICA8L3BhcmE+CisKKyAgICAgPHBhcmE+Cisg ICAgICBUaGUgPGxpdGVyYWw+dHdvX3BoYXNlPC9saXRlcmFsPiBwYXJhbWV0ZXIgY2FuIG9ubHkg YmUgYWx0ZXJlZCB3aGVuIHRoZQorICAgICAgc3Vic2NyaXB0aW9uIGlzIGRpc2FibGVkLiBXaGVu IGFsdGVyaW5nIHRoZSBwYXJhbWV0ZXIgZnJvbSA8bGl0ZXJhbD50cnVlPC9saXRlcmFsPgorICAg ICAgdG8gPGxpdGVyYWw+ZmFsc2U8L2xpdGVyYWw+LCB0aGUgYmFja2VuZCBwcm9jZXNzIGNoZWNr cyBmb3IgYW55IGluY29tcGxldGUKKyAgICAgIHByZXBhcmVkIHRyYW5zYWN0aW9ucyBkb25lIGJ5 IHRoZSBsb2dpY2FsIHJlcGxpY2F0aW9uIHdvcmtlciAoZnJvbSB3aGVuCisgICAgICA8bGl0ZXJh bD50d29fcGhhc2U8L2xpdGVyYWw+IHBhcmFtZXRlciB3YXMgc3RpbGwgPGxpdGVyYWw+dHJ1ZTwv bGl0ZXJhbD4pCisgICAgICBhbmQsIGlmIGFueSBhcmUgZm91bmQsIHRoaXMgY29tbWFuZCBpcyBm YWlsZWQgd2l0aCBhbiBlcnJvci4gSW4gdGhpcworICAgICAgY2FzZSwgeW91IGNhbiByZXNvbHZl IHByZXBhcmVkIHRyYW5zYWN0aW9ucyBvbiB0aGUgcHVibGlzaGVyIG5vZGUgb3IKKyAgICAgIG1h bnVhbGx5IHJvbGwgYmFjayB0aGVtIG9uIHRoZSBzdWJzY3JpYmVyLiBBZnRlciB0aGUgYWx0ZXJp bmcgZnJvbQorICAgICAgPGxpdGVyYWw+dHJ1ZTwvbGl0ZXJhbD4gdG8gPGxpdGVyYWw+ZmFsc2U8 L2xpdGVyYWw+LCB0aGUgcHVibGlzaGVyIHdpbGwKKyAgICAgIHJlcGxpY2F0ZSB0cmFuc2FjdGlv bnMgYWdhaW4gd2hlbiB0aGV5IGFyZSBjb21taXR0ZWQuCisgICAgIDwvcGFyYT4KICAgICA8L2xp c3RpdGVtPgogICAgPC92YXJsaXN0ZW50cnk+CiAKLS0gCjIuNDMuMAoK --_004_TYCPR01MB56938F06B84DD92A88234667F5A22TYCPR01MB5693jpnp_--