Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mpn2j-0006Rr-Mw for pgsql-hackers@arkaria.postgresql.org; Wed, 24 Nov 2021 07:50:14 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1mpn2i-00052X-MO for pgsql-hackers@arkaria.postgresql.org; Wed, 24 Nov 2021 07:50:12 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mpn2i-00052O-9H for pgsql-hackers@lists.postgresql.org; Wed, 24 Nov 2021 07:50:12 +0000 Received: from esa5.fujitsucc.c3s2.iphmx.com ([68.232.159.76]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mpn2f-00040G-II for pgsql-hackers@lists.postgresql.org; Wed, 24 Nov 2021 07:50:11 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=fujitsu.com; i=@fujitsu.com; q=dns/txt; s=fj1; t=1637740210; x=1669276210; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=celnlab5GkCjuuA2MBoYj9ZTfPo9Sx6DNzBojd8a668=; b=VYURWsMx/Ahnr6662ZZ9TT42BYM90KYZE4yvswjHSNS1i/3uY4KGrtA3 I6tUVMoLfs98JVgy11C/LnpQqTvgApDDVsSzUApC3RbZWXWuPU5g4wIT+ IMm5gjLTnICh+v8g1dvcPDTpydz4J0tFE945SMZa9dd3g6cCJI6ZNCe2Y v+HKgtY52t8kJM2sG88LBCz0kwfNSo7KvvmR5aN/d/XQ7CG4oN7tQPjL5 K8xX2KZCITnEtSfRpao3Ix8h7VeoMu5uCNOoGgouVlf+MFSWCXiuRiw2L ftEO++4lphBV86grYkIGI55dnFKPphdoix9qbuwOiTOe1rLdgnkUJkCqw g==; X-IronPort-AV: E=McAfee;i="6200,9189,10177"; a="44496802" X-IronPort-AV: E=Sophos;i="5.87,260,1631545200"; d="zip'48?scan'48,208,48,223";a="44496802" Received: from mail-os0jpn01lp2111.outbound.protection.outlook.com (HELO JPN01-OS0-obe.outbound.protection.outlook.com) ([104.47.23.111]) by ob1.fujitsucc.c3s2.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 24 Nov 2021 16:50:06 +0900 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Y5J5vw9NiuzURrhCQJHQdxCKBNmssy0JKJcvBi7sjdZZXLbO9u09ap4Mt04QA8S6p0pr3kXeNZP4gDB8ZPKjIHWyE9Fw5fyx9BFRmm0VMDw21hj/rtcGUR/SVTCbxJwSuNxNvHAGPCDt3BkUqLA/sLeqyv5HVq2ufD/8FdCxMb8t+iM1SZn4fUPhkm6YKaPoNHPrfpEcrx2n73orRGjuyZiBS3XB6LUPnDO0HISsaaID+ggUByzjBRv4A/mZ360aGr5GZaRZZ89CR3Nph5pdV4Dx5EgqaRMFYVKbJepGat1Zy5J2z+whTtznr9xP9iuF7G7CsxLKVVAQfhnEV0VLmA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=zpjBfqyh4s0xt/ZJlE3Kp+80a6hQ25xZAY33UWZly10=; b=GaiMdswpdaedZH4y8qVJZVk1MhVWjE/+XJOOxW33CTE4cExYAYHcGPkX5MNbk8va/qRItglmXI6GKR7O5riINXBwf+xkagc23Y5WP8CDqughcY2+jBZihFT6AI8WnyvucNbSLrdHHgz/6CzHt6yUdTKFPQwkz0SfkEMzfSU+Oksh0TQTPRRI4kqCqyymNZX5D5IhVEZGdJRh9gZHAmgJExdlf7zxRQBoej7WhZuedyTHdj0H6NPmKRqAUHURCcJarK62d9H5ly4WF4W/QZt4Wlx6i14ONY6+hvbNnDHtTVKXudI08nMxQXrBmxYGLhaIluo10vnz7nr+0FVJm/yVFw== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fujitsu.onmicrosoft.com; s=selector2-fujitsu-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=zpjBfqyh4s0xt/ZJlE3Kp+80a6hQ25xZAY33UWZly10=; b=PI0bRSguasutHzg8/W5jVnCqdCG3+vnUWDZDHSAFRkeGZxaO0gDS3BocOk/xR2T6K6rOq+3Jpr58ZaHeTGn79Gp6ufc5lETTjK/mrVnmVxwn5oDoWvTAJ7+IHx4Jtepv0WV+A8P2NjVlX4Ef+fvuYwn/kkZOxk6rxieDmFnlMzs= Received: from TYAPR01MB5866.jpnprd01.prod.outlook.com (2603:1096:404:8056::13) by TYAPR01MB4271.jpnprd01.prod.outlook.com (2603:1096:404:c8::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4713.24; Wed, 24 Nov 2021 07:50:02 +0000 Received: from TYAPR01MB5866.jpnprd01.prod.outlook.com ([fe80::30b0:3a2a:f088:165b]) by TYAPR01MB5866.jpnprd01.prod.outlook.com ([fe80::30b0:3a2a:f088:165b%6]) with mapi id 15.20.4713.026; Wed, 24 Nov 2021 07:50:02 +0000 From: "kuroda.hayato@fujitsu.com" To: 'Shinya Kato' CC: "pgsql-hackers@lists.postgresql.org" Subject: RE: [Proposal] Add foreign-server health checks infrastructure Thread-Topic: [Proposal] Add foreign-server health checks infrastructure Thread-Index: AdfNNjec7xk22WznTt+52qg+YpAmvANdE8aAAG+tXeAALaEGgADyvFSgAAcy+oA= Date: Wed, 24 Nov 2021 07:50:02 +0000 Message-ID: References: <54449d7bea79263e937266ad6ebc65b3@oss.nttdata.com> <4e64bb8a0a88f5b6ac5a8901377c81af@oss.nttdata.com> In-Reply-To: Accept-Language: ja-JP, en-US Content-Language: ja-JP X-MS-Has-Attach: yes X-MS-TNEF-Correlator: msip_labels: MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_Enabled=true; MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_SetDate=2021-11-24T04:53:20Z; MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_Method=Standard; MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_Name=FUJITSU-RESTRICTED?; MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_SiteId=a19f121d-81e1-4858-a9d8-736e267fd4c7; MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_ActionId=f0158307-3ec3-4d9b-bb6f-2193e24fb51b; MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_ContentBits=0 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=fujitsu.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 2f9a225a-8d42-4de1-7f4c-08d9af1f05b6 x-ms-traffictypediagnostic: TYAPR01MB4271: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 4gxQY66N9pM6i82stLy3eT8KV1J5zP9kaaNBKIEJCnJHDu/cdg4MAst8MqvtwdEEJ5xEjeYQ4B97yVTIvhvw8FGAovqliN3EZ8ECmXtGpuNrUtdDGwnmTyEyLR6YV2KHj0hK9cdzbdnnMLDoYb8W1s+bkMdw0FxEBYKLYsg+PgWWNEKwOANtsE4HaWUWz0qIs8xS7/mW3IQ6HjWsNw0C7Ud20KD9m9Q8IkjwlPjt4ADiLCDKN7ZETFTUsTF1acixkzRsWUq21vBlGigiTSPUSknn4FE8DYZDF49iZwteKmvmt2QbwUESOo80jAJdv8+bvCbqOxMdT5UcdOAl84pasN9I2Ih+T6QdLg8ORNDOJ73D+dEXafKa4eBy58cr7Xeh3VfzAGZ6Z18JWtETKIB+7VIWIUr5wt22CULTVsH78PZS8GRBjtPLAwp+6bzX5Z27LJT5N/GMlHLpNy4c5kqnk0u8c68BjrIdB5HhNVtC87agXAutI1bwo8QiUM9Z3GOgkFVkAdkmzVqAgR2FmWw2/eGDlzZru6BCrnmOZFf2+h1jILACLJao+4OblTfrzN8vBWSUEUPEi45914VDjQgHXKIkESnKKYgzIFKSc1HD8vn0Pf5IWb+Wb2igeG4h5firxNa3DlxZec06JzVCJ0J6QBGPofMak7dyc/P91dZt7DE= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:TYAPR01MB5866.jpnprd01.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(38070700005)(558084003)(6916009)(9686003)(38100700002)(2940100002)(85182001)(83380400001)(55016003)(71200400001)(508600001)(66476007)(66556008)(52536014)(6506007)(99936003)(26005)(82960400001)(186003)(8936002)(33656002)(5660300002)(8676002)(316002)(7696005)(2906002)(86362001)(4326008)(66446008)(76116006)(66946007)(64756008)(122000001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-2022-jp?B?ZEFFVTRVem9BUGprVENTTHpoaHl5RGU0aFpSK0JsNW53S0dab01mb2k2?= =?iso-2022-jp?B?RzNQMUNhNmtlRUpGdzBqcVRHVVZ0K0dUNHk5S25Ta2VYSkRRdlhtVFpk?= =?iso-2022-jp?B?dStaeFk3aVR1TCt0N1k0YkNLNER5WXRzWSt1dTJNb2hVQ2wrdURwZkJk?= =?iso-2022-jp?B?YUczUkdhbU91b2ZyaGR4YkZaMnNlU1p5eVg0YjIrMnJodFozYkNXVGZx?= =?iso-2022-jp?B?aE1oTitVb0NqaXZvOHpBd0dFTTNUSUpZbEppbm04L0M2Nk1salF2Vlk5?= =?iso-2022-jp?B?ei90bmNCQ2pBUmcwMXFCZDc3RXNQcVd1a3ZibDdIWStSV0VOYk9JY1B3?= =?iso-2022-jp?B?Q21acXhWZGE0dlFhbHUzSjZZdlBNVWhhUVRDTGxVMkxOeVNidmdMUndJ?= =?iso-2022-jp?B?WXp4NWhuaHJjc3hJOXhqby9vUUk1TVh5OVZja0VtbUcxQ051V1huQjF5?= =?iso-2022-jp?B?eWxMM08vSzhQRHZ5R3JCSVVyZ29jK1piQUdwaCtkL0pPZkdGTVpWQjlV?= =?iso-2022-jp?B?elVQS281bWZLa0NDc3RVL2FCQlpMeVFFbnRUL1QxbUthOVhrVVJaY1FZ?= =?iso-2022-jp?B?V0JKeFI3azJwcmNnYnI2ZDIwRHlQaFdsQTlxRzg5QkZwTjNSNXVNRUd4?= =?iso-2022-jp?B?MHdWZzZ5TGgwQ3VpUUZPWkNvcGRndDd1c3JOcHV6Z3A5b3pEM1pFK1hw?= =?iso-2022-jp?B?N2VDUUxRNGw2ZVVrdFdmZnY2RlZlbUl6aXVyRnhxT29xM3B2UWZ1Zk1n?= =?iso-2022-jp?B?TWxyQ0crazI0NDlrMm41UjRXSUFwZUJSUTAvd2ZBNW1CM0RRVjA3cDNW?= =?iso-2022-jp?B?ZzdScXFvbFpyU2JZQzFRV0xxMU9KZWRuQ1pwYzlZd2h5TVA0czgwQ0Y0?= =?iso-2022-jp?B?QlpUL3FwcmNPeW1WR25CWkZwSGJmQkxYTE0xZTl6aDR0ZUo5cVhTaGxR?= =?iso-2022-jp?B?VHAwaGhPbXhtNXhOK0RUakN5UmY2ZEIxZ2E5RmNuR0I0aFE1cWVxTFJT?= =?iso-2022-jp?B?cU91YWR3K2RqYXpPQ0dyMzEyTE8reTdHUFRpWlNYTlNxKzJpeHkveG9r?= =?iso-2022-jp?B?TEVlU1lzVUg3ZVhROTg3cStleDM4SVFZd0pWRHNzSHRTdGduazlpMVZZ?= =?iso-2022-jp?B?SEFjeEpWbEpMOVdZSXhNbE1nTC9hb1dWMjl2ZDlEYjB3dzR4YXcrSTI4?= =?iso-2022-jp?B?S2U2R0pVTjU0UlRCTzZRVnhnYk05a08vdTF0R0wwSmIrcE1BSXlpb1Bu?= =?iso-2022-jp?B?SzRJL0haL3hjdyt3QTdzL2NrdGVhNGNTTjVTSExZNkx3UTBxaUpCQTBs?= =?iso-2022-jp?B?VUlJZlh2RzhaSm9aTzdkMlJ4SzM2Uk9hV2lrOU01VHduVUZsSEdnUWRj?= =?iso-2022-jp?B?YnVUK2kvcHFoSXFHL0plSmRMWXdvQ3hQNDJuVWlVYWREbjB4d0QzWHdX?= =?iso-2022-jp?B?ajljOE0yYmYxNmhRRHkwOGttTXN6ME9SdW1INkJ0YUl0bHVLbzZweDNm?= =?iso-2022-jp?B?ZGkrY1pKc0QxMWpDS0w0K3Z5SElZRjJ1ZElEU2VCbmc4VmRTZEt0ZERu?= =?iso-2022-jp?B?bUJPaUZFUlJFOE1EbVRMMEthc0dvczFCM2NwQnpnTVNURXYxOGhsNUg3?= =?iso-2022-jp?B?S0pYRkZqeUVDUEFvVGhQcW9aNVB6U2tXWnYwOHlsSVRPeTl3OFhZWEgy?= =?iso-2022-jp?B?WitTUWkyWGtJZ3hBV2JuRlJuZFNWcUs5c0lDZHlyZ1NWbTZUMk50QURK?= =?iso-2022-jp?B?RUFQTUZLKy9DblJFb3YyN2xadjhoVGF2enhuNnpIUWc1dHBmaVJNWWxM?= =?iso-2022-jp?B?QS9sYVQ3MkkrTmU2aWx6dTNMRUhZRGFSTnRJOFh0SXZEU0VRNzBJd3RO?= =?iso-2022-jp?B?UGlvNXBxOFIvbktyaWhvL1ZqYm5OWHg2UUkyS0syTzkwMmdSaTNJeUFw?= =?iso-2022-jp?B?UjQ2M1BRMzFOKzdudzdRQXRHdVhxcGp3YkxJR0o0MTlPaTVSZFJTUkNx?= =?iso-2022-jp?B?VHJ5b3ZhWkVqOVBXZ0VQNWlZeXE3MXZhaHBRZ2tHSmY1c0lEbWRXbGVT?= =?iso-2022-jp?B?ZXc4SlZFZTVPS2tiRnJkcjR5L0xqWWxNQUVVVkZxdXIzZ21Qejd5emhT?= =?iso-2022-jp?B?QUQ4ZEpnMG5wVGtvRi9lNDhsMUVIcWFPZDc2NlAza3lZbVVqeDZFRVho?= =?iso-2022-jp?B?Rnd2ZzBPTXVUZ1FxR01HbitNOFd1dUNacGpVc2hpN2dUdkxhci9lclRw?= =?iso-2022-jp?B?bzlwMkFWVU04MlZTR2lILzNPUVlRY3VIK080MWpyREc0VlBxSlRJREZC?= =?iso-2022-jp?B?T0NiUFVCbEhmR0lQTXh3NUM1dDhMd0NsdzRwSEJNYUM5VWpaSkwzUnRu?= =?iso-2022-jp?B?WGlKRlVnRUpDclRmQzZDY2lCcTVlWTl5cldHalV6NGd1T2RYQkVzbys0?= =?iso-2022-jp?B?VWpMOHl3PT0=?= Content-Type: multipart/mixed; boundary="_003_TYAPR01MB586615734CA7C814364CBA55F5619TYAPR01MB5866jpnp_" MIME-Version: 1.0 X-OriginatorOrg: fujitsu.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYAPR01MB5866.jpnprd01.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2f9a225a-8d42-4de1-7f4c-08d9af1f05b6 X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Nov 2021 07:50:02.3652 (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: LRPKQCW6NuqiQjlGMeguWK6vQGVozmxGm2FTtzVxbgEDVMXJLMcTT9Ks0ByUklP3Pa2whRsVmyRZAa6k9eS63dsv+AtUOuFh5T0vYxH3FC8= X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYAPR01MB4271 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --_003_TYAPR01MB586615734CA7C814364CBA55F5619TYAPR01MB5866jpnp_ Content-Type: text/plain; charset="iso-2022-jp" Content-Transfer-Encoding: quoted-printable Dear Kato-san, I found the missing space, and I added a test. I'm very happy if you review this. Best Regards, Hayato Kuroda FUJITSU LIMITED --_003_TYAPR01MB586615734CA7C814364CBA55F5619TYAPR01MB5866jpnp_ Content-Type: application/octet-stream; name="v03_0001_add_checking_infrastracture.patch" Content-Description: v03_0001_add_checking_infrastracture.patch Content-Disposition: attachment; filename="v03_0001_add_checking_infrastracture.patch"; size=12209; creation-date="Wed, 24 Nov 2021 07:46:27 GMT"; modification-date="Wed, 24 Nov 2021 07:45:43 GMT" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL2NvcHlmcm9tcGFyc2UuYyBiL3NyYy9i YWNrZW5kL2NvbW1hbmRzL2NvcHlmcm9tcGFyc2UuYwppbmRleCBhYWMxMDE2NWVjLi4wYzRkNjFh MzRjIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9jb21tYW5kcy9jb3B5ZnJvbXBhcnNlLmMKKysr IGIvc3JjL2JhY2tlbmQvY29tbWFuZHMvY29weWZyb21wYXJzZS5jCkBAIC0yNjksNiArMjY5LDcg QEAgQ29weUdldERhdGEoQ29weUZyb21TdGF0ZSBjc3RhdGUsIHZvaWQgKmRhdGFidWYsIGludCBt aW5yZWFkLCBpbnQgbWF4cmVhZCkKIAogCQkJcmVhZG1lc3NhZ2U6CiAJCQkJCUhPTERfQ0FOQ0VM X0lOVEVSUlVQVFMoKTsKKwkJCQkJSE9MRF9DSEVDS0lOR19SRU1PVEVfU0VSVkVSU19JTlRFUlJV UFRTKCk7CiAJCQkJCXBxX3N0YXJ0bXNncmVhZCgpOwogCQkJCQltdHlwZSA9IHBxX2dldGJ5dGUo KTsKIAkJCQkJaWYgKG10eXBlID09IEVPRikKQEAgLTMwMCw2ICszMDEsNyBAQCBDb3B5R2V0RGF0 YShDb3B5RnJvbVN0YXRlIGNzdGF0ZSwgdm9pZCAqZGF0YWJ1ZiwgaW50IG1pbnJlYWQsIGludCBt YXhyZWFkKQogCQkJCQkJZXJlcG9ydChFUlJPUiwKIAkJCQkJCQkJKGVycmNvZGUoRVJSQ09ERV9D T05ORUNUSU9OX0ZBSUxVUkUpLAogCQkJCQkJCQkgZXJybXNnKCJ1bmV4cGVjdGVkIEVPRiBvbiBj bGllbnQgY29ubmVjdGlvbiB3aXRoIGFuIG9wZW4gdHJhbnNhY3Rpb24iKSkpOworCQkJCQlSRVNV TUVfQ0hFQ0tJTkdfUkVNT1RFX1NFUlZFUlNfSU5URVJSVVBUUygpOwogCQkJCQlSRVNVTUVfQ0FO Q0VMX0lOVEVSUlVQVFMoKTsKIAkJCQkJLyogLi4uIGFuZCBwcm9jZXNzIGl0ICovCiAJCQkJCXN3 aXRjaCAobXR5cGUpCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9mb3JlaWduL2ZvcmVpZ24uYyBi L3NyYy9iYWNrZW5kL2ZvcmVpZ24vZm9yZWlnbi5jCmluZGV4IGUwN2NjNTc0MzEuLmViOWM0ZjNm MDUgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2ZvcmVpZ24vZm9yZWlnbi5jCisrKyBiL3NyYy9i YWNrZW5kL2ZvcmVpZ24vZm9yZWlnbi5jCkBAIC0yNiw3ICsyNiwxMSBAQAogI2luY2x1ZGUgInV0 aWxzL21lbXV0aWxzLmgiCiAjaW5jbHVkZSAidXRpbHMvcmVsLmgiCiAjaW5jbHVkZSAidXRpbHMv c3lzY2FjaGUuaCIKKyNpbmNsdWRlICJ1dGlscy90aW1lb3V0LmgiCiAKKy8qIGZvciBjaGVja2lu ZyByZW1vdGUgc2VydmVycyAqLworaW50IHJlbW90ZV9zZXJ2ZXJzX2Nvbm5lY3Rpb25fY2hlY2tf aW50ZXJ2YWwgPSAwOworc3RhdGljIENoZWNraW5nUmVtb3RlU2VydmVyc0NhbGxiYWNrSXRlbSAq ZmR3X2NhbGxiYWNrcyA9IE5VTEw7CiAKIC8qCiAgKiBHZXRGb3JlaWduRGF0YVdyYXBwZXIgLQls b29rIHVwIHRoZSBmb3JlaWduLWRhdGEgd3JhcHBlciBieSBPSUQuCkBAIC04MzYsMyArODQwLDUx IEBAIEdldEV4aXN0aW5nTG9jYWxKb2luUGF0aChSZWxPcHRJbmZvICpqb2lucmVsKQogCX0KIAly ZXR1cm4gTlVMTDsKIH0KKworLyoKKyAqIFJlZ2lzdGVyIGNhbGxiYWNrcyBmb3IgY2hlY2tpbmcg cmVtb3RlIHNlcnZlcnMuCisgKgorICogVGhpcyBmdW5jdGlvbiBpcyBpbnRlbmRlZCBmb3IgdXNl IGJ5IEZEVyBleHRlbnNpb25zLgorICogVGhlIGNoZWNraW5nIHRpbWVvdXQgd2lsbCBiZSBmaXJl ZCBhZnRlciByZWdpc3RlcmluZyB0aGUgZmlyc3QgY2FsbGJhY2suCisgKi8KK3ZvaWQKK1JlZ2lz dGVyQ2hlY2tpbmdSZW1vdGVTZXJ2ZXJzQ2FsbGJhY2soQ2hlY2tpbmdSZW1vdGVTZXJ2ZXJzQ2Fs bGJhY2sgY2FsbGJhY2ssIHZvaWQgKmFyZykKK3sKKwlDaGVja2luZ1JlbW90ZVNlcnZlcnNDYWxs YmFja0l0ZW0gKml0ZW07CisJLyogc2hvdWxkIHdlIHN0YXJ0IGNoZWNraW5nIHRpbWVvdXQ/ICov CisJYm9vbCBmaXJzdF9leGVjID0gSGF2ZUNoZWNraW5nUmVtb3RlU2VydmVyc0NhbGxiYWNrcygp OworCisJaXRlbSA9IChDaGVja2luZ1JlbW90ZVNlcnZlcnNDYWxsYmFja0l0ZW0gKikKKwkJCU1l bW9yeUNvbnRleHRBbGxvYyhUb3BNZW1vcnlDb250ZXh0LCBzaXplb2YoQ2hlY2tpbmdSZW1vdGVT ZXJ2ZXJzQ2FsbGJhY2tJdGVtKSk7CisJaXRlbS0+Y2FsbGJhY2sgPSBjYWxsYmFjazsKKwlpdGVt LT5hcmcgPSBhcmc7CisJaXRlbS0+bmV4dCA9IGZkd19jYWxsYmFja3M7CisJZmR3X2NhbGxiYWNr cyA9IGl0ZW07CisKKwlpZiAoZmlyc3RfZXhlYyAmJiByZW1vdGVfc2VydmVyc19jb25uZWN0aW9u X2NoZWNrX2ludGVydmFsID4gMCkKKwkJZW5hYmxlX3RpbWVvdXRfYWZ0ZXIoQ0hFQ0tJTkdfUkVN T1RFX1NFUlZFUlNfVElNRU9VVCwgcmVtb3RlX3NlcnZlcnNfY29ubmVjdGlvbl9jaGVja19pbnRl cnZhbCk7Cit9CisKKworLyoKKyAqIENhbGwgY2FsbGJhY2tzIGZvciBjaGVja2luZyByZW1vdGUg c2VydmVycy4KKyAqCisgKiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiB3aWxsIG5vdCByZXR1cm4g YW55dGhpbmcuCisgKiBDYWxsYmFjayBmdW5jdGlvbnMgbXVzdCB0aHJvdyBlcmVwb3J0KEVSUk9S KSBpZiBkaXNjb25uZWN0aW9uIGhhcyBiZWVuIGRldGVjdGVkLgorICovCit2b2lkCitDYWxsQ2hl Y2tpbmdSZW1vdGVTZXJ2ZXJzQ2FsbGJhY2tzKHZvaWQpCit7CisJQ2hlY2tpbmdSZW1vdGVTZXJ2 ZXJzQ2FsbGJhY2tJdGVtICppdGVtOworCWZvciAoaXRlbSA9IGZkd19jYWxsYmFja3M7IGl0ZW07 IGl0ZW0gPSBpdGVtLT5uZXh0KQorCQlpdGVtLT5jYWxsYmFjayhpdGVtLT5hcmcpOworfQorCisv KgorICogQ2hlY2sgd2hldGhlciBhbnkgY2FsbGJhY2tzIGhhcyBiZWVuIHJlZ2lzdGVyZWQuCisg Ki8KK2Jvb2wKK0hhdmVDaGVja2luZ1JlbW90ZVNlcnZlcnNDYWxsYmFja3Modm9pZCkKK3sKKwly ZXR1cm4gZmR3X2NhbGxiYWNrcyAhPSBOVUxMOworfQpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQv bGlicHEvcHFjb21tLmMgYi9zcmMvYmFja2VuZC9saWJwcS9wcWNvbW0uYwppbmRleCA5ZWJiYTAy NWNjLi41MTMwYTgzNDBiIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9saWJwcS9wcWNvbW0uYwor KysgYi9zcmMvYmFja2VuZC9saWJwcS9wcWNvbW0uYwpAQCAtMTE3MSw3ICsxMTcxLDYgQEAgcHFf c3RhcnRtc2dyZWFkKHZvaWQpCiAJCWVyZXBvcnQoRkFUQUwsCiAJCQkJKGVycmNvZGUoRVJSQ09E RV9QUk9UT0NPTF9WSU9MQVRJT04pLAogCQkJCSBlcnJtc2coInRlcm1pbmF0aW5nIGNvbm5lY3Rp b24gYmVjYXVzZSBwcm90b2NvbCBzeW5jaHJvbml6YXRpb24gd2FzIGxvc3QiKSkpOwotCiAJUHFD b21tUmVhZGluZ01zZyA9IHRydWU7CiB9CiAKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3Rjb3Av cG9zdGdyZXMuYyBiL3NyYy9iYWNrZW5kL3Rjb3AvcG9zdGdyZXMuYwppbmRleCAwNzc1YWJlMzVk Li5kNzg5MGI1MzA3IDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC90Y29wL3Bvc3RncmVzLmMKKysr IGIvc3JjL2JhY2tlbmQvdGNvcC9wb3N0Z3Jlcy5jCkBAIC00Myw2ICs0Myw3IEBACiAjaW5jbHVk ZSAiY29tbWFuZHMvYXN5bmMuaCIKICNpbmNsdWRlICJjb21tYW5kcy9wcmVwYXJlLmgiCiAjaW5j bHVkZSAiZXhlY3V0b3Ivc3BpLmgiCisjaW5jbHVkZSAiZm9yZWlnbi9mb3JlaWduLmgiCiAjaW5j bHVkZSAiaml0L2ppdC5oIgogI2luY2x1ZGUgImxpYnBxL2xpYnBxLmgiCiAjaW5jbHVkZSAibGli cHEvcHFmb3JtYXQuaCIKQEAgLTM0OSw2ICszNTAsNyBAQCBTb2NrZXRCYWNrZW5kKFN0cmluZ0lu Zm8gaW5CdWYpCiAJICogR2V0IG1lc3NhZ2UgdHlwZSBjb2RlIGZyb20gdGhlIGZyb250ZW5kLgog CSAqLwogCUhPTERfQ0FOQ0VMX0lOVEVSUlVQVFMoKTsKKwlIT0xEX0NIRUNLSU5HX1JFTU9URV9T RVJWRVJTX0lOVEVSUlVQVFMoKTsKIAlwcV9zdGFydG1zZ3JlYWQoKTsKIAlxdHlwZSA9IHBxX2dl dGJ5dGUoKTsKIApAQCAtNDU1LDYgKzQ1Nyw3IEBAIFNvY2tldEJhY2tlbmQoU3RyaW5nSW5mbyBp bkJ1ZikKIAkgKi8KIAlpZiAocHFfZ2V0bWVzc2FnZShpbkJ1ZiwgbWF4bXNnbGVuKSkKIAkJcmV0 dXJuIEVPRjsJCQkJLyogc3VpdGFibGUgbWVzc2FnZSBhbHJlYWR5IGxvZ2dlZCAqLworCVJFU1VN RV9DSEVDS0lOR19SRU1PVEVfU0VSVkVSU19JTlRFUlJVUFRTKCk7CiAJUkVTVU1FX0NBTkNFTF9J TlRFUlJVUFRTKCk7CiAKIAlyZXR1cm4gcXR5cGU7CkBAIC0yNzA4LDYgKzI3MTEsMTMgQEAgc3Rh cnRfeGFjdF9jb21tYW5kKHZvaWQpCiAJCSFnZXRfdGltZW91dF9hY3RpdmUoQ0xJRU5UX0NPTk5F Q1RJT05fQ0hFQ0tfVElNRU9VVCkpCiAJCWVuYWJsZV90aW1lb3V0X2FmdGVyKENMSUVOVF9DT05O RUNUSU9OX0NIRUNLX1RJTUVPVVQsCiAJCQkJCQkJIGNsaWVudF9jb25uZWN0aW9uX2NoZWNrX2lu dGVydmFsKTsKKwlpZiAocmVtb3RlX3NlcnZlcnNfY29ubmVjdGlvbl9jaGVja19pbnRlcnZhbCA+ IDAgJiYKKwkJSXNVbmRlclBvc3RtYXN0ZXIgJiYKKwkJTXlQcm9jUG9ydCAmJgorCQlIYXZlQ2hl Y2tpbmdSZW1vdGVTZXJ2ZXJzQ2FsbGJhY2tzKCkgJiYKKwkJIWdldF90aW1lb3V0X2FjdGl2ZShD SEVDS0lOR19SRU1PVEVfU0VSVkVSU19USU1FT1VUKSkKKwkJZW5hYmxlX3RpbWVvdXRfYWZ0ZXIo Q0hFQ0tJTkdfUkVNT1RFX1NFUlZFUlNfVElNRU9VVCwKKwkJCQkJCQkgcmVtb3RlX3NlcnZlcnNf Y29ubmVjdGlvbl9jaGVja19pbnRlcnZhbCk7CiB9CiAKIHN0YXRpYyB2b2lkCkBAIC0zMjEzLDYg KzMyMjMsMjQgQEAgUHJvY2Vzc0ludGVycnVwdHModm9pZCkKIAkJfQogCX0KIAorCWlmIChDaGVj a2luZ1JlbW90ZVNlcnZlcnNUaW1lb3V0UGVuZGluZyAmJiBDaGVja2luZ1JlbW90ZVNlcnZlcnNI b2xkb2ZmQ291bnQgIT0gMCkKKwl7CisJCS8qCisJCSAqIFNraXAgY2hlY2tpbmcgZm9yZWlnbiBz ZXJ2ZXJzIHdoaWxlIHJlYWRpbmcgbWVzc2FnZXMuCisJCSAqLworCQlJbnRlcnJ1cHRQZW5kaW5n ID0gdHJ1ZTsKKwl9CisJZWxzZSBpZiAoQ2hlY2tpbmdSZW1vdGVTZXJ2ZXJzVGltZW91dFBlbmRp bmcpCisJeworCQlDaGVja2luZ1JlbW90ZVNlcnZlcnNUaW1lb3V0UGVuZGluZyA9IGZhbHNlOwor CisJCUNhbGxDaGVja2luZ1JlbW90ZVNlcnZlcnNDYWxsYmFja3MoKTsKKworCQlpZiAocmVtb3Rl X3NlcnZlcnNfY29ubmVjdGlvbl9jaGVja19pbnRlcnZhbCA+IDApCisJCQllbmFibGVfdGltZW91 dF9hZnRlcihDSEVDS0lOR19SRU1PVEVfU0VSVkVSU19USU1FT1VULAorCQkJCQkJCQkJcmVtb3Rl X3NlcnZlcnNfY29ubmVjdGlvbl9jaGVja19pbnRlcnZhbCk7CisJfQorCiAJaWYgKENsaWVudENv bm5lY3Rpb25Mb3N0KQogCXsKIAkJUXVlcnlDYW5jZWxQZW5kaW5nID0gZmFsc2U7IC8qIGxvc3Qg Y29ubmVjdGlvbiB0cnVtcHMgUXVlcnlDYW5jZWwgKi8KZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5k L3V0aWxzL2luaXQvZ2xvYmFscy5jIGIvc3JjL2JhY2tlbmQvdXRpbHMvaW5pdC9nbG9iYWxzLmMK aW5kZXggMzgxZDllNTQ4ZC4uMTViMGMyNzI3YiAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvdXRp bHMvaW5pdC9nbG9iYWxzLmMKKysrIGIvc3JjL2JhY2tlbmQvdXRpbHMvaW5pdC9nbG9iYWxzLmMK QEAgLTM2LDkgKzM2LDExIEBAIHZvbGF0aWxlIHNpZ19hdG9taWNfdCBJZGxlSW5UcmFuc2FjdGlv blNlc3Npb25UaW1lb3V0UGVuZGluZyA9IGZhbHNlOwogdm9sYXRpbGUgc2lnX2F0b21pY190IElk bGVTZXNzaW9uVGltZW91dFBlbmRpbmcgPSBmYWxzZTsKIHZvbGF0aWxlIHNpZ19hdG9taWNfdCBQ cm9jU2lnbmFsQmFycmllclBlbmRpbmcgPSBmYWxzZTsKIHZvbGF0aWxlIHNpZ19hdG9taWNfdCBM b2dNZW1vcnlDb250ZXh0UGVuZGluZyA9IGZhbHNlOwordm9sYXRpbGUgc2lnX2F0b21pY190IENo ZWNraW5nUmVtb3RlU2VydmVyc1RpbWVvdXRQZW5kaW5nID0gZmFsc2U7CiB2b2xhdGlsZSB1aW50 MzIgSW50ZXJydXB0SG9sZG9mZkNvdW50ID0gMDsKIHZvbGF0aWxlIHVpbnQzMiBRdWVyeUNhbmNl bEhvbGRvZmZDb3VudCA9IDA7CiB2b2xhdGlsZSB1aW50MzIgQ3JpdFNlY3Rpb25Db3VudCA9IDA7 Cit2b2xhdGlsZSB1aW50MzIgQ2hlY2tpbmdSZW1vdGVTZXJ2ZXJzSG9sZG9mZkNvdW50ID0gMDsK IAogaW50CQkJTXlQcm9jUGlkOwogcGdfdGltZV90CU15U3RhcnRUaW1lOwpkaWZmIC0tZ2l0IGEv c3JjL2JhY2tlbmQvdXRpbHMvaW5pdC9wb3N0aW5pdC5jIGIvc3JjL2JhY2tlbmQvdXRpbHMvaW5p dC9wb3N0aW5pdC5jCmluZGV4IDY0NjEyNmVkZWUuLjU5NjJiMWUzOTUgMTAwNjQ0Ci0tLSBhL3Ny Yy9iYWNrZW5kL3V0aWxzL2luaXQvcG9zdGluaXQuYworKysgYi9zcmMvYmFja2VuZC91dGlscy9p bml0L3Bvc3Rpbml0LmMKQEAgLTczLDYgKzczLDcgQEAgc3RhdGljIHZvaWQgTG9ja1RpbWVvdXRI YW5kbGVyKHZvaWQpOwogc3RhdGljIHZvaWQgSWRsZUluVHJhbnNhY3Rpb25TZXNzaW9uVGltZW91 dEhhbmRsZXIodm9pZCk7CiBzdGF0aWMgdm9pZCBJZGxlU2Vzc2lvblRpbWVvdXRIYW5kbGVyKHZv aWQpOwogc3RhdGljIHZvaWQgQ2xpZW50Q2hlY2tUaW1lb3V0SGFuZGxlcih2b2lkKTsKK3N0YXRp YyB2b2lkIENoZWNraW5nUmVtb3RlU2VydmVyc1RpbWVvdXRIYW5kbGVyKHZvaWQpOwogc3RhdGlj IGJvb2wgVGhlcmVJc0F0TGVhc3RPbmVSb2xlKHZvaWQpOwogc3RhdGljIHZvaWQgcHJvY2Vzc19z dGFydHVwX29wdGlvbnMoUG9ydCAqcG9ydCwgYm9vbCBhbV9zdXBlcnVzZXIpOwogc3RhdGljIHZv aWQgcHJvY2Vzc19zZXR0aW5ncyhPaWQgZGF0YWJhc2VpZCwgT2lkIHJvbGVpZCk7CkBAIC02MjEs NiArNjIyLDcgQEAgSW5pdFBvc3RncmVzKGNvbnN0IGNoYXIgKmluX2RibmFtZSwgT2lkIGRib2lk LCBjb25zdCBjaGFyICp1c2VybmFtZSwKIAkJCQkJCUlkbGVJblRyYW5zYWN0aW9uU2Vzc2lvblRp bWVvdXRIYW5kbGVyKTsKIAkJUmVnaXN0ZXJUaW1lb3V0KElETEVfU0VTU0lPTl9USU1FT1VULCBJ ZGxlU2Vzc2lvblRpbWVvdXRIYW5kbGVyKTsKIAkJUmVnaXN0ZXJUaW1lb3V0KENMSUVOVF9DT05O RUNUSU9OX0NIRUNLX1RJTUVPVVQsIENsaWVudENoZWNrVGltZW91dEhhbmRsZXIpOworCQlSZWdp c3RlclRpbWVvdXQoQ0hFQ0tJTkdfUkVNT1RFX1NFUlZFUlNfVElNRU9VVCwgQ2hlY2tpbmdSZW1v dGVTZXJ2ZXJzVGltZW91dEhhbmRsZXIpOwogCX0KIAogCS8qCkBAIC0xMjUwLDYgKzEyNTIsMTQg QEAgQ2xpZW50Q2hlY2tUaW1lb3V0SGFuZGxlcih2b2lkKQogCVNldExhdGNoKE15TGF0Y2gpOwog fQogCitzdGF0aWMgdm9pZAorQ2hlY2tpbmdSZW1vdGVTZXJ2ZXJzVGltZW91dEhhbmRsZXIodm9p ZCkKK3sKKwlDaGVja2luZ1JlbW90ZVNlcnZlcnNUaW1lb3V0UGVuZGluZyA9IHRydWU7CisJSW50 ZXJydXB0UGVuZGluZyA9IHRydWU7CisJU2V0TGF0Y2goTXlMYXRjaCk7Cit9CisKIC8qCiAgKiBS ZXR1cm5zIHRydWUgaWYgYXQgbGVhc3Qgb25lIHJvbGUgaXMgZGVmaW5lZCBpbiB0aGlzIGRhdGFi YXNlIGNsdXN0ZXIuCiAgKi8KZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3V0aWxzL21pc2MvZ3Vj LmMgYi9zcmMvYmFja2VuZC91dGlscy9taXNjL2d1Yy5jCmluZGV4IGU5MWQ1YTNjZmQuLjFmYWVi NTliODcgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3V0aWxzL21pc2MvZ3VjLmMKKysrIGIvc3Jj L2JhY2tlbmQvdXRpbHMvbWlzYy9ndWMuYwpAQCAtNTEsNiArNTEsNyBAQAogI2luY2x1ZGUgImNv bW1hbmRzL3ZhY3V1bS5oIgogI2luY2x1ZGUgImNvbW1hbmRzL3ZhcmlhYmxlLmgiCiAjaW5jbHVk ZSAiY29tbW9uL3N0cmluZy5oIgorI2luY2x1ZGUgImZvcmVpZ24vZm9yZWlnbi5oIgogI2luY2x1 ZGUgImZ1bmNhcGkuaCIKICNpbmNsdWRlICJqaXQvaml0LmgiCiAjaW5jbHVkZSAibGlicHEvYXV0 aC5oIgpAQCAtMTA1LDYgKzEwNiw3IEBACiAjaW5jbHVkZSAidXRpbHMvcXVlcnlqdW1ibGUuaCIK ICNpbmNsdWRlICJ1dGlscy9ybHMuaCIKICNpbmNsdWRlICJ1dGlscy9zbmFwbWdyLmgiCisjaW5j bHVkZSAidXRpbHMvdGltZW91dC5oIgogI2luY2x1ZGUgInV0aWxzL3R6cGFyc2VyLmgiCiAjaW5j bHVkZSAidXRpbHMvaW52YWwuaCIKICNpbmNsdWRlICJ1dGlscy92YXJsZW5hLmgiCkBAIC0zNTgz LDYgKzM1ODUsMTggQEAgc3RhdGljIHN0cnVjdCBjb25maWdfaW50IENvbmZpZ3VyZU5hbWVzSW50 W10gPQogCQlOVUxMLCBOVUxMLCBOVUxMCiAJfSwKIAorCisJeworCQl7InJlbW90ZV9zZXJ2ZXJz X2Nvbm5lY3Rpb25fY2hlY2tfaW50ZXJ2YWwiLCBQR0NfVVNFUlNFVCwgQ09OTl9BVVRIX1NFVFRJ TkdTLAorCQkJZ2V0dGV4dF9ub29wKCJTZXRzIHRoZSB0aW1lIGludGVydmFsIGJldHdlZW4gY2hl Y2tzIGZvciBkaXNjb25uZWN0aW9uIG9mIHJlbW90ZSBzZXJ2ZXJzLiIpLAorCQkJTlVMTCwKKwkJ CUdVQ19VTklUX01TCisJCX0sCisJCSZyZW1vdGVfc2VydmVyc19jb25uZWN0aW9uX2NoZWNrX2lu dGVydmFsLAorCQkwLCAwLCBJTlRfTUFYLAorCQlOVUxMLCBOVUxMLCBOVUxMCisJfSwKKwogCS8q IEVuZC1vZi1saXN0IG1hcmtlciAqLwogCXsKIAkJe05VTEwsIDAsIDAsIE5VTEwsIE5VTEx9LCBO VUxMLCAwLCAwLCAwLCBOVUxMLCBOVUxMLCBOVUxMCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC91 dGlscy9taXNjL3Bvc3RncmVzcWwuY29uZi5zYW1wbGUgYi9zcmMvYmFja2VuZC91dGlscy9taXNj L3Bvc3RncmVzcWwuY29uZi5zYW1wbGUKaW5kZXggMWNiYzlmZWViNi4uOWI3MDc2MWQ5YyAxMDA2 NDQKLS0tIGEvc3JjL2JhY2tlbmQvdXRpbHMvbWlzYy9wb3N0Z3Jlc3FsLmNvbmYuc2FtcGxlCisr KyBiL3NyYy9iYWNrZW5kL3V0aWxzL21pc2MvcG9zdGdyZXNxbC5jb25mLnNhbXBsZQpAQCAtOTAs NiArOTAsMTAgQEAKIAkJCQkJIyBkaXNjb25uZWN0aW9uIHdoaWxlIHJ1bm5pbmcgcXVlcmllczsK IAkJCQkJIyAwIGZvciBuZXZlcgogCisjcmVtb3RlX3NlcnZlcnNfY29ubmVjdGlvbl9jaGVja19p bnRlcnZhbCA9IDAJIyB0aW1lIGJldHdlZW4gdGltZSBiZXR3ZWVuIGNoZWNrcyBmb3IKKwkJCQkJ IyBmb3JlaWduIHNlcnZlciBkaXNjb25uZWN0aW9uOworCQkJCQkjIDAgZm9yIG5ldmVyCisKICMg LSBBdXRoZW50aWNhdGlvbiAtCiAKICNhdXRoZW50aWNhdGlvbl90aW1lb3V0ID0gMW1pbgkJIyAx cy02MDBzCmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9mb3JlaWduL2ZvcmVpZ24uaCBiL3NyYy9p bmNsdWRlL2ZvcmVpZ24vZm9yZWlnbi5oCmluZGV4IDgxNjllYjc2YjEuLjk4ZjU5YzExNTMgMTAw NjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL2ZvcmVpZ24vZm9yZWlnbi5oCisrKyBiL3NyYy9pbmNsdWRl L2ZvcmVpZ24vZm9yZWlnbi5oCkBAIC04MSw0ICs4MSwyMCBAQCBleHRlcm4gTGlzdCAqR2V0Rm9y ZWlnbkNvbHVtbk9wdGlvbnMoT2lkIHJlbGlkLCBBdHRyTnVtYmVyIGF0dG51bSk7CiBleHRlcm4g T2lkCWdldF9mb3JlaWduX2RhdGFfd3JhcHBlcl9vaWQoY29uc3QgY2hhciAqZmR3bmFtZSwgYm9v bCBtaXNzaW5nX29rKTsKIGV4dGVybiBPaWQJZ2V0X2ZvcmVpZ25fc2VydmVyX29pZChjb25zdCBj aGFyICpzZXJ2ZXJuYW1lLCBib29sIG1pc3Npbmdfb2spOwogCisKKy8qIGZ1bmN0aW9ucyBhbmQg dmFyaWFibGVzIGZvciBmZHcgY2hlY2tpbmcuICovCit0eXBlZGVmIHZvaWQgKCpDaGVja2luZ1Jl bW90ZVNlcnZlcnNDYWxsYmFjaykgKHZvaWQgKmFyZyk7Cit0eXBlZGVmIHN0cnVjdCBDaGVja2lu Z1JlbW90ZVNlcnZlcnNDYWxsYmFja0l0ZW0KK3sKKwlzdHJ1Y3QgQ2hlY2tpbmdSZW1vdGVTZXJ2 ZXJzQ2FsbGJhY2tJdGVtICpuZXh0OworCUNoZWNraW5nUmVtb3RlU2VydmVyc0NhbGxiYWNrIGNh bGxiYWNrOworCXZvaWQJCSphcmc7Cit9IENoZWNraW5nUmVtb3RlU2VydmVyc0NhbGxiYWNrSXRl bTsKKworZXh0ZXJuIHZvaWQgUmVnaXN0ZXJDaGVja2luZ1JlbW90ZVNlcnZlcnNDYWxsYmFjayhD aGVja2luZ1JlbW90ZVNlcnZlcnNDYWxsYmFjayBjYWxsYmFjaywgdm9pZCAqYXJnKTsKK2V4dGVy biB2b2lkIENhbGxDaGVja2luZ1JlbW90ZVNlcnZlcnNDYWxsYmFja3Modm9pZCk7CitleHRlcm4g Ym9vbCBIYXZlQ2hlY2tpbmdSZW1vdGVTZXJ2ZXJzQ2FsbGJhY2tzKHZvaWQpOworCitleHRlcm4g aW50IHJlbW90ZV9zZXJ2ZXJzX2Nvbm5lY3Rpb25fY2hlY2tfaW50ZXJ2YWw7CisKICNlbmRpZgkJ CQkJCQkvKiBGT1JFSUdOX0ggKi8KZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL21pc2NhZG1pbi5o IGIvc3JjL2luY2x1ZGUvbWlzY2FkbWluLmgKaW5kZXggOTBhMzAxNjA2NS4uMzc3ZmM2OGFhYSAx MDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvbWlzY2FkbWluLmgKKysrIGIvc3JjL2luY2x1ZGUvbWlz Y2FkbWluLmgKQEAgLTk4LDEwICs5OCwxMyBAQCBleHRlcm4gUEdETExJTVBPUlQgdm9sYXRpbGUg c2lnX2F0b21pY190IExvZ01lbW9yeUNvbnRleHRQZW5kaW5nOwogZXh0ZXJuIFBHRExMSU1QT1JU IHZvbGF0aWxlIHNpZ19hdG9taWNfdCBDaGVja0NsaWVudENvbm5lY3Rpb25QZW5kaW5nOwogZXh0 ZXJuIFBHRExMSU1QT1JUIHZvbGF0aWxlIHNpZ19hdG9taWNfdCBDbGllbnRDb25uZWN0aW9uTG9z dDsKIAorZXh0ZXJuIFBHRExMSU1QT1JUIHZvbGF0aWxlIHNpZ19hdG9taWNfdCBDaGVja2luZ1Jl bW90ZVNlcnZlcnNUaW1lb3V0UGVuZGluZzsKKwogLyogdGhlc2UgYXJlIG1hcmtlZCB2b2xhdGls ZSBiZWNhdXNlIHRoZXkgYXJlIGV4YW1pbmVkIGJ5IHNpZ25hbCBoYW5kbGVyczogKi8KIGV4dGVy biBQR0RMTElNUE9SVCB2b2xhdGlsZSB1aW50MzIgSW50ZXJydXB0SG9sZG9mZkNvdW50OwogZXh0 ZXJuIFBHRExMSU1QT1JUIHZvbGF0aWxlIHVpbnQzMiBRdWVyeUNhbmNlbEhvbGRvZmZDb3VudDsK IGV4dGVybiBQR0RMTElNUE9SVCB2b2xhdGlsZSB1aW50MzIgQ3JpdFNlY3Rpb25Db3VudDsKK2V4 dGVybiBQR0RMTElNUE9SVCB2b2xhdGlsZSB1aW50MzIgQ2hlY2tpbmdSZW1vdGVTZXJ2ZXJzSG9s ZG9mZkNvdW50OwogCiAvKiBpbiB0Y29wL3Bvc3RncmVzLmMgKi8KIGV4dGVybiB2b2lkIFByb2Nl c3NJbnRlcnJ1cHRzKHZvaWQpOwpAQCAtMTI2LDcgKzEyOSw3IEBAIGRvIHsgXAogLyogSXMgUHJv Y2Vzc0ludGVycnVwdHMoKSBndWFyYW50ZWVkIHRvIGNsZWFyIEludGVycnVwdFBlbmRpbmc/ICov CiAjZGVmaW5lIElOVEVSUlVQVFNfQ0FOX0JFX1BST0NFU1NFRCgpIFwKIAkoSW50ZXJydXB0SG9s ZG9mZkNvdW50ID09IDAgJiYgQ3JpdFNlY3Rpb25Db3VudCA9PSAwICYmIFwKLQkgUXVlcnlDYW5j ZWxIb2xkb2ZmQ291bnQgPT0gMCkKKwkgUXVlcnlDYW5jZWxIb2xkb2ZmQ291bnQgPT0gMCAmJiBD aGVja2luZ1JlbW90ZVNlcnZlcnNIb2xkb2ZmQ291bnQgPT0gMCkKIAogI2RlZmluZSBIT0xEX0lO VEVSUlVQVFMoKSAgKEludGVycnVwdEhvbGRvZmZDb3VudCsrKQogCkBAIC0xNTIsNiArMTU1LDEz IEBAIGRvIHsgXAogCUNyaXRTZWN0aW9uQ291bnQtLTsgXAogfSB3aGlsZSgwKQogCisjZGVmaW5l IEhPTERfQ0hFQ0tJTkdfUkVNT1RFX1NFUlZFUlNfSU5URVJSVVBUUygpICAoQ2hlY2tpbmdSZW1v dGVTZXJ2ZXJzSG9sZG9mZkNvdW50KyspCisKKyNkZWZpbmUgUkVTVU1FX0NIRUNLSU5HX1JFTU9U RV9TRVJWRVJTX0lOVEVSUlVQVFMoKSBcCitkbyB7IFwKKwlBc3NlcnQoQ2hlY2tpbmdSZW1vdGVT ZXJ2ZXJzSG9sZG9mZkNvdW50ID4gMCk7IFwKKwlDaGVja2luZ1JlbW90ZVNlcnZlcnNIb2xkb2Zm Q291bnQtLTsgXAorfSB3aGlsZSgwKQogCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKICAqCSAgZ2xv YmFscy5oIC0tCQkJCQkJCQkJCQkJCQkJICoKZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL3V0aWxz L3RpbWVvdXQuaCBiL3NyYy9pbmNsdWRlL3V0aWxzL3RpbWVvdXQuaAppbmRleCAyY2JjNWRlNGQ5 Li5jZWI2YjFjMTJjIDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS91dGlscy90aW1lb3V0LmgKKysr IGIvc3JjL2luY2x1ZGUvdXRpbHMvdGltZW91dC5oCkBAIC0zNCw2ICszNCw3IEBAIHR5cGVkZWYg ZW51bSBUaW1lb3V0SWQKIAlJRExFX1NFU1NJT05fVElNRU9VVCwKIAlDTElFTlRfQ09OTkVDVElP Tl9DSEVDS19USU1FT1VULAogCVNUQVJUVVBfUFJPR1JFU1NfVElNRU9VVCwKKwlDSEVDS0lOR19S RU1PVEVfU0VSVkVSU19USU1FT1VULAogCS8qIEZpcnN0IHVzZXItZGVmaW5hYmxlIHRpbWVvdXQg cmVhc29uICovCiAJVVNFUl9USU1FT1VULAogCS8qIE1heGltdW0gbnVtYmVyIG9mIHRpbWVvdXQg cmVhc29ucyAqLwo= --_003_TYAPR01MB586615734CA7C814364CBA55F5619TYAPR01MB5866jpnp_ Content-Type: application/x-zip-compressed; name="20211124_2.zip" Content-Description: 20211124_2.zip Content-Disposition: attachment; filename="20211124_2.zip"; size=7350; creation-date="Wed, 24 Nov 2021 07:46:42 GMT"; modification-date="Wed, 24 Nov 2021 07:46:42 GMT" Content-Transfer-Encoding: base64 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 nE5XE5tqwWrnhRzq2eZ9nYWeO0ydfTxHyZPRu/f1wMHslry92dCr7FiNsYPb00oEZbFNvZaA9zRF EljdILv5ln9mmaGja9OtyYlEcSI5DQ3dibSks+mb8za9/3hy8rcUTV3E15q+aQ1vtLkj324vZXxX Z69d07CN7ihZAOths1po/VPOna7cG+giubyQmjjXEZRDt/S2LtEYF2g8jggXi1bEII00kEcaDa4K b/P47PT0zYcPZx/astpoNNlanaJyQ8msguBMafRsebNVixBE4nzRfKIdr6SCuO66kj6kn+InrVZL br1hGZwBdVSUs3jtDlpnKPPFB1Lp+fMHr4CePhX5xka4hs7Te3fTcoJ3TVHjT9hnjKmODez0oZSa 30ARK4JUSYe3MAsH7p+/86N04CEiTus3IJNY+/P79epeVzh/9HVds/YO5nuDYHcwDHx/tLc732Xd n+99v2bdU3O/at0TcXVr0Nsbtvsj92kno75UrqoCLcsFzzIks1lufmcHqO2Er1HY2yQliba3UTWs atMvpZ6mpdWStOQBlKFvKoyui1pd0f7iK/BvWqjKIaIVbq4Nd9bdriua9Hlt952HzzlUiynzg9UV nzkuMQpOauv0w/OKSbL2w22uH6vkgyPOsUvE+DwFpO7uqgn2y8fj2hbogiqKFguM+YsQUFziWwmV Kq++WnuSwzOUCbixblUj3OfGY/+JSyf/oDlXMtY2RTs9SK41F+4xAfmoQ97AH/b8gef9H1BLAQIU ABQAAAAIAISFeFMe90+jYAUAAIgMAAAvAAAAAAAAAAEAIAAAAAAAAAB2MDNfMDAwMl9hZGRfaGVs dGhfY2hlY2tfZm9yX3Bvc3RncmVzX2Zkdy5wYXRjaFBLAQIUABQAAAAIAKuFeFOu3eAwkAMAAOIL AAAYAAAAAAAAAAEAIAAAAK0FAAB2MDNfMDAwM19hZGRfdGVzdHMucGF0Y2hQSwECFAAUAAAACACP TkhTwTJV40YJAADxHgAAPQAAAAAAAAABACAAAABzCQAAdjItMDAwMS1BZGQtV0xfU09DS0VUX0NM T1NFRC1mb3Itc29ja2V0LXNodXRkb3duLWV2ZW50cy5wYXRjaFBLAQIUABQAAAAIAJJOSFNVZY6R tAcAAMYQAAA/AAAAAAAAAAEAIAAAABQTAAB2Mi0wMDAyLVVzZS1XTF9TT0NLRVRfQ0xPU0VELWZv ci1jbGllbnRfY29ubmVjdGlvbl9jaGVja18ucGF0Y2hQSwUGAAAAAAQABAB7AQAAJRsAAAAA --_003_TYAPR01MB586615734CA7C814364CBA55F5619TYAPR01MB5866jpnp_--