From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.8 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id C0DEDC4360C for ; Tue, 8 Oct 2019 09:31:12 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 72F19206BB for ; Tue, 8 Oct 2019 09:31:12 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=virtuozzo.com header.i=@virtuozzo.com header.b="gSr6gchB" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 72F19206BB Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=virtuozzo.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:52930 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iHlpn-0001vq-9M for qemu-devel@archiver.kernel.org; Tue, 08 Oct 2019 05:31:11 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:36661) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iHlor-0001Ju-2E for qemu-devel@nongnu.org; Tue, 08 Oct 2019 05:30:14 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iHloo-0004vc-Q1 for qemu-devel@nongnu.org; Tue, 08 Oct 2019 05:30:12 -0400 Received: from mail-eopbgr40093.outbound.protection.outlook.com ([40.107.4.93]:14560 helo=EUR03-DB5-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iHloo-0004tF-3A for qemu-devel@nongnu.org; Tue, 08 Oct 2019 05:30:10 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PhFlzsvlfUYD77UItNfEPum23Zs0omccHUjiytXygNJ8N0aaE/plm/uq29HGsJskmoHg0TfA88FA0nSHM0DCAdyIeGuoACfZtphNMgX86/3f+kAtzt3OXxFJKshYjDF7alSArc97XSxclfOzYz7Exc8+0LWZLOgnY0J2JehlAZoTn8/iJvZmF5LzWCGMk0O3CwASHh4C2j1PNqQCTyww8mZ3rtjNUN6yCJQeYstLz1skofBRs9gcnNfeUseclBCgjlfZBH3X1T/PaO8gqOHywkW62Z/qvL0wNJv/Th9R1tAbb0T7p/buUmhE7Cr8FWYFt5Y4xmoV/bw8tFLbrJwDaw== 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-SenderADCheck; bh=6OZdWCeH/8EyUnGZCWvTlEQkEo2PECjCGf+Me4OGVao=; b=QzjruYqtntQbSBHrYI2q3h7HDYvKCo2kzmquyyt3qOKZcsIadSu7Gp+RKuFRQDC7KbXNisD/zNdsV9uW16qXhCzPIErWWSNZ7mE12Cv3T+qprDnZIP0VrVgHNSNry21aNTIXFbHHZ17AshDQ47A32keAb0/7M3YbsMzrLnco7p/T9SAsuFmU7Jf0AClzzS4hj0MAXnfusPi3lXdcqA1VACUPgwA0O2m/llNqnjtFXHU3gEshViXWW2h13TvqflyVYTGpVjSwBnpxoltuvpxtVdhIcrHI2UbQj/1QPLumb+Ut8LTUvSQVVz30QhaEl4Q4RSV8D/isaDjujPnqjSJy+A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=virtuozzo.com; dmarc=pass action=none header.from=virtuozzo.com; dkim=pass header.d=virtuozzo.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=6OZdWCeH/8EyUnGZCWvTlEQkEo2PECjCGf+Me4OGVao=; b=gSr6gchB2e4gIOF5RYh77g1ETSjiY6QIRmO9FD+HaBEkZoxFuEtYbgKorNR7SpOal24XIHV6iIdM3WNwogdlOtZsbeQTkvZqNmHNzL97fWfe4pust/6qe4igGIz99N2evjzsntxSriMQHUu22SUgH2c+ORrePlWbuSJmYroEENI= Received: from DB8PR08MB5498.eurprd08.prod.outlook.com (52.133.242.216) by DB8PR08MB4027.eurprd08.prod.outlook.com (20.179.9.225) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2327.24; Tue, 8 Oct 2019 09:30:07 +0000 Received: from DB8PR08MB5498.eurprd08.prod.outlook.com ([fe80::2856:990a:197a:288f]) by DB8PR08MB5498.eurprd08.prod.outlook.com ([fe80::2856:990a:197a:288f%2]) with mapi id 15.20.2327.023; Tue, 8 Oct 2019 09:30:07 +0000 From: Vladimir Sementsov-Ogievskiy To: Markus Armbruster Subject: Re: [PATCH v4 01/31] errp: rename errp to errp_in where it is IN-argument Thread-Topic: [PATCH v4 01/31] errp: rename errp to errp_in where it is IN-argument Thread-Index: AQHVeHBgGNp8AunJykKebkfVAuWGs6dQfy49gAAF3wA= Date: Tue, 8 Oct 2019 09:30:07 +0000 Message-ID: <8f936e58-988f-b5af-266d-4230a477ada4@virtuozzo.com> References: <20191001155319.8066-1-vsementsov@virtuozzo.com> <20191001155319.8066-2-vsementsov@virtuozzo.com> <878spvmwns.fsf@dusky.pond.sub.org> In-Reply-To: <878spvmwns.fsf@dusky.pond.sub.org> Accept-Language: ru-RU, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: HE1PR0701CA0067.eurprd07.prod.outlook.com (2603:10a6:3:64::11) To DB8PR08MB5498.eurprd08.prod.outlook.com (2603:10a6:10:11c::24) authentication-results: spf=none (sender IP is ) smtp.mailfrom=vsementsov@virtuozzo.com; x-ms-exchange-messagesentrepresentingtype: 1 x-tagtoolbar-keys: D20191008123004294 x-originating-ip: [185.231.240.5] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 8d04f5c4-386e-4dba-c43a-08d74bd21b5b x-ms-traffictypediagnostic: DB8PR08MB4027: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-forefront-prvs: 01842C458A x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(136003)(396003)(346002)(376002)(366004)(39850400004)(199004)(189003)(6512007)(6486002)(486006)(229853002)(478600001)(6916009)(6246003)(8936002)(8676002)(81156014)(81166006)(6436002)(256004)(14444005)(4326008)(25786009)(5660300002)(2906002)(14454004)(3846002)(6116002)(31686004)(26005)(305945005)(86362001)(54906003)(71200400001)(71190400001)(316002)(66556008)(66446008)(102836004)(66476007)(64756008)(66946007)(99286004)(476003)(446003)(66066001)(76176011)(6506007)(186003)(52116002)(11346002)(31696002)(36756003)(2616005)(386003)(7736002); DIR:OUT; SFP:1102; SCL:1; SRVR:DB8PR08MB4027; H:DB8PR08MB5498.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: virtuozzo.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: nkQ1+BMWg0zIYrFH9PSoqlsz4HjsPuIlvn0U3mDIrknlKpQeBCYp1E2Ygw8CJ/IvCBhbuPthwp+fcbNmnSRwUcVFuctk+UChQREn8zdsvoOG3ijnksA8jX0lBQtParPmvAQfNeW2Zc3EghwmebwqweNWPEiRTucEKCROSj0RRF5sL7lDIuOBCecGSpUh/hpGzBq0P6Z8SiKnLRdSULxoLPkhpDlvlsf/Bml9VMyKYjd/qHlyqDEsnnxTTRyu/mQj0eNNh6+C+Uh5aWMAyh0xrwCWOnTs0vVEJ32FP39bRTEg+E9ss46xcYI4EdjNIosuDmPa7PUmkXK9keY0OSKh9jQpv/cStinT7wuJYZUDv4lASst9cCUIrzJ3VQcgiJ5B/zNyyu4oQIRKjfsak5hhsythXePqqIBccBMXSPRJlrw= x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8d04f5c4-386e-4dba-c43a-08d74bd21b5b X-MS-Exchange-CrossTenant-originalarrivaltime: 08 Oct 2019 09:30:07.1599 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 0nuzXNolJz750LB7SkSwEtl7gw3tpiatNaLbKWA1RAZhFnskhGh/KOsOBGuaAxoti4P//UgJtMkuYhh6isWJFrZRR4o3ujOoi7BGU6AQu/k= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR08MB4027 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 40.107.4.93 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , "qemu-devel@nongnu.org" , "Dr. David Alan Gilbert" , Michael Roth Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" MDguMTAuMjAxOSAxMjowOCwgTWFya3VzIEFybWJydXN0ZXIgd3JvdGU6DQo+IFZsYWRpbWlyIFNl bWVudHNvdi1PZ2lldnNraXkgPHZzZW1lbnRzb3ZAdmlydHVvenpvLmNvbT4gd3JpdGVzOg0KPiAN Cj4+IEVycm9yICoqZXJycCBpcyBhbG1vc3QgYWx3YXlzIE9VVC1hcmd1bWVudDogaXQncyBhc3N1 bWVkIHRvIGJlIE5VTEwsIG9yDQo+PiBwb2ludGVyIHRvIE5VTEwtaW5pdGlhbGl6ZWQgcG9pbnRl ciwgb3IgcG9pbnRlciB0byBlcnJvcl9hYm9ydCBvcg0KPj4gZXJyb3JfZmF0YWwsIGZvciBjYWxs ZWUgdG8gcmVwb3J0IGVycm9yLg0KPiANCj4gWWVzLg0KPiANCj4+IEJ1dCB2ZXJ5IGZldyBmdW5j dGlvbnMgaW5zdGVhZCBnZXQgRXJyb3IgKiplcnJwIGFzIElOLWFyZ3VtZW50Og0KPj4gaXQncyBh c3N1bWVkIHRvIGJlIHNldCwgYW5kIGNhbGxlZSBzaG91bGQgY2xlYW4gaXQuDQo+IA0KPiBXaGF0 IGRvIHlvdSBtZWFuIGJ5ICJjYWxsZWUgc2hvdWxkIGNsZWFuIj8gIExldCdzIHNlZSBiZWxvdy4N Cj4gDQo+PiBJbiBzdWNoIGNhc2VzLCByZW5hbWUgZXJycCB0byBlcnJwX2luLg0KPiANCj4gSSBh Y2tub3dsZWRnZSB0aGF0IGVycnAgYXJndW1lbnRzIHRoYXQgZG9uJ3QgaGF2ZSB0aGUgdXN1YWwg bWVhbmluZyBjYW4NCj4gYmUgY29uZnVzaW5nLg0KPiANCj4gTmFtaW5nIGNhbiBoZWxwLCBjb21t ZW50cyBjYW4gaGVscCwgYnV0IHBlcmhhcHMgd2UgY2FuIHR3ZWFrIHRoZSBjb2RlIHRvDQo+IGF2 b2lkIHRoZSBwcm9ibGVtIGluc3RlYWQuICBMZXQncyBzZWU6DQo+IA0KPj4gU2lnbmVkLW9mZi1i eTogVmxhZGltaXIgU2VtZW50c292LU9naWV2c2tpeSA8dnNlbWVudHNvdkB2aXJ0dW96em8uY29t Pg0KPj4gUmV2aWV3ZWQtYnk6IEVyaWMgQmxha2UgPGVibGFrZUByZWRoYXQuY29tPg0KPj4gLS0t DQo+PiAgIGluY2x1ZGUvbW9uaXRvci9obXAuaCB8ICAyICstDQo+PiAgIGluY2x1ZGUvcWFwaS9l cnJvci5oICB8ICAyICstDQo+PiAgIHVpL3ZuYy5oICAgICAgICAgICAgICB8ICAyICstDQo+PiAg IG1vbml0b3IvaG1wLWNtZHMuYyAgICB8ICA4ICsrKystLS0tDQo+PiAgIHVpL3ZuYy5jICAgICAg ICAgICAgICB8IDEwICsrKysrLS0tLS0NCj4+ICAgdXRpbC9lcnJvci5jICAgICAgICAgIHwgIDgg KysrKy0tLS0NCj4+ICAgNiBmaWxlcyBjaGFuZ2VkLCAxNiBpbnNlcnRpb25zKCspLCAxNiBkZWxl dGlvbnMoLSkNCj4+DQo+PiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9tb25pdG9yL2htcC5oIGIvaW5j bHVkZS9tb25pdG9yL2htcC5oDQo+PiBpbmRleCBhMGU5NTExNDQwLi5mOTI5ODE0ZjFhIDEwMDY0 NA0KPj4gLS0tIGEvaW5jbHVkZS9tb25pdG9yL2htcC5oDQo+PiArKysgYi9pbmNsdWRlL21vbml0 b3IvaG1wLmgNCj4+IEBAIC0xNiw3ICsxNiw3IEBADQo+PiAgIA0KPj4gICAjaW5jbHVkZSAicWVt dS9yZWFkbGluZS5oIg0KPj4gICANCj4+IC12b2lkIGhtcF9oYW5kbGVfZXJyb3IoTW9uaXRvciAq bW9uLCBFcnJvciAqKmVycnApOw0KPj4gK3ZvaWQgaG1wX2hhbmRsZV9lcnJvcihNb25pdG9yICpt b24sIEVycm9yICoqZXJycF9pbik7DQo+PiAgIA0KPj4gICB2b2lkIGhtcF9pbmZvX25hbWUoTW9u aXRvciAqbW9uLCBjb25zdCBRRGljdCAqcWRpY3QpOw0KPj4gICB2b2lkIGhtcF9pbmZvX3ZlcnNp b24oTW9uaXRvciAqbW9uLCBjb25zdCBRRGljdCAqcWRpY3QpOw0KPj4gZGlmZiAtLWdpdCBhL2lu Y2x1ZGUvcWFwaS9lcnJvci5oIGIvaW5jbHVkZS9xYXBpL2Vycm9yLmgNCj4+IGluZGV4IDNmOTUx NDFhMDEuLjkzNzZmNTljMzUgMTAwNjQ0DQo+PiAtLS0gYS9pbmNsdWRlL3FhcGkvZXJyb3IuaA0K Pj4gKysrIGIvaW5jbHVkZS9xYXBpL2Vycm9yLmgNCj4+IEBAIC0yODMsNyArMjgzLDcgQEAgdm9p ZCBlcnJvcl9mcmVlKEVycm9yICplcnIpOw0KPj4gICAvKg0KPj4gICAgKiBDb252ZW5pZW5jZSBm dW5jdGlvbiB0byBhc3NlcnQgdGhhdCAqQGVycnAgaXMgc2V0LCB0aGVuIHNpbGVudGx5IGZyZWUg aXQuDQo+PiAgICAqLw0KPj4gLXZvaWQgZXJyb3JfZnJlZV9vcl9hYm9ydChFcnJvciAqKmVycnAp Ow0KPj4gK3ZvaWQgZXJyb3JfZnJlZV9vcl9hYm9ydChFcnJvciAqKmVycnBfaW4pOw0KPj4gICAN Cj4+ICAgLyoNCj4+ICAgICogQ29udmVuaWVuY2UgZnVuY3Rpb24gdG8gd2Fybl9yZXBvcnQoKSBh bmQgZnJlZSBAZXJyLg0KPj4gZGlmZiAtLWdpdCBhL3VpL3ZuYy5oIGIvdWkvdm5jLmgNCj4+IGlu ZGV4IGZlYTc5YzJmYzkuLjAwZTBiNDhmMmYgMTAwNjQ0DQo+PiAtLS0gYS91aS92bmMuaA0KPj4g KysrIGIvdWkvdm5jLmgNCj4+IEBAIC01NDcsNyArNTQ3LDcgQEAgdWludDMyX3QgcmVhZF91MzIo dWludDhfdCAqZGF0YSwgc2l6ZV90IG9mZnNldCk7DQo+PiAgIA0KPj4gICAvKiBQcm90b2NvbCBz dGFnZSBmdW5jdGlvbnMgKi8NCj4+ICAgdm9pZCB2bmNfY2xpZW50X2Vycm9yKFZuY1N0YXRlICp2 cyk7DQo+PiAtc2l6ZV90IHZuY19jbGllbnRfaW9fZXJyb3IoVm5jU3RhdGUgKnZzLCBzc2l6ZV90 IHJldCwgRXJyb3IgKiplcnJwKTsNCj4+ICtzaXplX3Qgdm5jX2NsaWVudF9pb19lcnJvcihWbmNT dGF0ZSAqdnMsIHNzaXplX3QgcmV0LCBFcnJvciAqKmVycnBfaW4pOw0KPj4gICANCj4+ICAgdm9p ZCBzdGFydF9jbGllbnRfaW5pdChWbmNTdGF0ZSAqdnMpOw0KPj4gICB2b2lkIHN0YXJ0X2F1dGhf dm5jKFZuY1N0YXRlICp2cyk7DQo+PiBkaWZmIC0tZ2l0IGEvbW9uaXRvci9obXAtY21kcy5jIGIv bW9uaXRvci9obXAtY21kcy5jDQo+PiBpbmRleCBiMjU1MWMxNmQxLi45NDFkNWQwYTQ1IDEwMDY0 NA0KPj4gLS0tIGEvbW9uaXRvci9obXAtY21kcy5jDQo+PiArKysgYi9tb25pdG9yL2htcC1jbWRz LmMNCj4+IEBAIC02MCwxMSArNjAsMTEgQEANCj4+ICAgI2luY2x1ZGUgPHNwaWNlL2VudW1zLmg+ DQo+PiAgICNlbmRpZg0KPj4gICANCj4+IC12b2lkIGhtcF9oYW5kbGVfZXJyb3IoTW9uaXRvciAq bW9uLCBFcnJvciAqKmVycnApDQo+PiArdm9pZCBobXBfaGFuZGxlX2Vycm9yKE1vbml0b3IgKm1v biwgRXJyb3IgKiplcnJwX2luKQ0KPj4gICB7DQo+PiAtICAgIGFzc2VydChlcnJwKTsNCj4+IC0g ICAgaWYgKCplcnJwKSB7DQo+PiAtICAgICAgICBlcnJvcl9yZXBvcnRmX2VycigqZXJycCwgIkVy cm9yOiAiKTsNCj4+ICsgICAgYXNzZXJ0KGVycnBfaW4pOw0KPj4gKyAgICBpZiAoKmVycnBfaW4p IHsNCj4+ICsgICAgICAgIGVycm9yX3JlcG9ydGZfZXJyKCplcnJwX2luLCAiRXJyb3I6ICIpOw0K Pj4gICAgICAgfQ0KPj4gICB9DQo+IA0KPiBUaGlzIGZ1bmN0aW9ucyBmcmVlcyB0aGUgZXJyb3Iu ICBJdCBsZWF2ZXMgbm90aGluZyBmb3IgdGhlIGNhbGxlciB0bw0KPiBjbGVhbiB1cC4NCj4gDQo+ IEFsbCBjYWxsZXJzIHBhc3MgJkVSUiwgd2hlcmUgRVJSIGlzIGEgbG9jYWwgdmFyaWFibGUuICBQ ZXJoYXBzIGEgbW9yZQ0KPiByb2J1c3Qgd2F5IHRvIHNpZ25hbCAiQGVycnAgaXMgbm90IHRoZSB1 c3VhbCBvdXQtYXJndW1lbnQiIHdvdWxkIGJlDQo+IHBlZWxpbmcgb2ZmIGFuIGluZGlyZWN0aW9u OiBwYXNzIEVSUiwgZHJvcCB0aGUgYXNzZXJ0aW9uLg0KPiANCj4+ICAgDQo+PiBkaWZmIC0tZ2l0 IGEvdWkvdm5jLmMgYi91aS92bmMuYw0KPj4gaW5kZXggODdiODA0NWFmZS4uOWQ2Mzg0ZDliMSAx MDA2NDQNCj4+IC0tLSBhL3VpL3ZuYy5jDQo+PiArKysgYi91aS92bmMuYw0KPj4gQEAgLTEzMTIs NyArMTMxMiw3IEBAIHZvaWQgdm5jX2Rpc2Nvbm5lY3RfZmluaXNoKFZuY1N0YXRlICp2cykNCj4+ ICAgICAgIGdfZnJlZSh2cyk7DQo+PiAgIH0NCj4+ICAgDQo+PiAtc2l6ZV90IHZuY19jbGllbnRf aW9fZXJyb3IoVm5jU3RhdGUgKnZzLCBzc2l6ZV90IHJldCwgRXJyb3IgKiplcnJwKQ0KPj4gK3Np emVfdCB2bmNfY2xpZW50X2lvX2Vycm9yKFZuY1N0YXRlICp2cywgc3NpemVfdCByZXQsIEVycm9y ICoqZXJycF9pbikNCj4+ICAgew0KPj4gICAgICAgaWYgKHJldCA8PSAwKSB7DQo+PiAgICAgICAg ICAgaWYgKHJldCA9PSAwKSB7DQo+PiBAQCAtMTMyMCwxNCArMTMyMCwxNCBAQCBzaXplX3Qgdm5j X2NsaWVudF9pb19lcnJvcihWbmNTdGF0ZSAqdnMsIHNzaXplX3QgcmV0LCBFcnJvciAqKmVycnAp DQo+PiAgICAgICAgICAgICAgIHZuY19kaXNjb25uZWN0X3N0YXJ0KHZzKTsNCj4+ICAgICAgICAg ICB9IGVsc2UgaWYgKHJldCAhPSBRSU9fQ0hBTk5FTF9FUlJfQkxPQ0spIHsNCj4+ICAgICAgICAg ICAgICAgdHJhY2Vfdm5jX2NsaWVudF9pb19lcnJvcih2cywgdnMtPmlvYywNCj4+IC0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycnAgPyBlcnJvcl9nZXRfcHJldHR5KCpl cnJwKSA6DQo+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJwX2lu ID8gZXJyb3JfZ2V0X3ByZXR0eSgqZXJycF9pbikgOg0KPj4gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICJVbmtub3duIik7DQo+PiAgICAgICAgICAgICAgIHZuY19kaXNj b25uZWN0X3N0YXJ0KHZzKTsNCj4+ICAgICAgICAgICB9DQo+PiAgIA0KPj4gLSAgICAgICAgaWYg KGVycnApIHsNCj4+IC0gICAgICAgICAgICBlcnJvcl9mcmVlKCplcnJwKTsNCj4+IC0gICAgICAg ICAgICAqZXJycCA9IE5VTEw7DQo+PiArICAgICAgICBpZiAoZXJycF9pbikgew0KPj4gKyAgICAg ICAgICAgIGVycm9yX2ZyZWUoKmVycnBfaW4pOw0KPj4gKyAgICAgICAgICAgICplcnJwX2luID0g TlVMTDsNCj4+ICAgICAgICAgICB9DQo+PiAgICAgICAgICAgcmV0dXJuIDA7DQo+PiAgICAgICB9 DQo+IA0KPiBUaGlzIGZ1bmN0aW9uIGlzbid0IHRyaXZpYWwsIGFuZCBsYWNrcyBhIGNvbnRyYWN0 LCBzbyBsZXQncyBmaWd1cmUgb3V0DQo+IHdoYXQgaXQgZG9lcyBhbmQgaG93IGl0J3MgdXNlZC4N Cj4gDQo+IEByZXQgY2FuIGJlOg0KPiANCj4gKiBaZXJvDQo+IA0KPiAgICBUcmFjZSBFT0YsIGNh bGwgdm5jX2Rpc2Nvbm5lY3Rfc3RhcnQoKSwgZnJlZSB0aGUgZXJyb3IsIHJldHVybiB6ZXJvLg0K PiANCj4gICAgQXNpZGU6IGZyZWVpbmcgdGhlIGVycm9yIHdpdGhvdXQgbG9va2luZyBhdCBpdCBm ZWVscyBvZGQuICBDYW4gdGhpcw0KPiAgICBoYXBwZW4/DQo+IA0KPiAqIE5lZ2F0aXZlIG90aGVy IHRoYW4gUUlPX0NIQU5ORUxfRVJSX0JMT0NLDQo+IA0KPiAgICBUcmFjZSB0aGUgZXJyb3IgaWYg YW55LCBlbHNlICJVbmtub3duIiBlcnJvciwgY2FsbA0KPiAgICB2bmNfZGlzY29ubmVjdF9zdGFy dCgpLCBmcmVlIHRoZSBlcnJvciBpZiBhbnksIHJldHVybiB6ZXJvLg0KPiANCj4gICAgTm90ZSB0 aGF0IHdlIGNhbid0IGhhdmUgZXJycCAmJiAhKmVycnAgaGVyZSwgb3IgZWxzZSB0cmFjaW5nIGNy YXNoZXMNCj4gICAgaW4gZXJyb3JfZ2V0X3ByZXR0eSgpLg0KPiANCj4gKiBRSU9fQ0hBTk5FTF9F UlJfQkxPQ0sNCj4gDQo+ICAgIEZyZWUgdGhlIGVycm9yLCByZXR1cm4gemVybw0KPiANCj4gKiBQ b3NpdGl2ZQ0KPiANCj4gICAgRG8gbm90aGluZywgcmV0dXJuIEByZXQNCj4gDQo+IENhbGxlcnMg cGFzcyBvbmUgb2YgdGhlIGZvbGxvd2luZzoNCj4gDQo+ICogcmV0ID0gLTEgYW5kIGVycnAgPSBO VUxMDQo+IA0KPiAgICBUaGlzIHVzZXMgY2FzZSAiTmVnYXRpdmUgb3RoZXIgdGhhbiBRSU9fQ0hB Tk5FTF9FUlJfQkxPQ0siLiAgU2luY2UNCj4gICAgZXJyb3IgaXMgbnVsbCwgaXQgdHJhY2VzIGFu ICJVbmtub3duIiBlcnJvci4NCj4gDQo+ICogcmV0IGFuZCAmZXJyLCB3aGVyZSByZXQgPSBGVU4o Li4uLCAmZXJyKSwgYW5kIEZVTiBpcw0KPiAgICBxaW9fY2hhbm5lbF9yZWFkKCkgb3IgcWlvX2No YW5uZWxfd3JpdGUoKS4NCj4gDQo+ICAgIHFpb19jaGFubmVsX3JlYWQoKSwgX3dyaXRlKCkgYXJl IGRvY3VtZW50ZWQgdG8gcmV0dXJuIG5vbi1uZWdhdGl2ZSBvbg0KPiAgICBzdWNjZXNzLCBRSU9f Q0hBTk5FTF9FUlJfQkxPQ0sgb24gIndvdWxkIGJsb2NrIiwgYW5kIC0xIG9uIG90aGVyDQo+ICAg IGVycm9yLiAgQnkgY29udmVudGlvbiwgdGhleSBzZXQgYW4gZXJyb3IgZXhhY3RseSB3aGVuIHRo ZXkgZmFpbCwNCj4gICAgaS5lLiB3aGVuIHRoZXkgcmV0dXJuIGEgbmVnYXRpdmUgdmFsdWUuDQo+ IA0KPiAgICBXaGVuIHFpb19jaGFubmVsX3JlYWQoKSAvIF93cml0ZSgpIHN1Y2NlZWQsIHdlIHVz ZSBjYXNlICJQb3NpdGl2ZSIgb3INCj4gICAgIlplcm8iLiAgV2UgZG9uJ3QgZnJlZSB0aGUgZXJy b3IsIHdoaWNoIGlzIGZpbmUsIGFzIG5vbmUgd2FzIHJldHVybmVkLg0KPiAgICBBc2lkZTogSSAq Z3Vlc3MqIHRoZSBjaGFubmVsIGlzIG5vbi1ibG9ja2luZywgYW5kICJ6ZXJvIiBjYW4gaGFwcGVu DQo+ICAgIG9ubHkgd2hlbiByZWFkIGhpdHMgRU9GLg0KPiANCj4gICAgV2hlbiBxaW9fY2hhbm5l bF9yZWFkKCkgLyBfd3JpdGUoKSBmYWlsLCB3ZSB1c2Ugb25lIG9mIHRoZSBlcnJvcg0KPiAgICBj YXNlcy4NCj4gDQo+IExvb2tzIGxpa2Ugdm5jX2NsaWVudF9pb19lcnJvcigpIHRha2VzIGFuIGVy cm9yIGNvZGUgQHJldCBhbmQgYW4NCj4gb3B0aW9uYWwgZXJyb3Igb2JqZWN0IGluIEBlcnJwIHdp dGggYWRkaXRpb25hbCBkZXRhaWxzLiAgSWYgQHJldCBpcw0KPiBub24tbmVnYXRpdmUsIEBlcnJw IG11c3QgYmUgbnVsbCBvciBwb2ludCB0byBudWxsLiAgSWYgQHJldCBpcyBuZWdhdGl2ZSwNCj4g QGVycnAgbXVzdCBiZSBudWxsIG9yIHBvaW50IHRvIG5vbi1udWxsLg0KPiANCj4gdm5jX2NsaWVu dF9pb19lcnJvcigpIGZyZWVzIHRoZSBlcnJvci4gIEl0IGxlYXZlcyBub3RoaW5nIGZvciB0aGUg Y2FsbGVyDQo+IHRvIGNsZWFuIHVwLg0KPiANCj4gSSB0aGluayB3ZSBjYW4gYWdhaW4gcGVlbCBv ZmYgYW4gaW5kaXJlY3Rpb24uICBUaGUgdHdvIGtpbmRzIG9mIGNhbGxzDQo+IGJlY29tZToNCj4g DQo+ICogcmV0ID0gLTEgYW5kIGVyciA9IE5VTEwNCj4gDQo+ICAgIE5vIHRleHR1YWwgY2hhbmdl LCBidXQgdGhlIE5VTEwgZ2V0cyBjb252ZXJ0ZWQgdG8gRXJyb3IgKiBpbnN0ZWFkIG9mDQo+ICAg IEVycm9yICoqLg0KPiANCj4gKiByZXQgYW5kIGVycg0KPiANCj4gICAgUGFzcyB0aGUgKHBvc3Np Ymx5IG51bGwpIGVycm9yIG9iamVjdCBpbnN0ZWFkIG9mIGEgcG9pbnRlciB0byB0aGUNCj4gICAg bG9jYWwgdmFyaWFibGUuDQo+IA0KPj4gZGlmZiAtLWdpdCBhL3V0aWwvZXJyb3IuYyBiL3V0aWwv ZXJyb3IuYw0KPj4gaW5kZXggZDQ1MzJjZTMxOC4uYjNmZjM4MzJkNiAxMDA2NDQNCj4+IC0tLSBh L3V0aWwvZXJyb3IuYw0KPj4gKysrIGIvdXRpbC9lcnJvci5jDQo+PiBAQCAtMjcxLDExICsyNzEs MTEgQEAgdm9pZCBlcnJvcl9mcmVlKEVycm9yICplcnIpDQo+PiAgICAgICB9DQo+PiAgIH0NCj4+ ICAgDQo+PiAtdm9pZCBlcnJvcl9mcmVlX29yX2Fib3J0KEVycm9yICoqZXJycCkNCj4+ICt2b2lk IGVycm9yX2ZyZWVfb3JfYWJvcnQoRXJyb3IgKiplcnJwX2luKQ0KPj4gICB7DQo+PiAtICAgIGFz c2VydChlcnJwICYmICplcnJwKTsNCj4+IC0gICAgZXJyb3JfZnJlZSgqZXJycCk7DQo+PiAtICAg ICplcnJwID0gTlVMTDsNCj4+ICsgICAgYXNzZXJ0KGVycnBfaW4gJiYgKmVycnBfaW4pOw0KPj4g KyAgICBlcnJvcl9mcmVlKCplcnJwX2luKTsNCj4+ICsgICAgKmVycnBfaW4gPSBOVUxMOw0KPj4g ICB9DQo+PiAgIA0KPj4gICB2b2lkIGVycm9yX3Byb3BhZ2F0ZShFcnJvciAqKmRzdF9lcnJwLCBF cnJvciAqbG9jYWxfZXJyKQ0KPiANCj4gVGhpcyBmdW5jdGlvbnMgZnJlZXMgdGhlIGVycm9yLiAg SXQgbGVhdmVzIG5vdGhpbmcgZm9yIHRoZSBjYWxsZXIgdG8NCj4gY2xlYW4gdXAuDQo+IA0KPiBB bGwgY2FsbGVycyBwYXNzICZFUlIsIHdoZXJlIEVSUiBpcyBhIGxvY2FsIHZhcmlhYmxlLiAgV2Ug Y2FuIHBlZWwgb2ZmDQo+IGFuIGluZGlyZWN0aW9uLg0KPiANCj4gDQo+IEkgZmlndXJlIHlvdXIg Y29tbWl0IG1lc3NhZ2UncyAiQnV0IHZlcnkgZmV3IGZ1bmN0aW9ucyBpbnN0ZWFkIGdldCBFcnJv cg0KPiAqKmVycnAgYXMgSU4tYXJndW1lbnQ6IGl0J3MgYXNzdW1lZCB0byBiZSBzZXQsIGFuZCBj YWxsZWUgc2hvdWxkIGNsZWFuDQo+IGl0IiBpcyB0byBiZSByZWFkIGFzICJhIGZldyBmdW5jdGlv bnMgdGFrZSBFcnJvciAqKmVycnAgYXMgSU4tYXJndW1lbnQsDQo+IGFuZCBmcmVlIGl0Ii4NCj4g DQo+IFlvdSBmb3VuZCB0aHJlZSBpbnN0YW5jZXMgb2YgY29uZnVzaW5nIEVycm9yICoqZXJycC4g IEhvdz8gIEknbSBhc2tpbmcNCj4gYmVjYXVzZSBJIHdvbmRlciB3aGV0aGVyIHRoZXJlIGFyZSBt b3JlLg0KDQpJIGRvbicgcmVtZW1iZXIgZXhhY3RseSwgYnV0IGFzc3VtZSB0aGF0IEkgZm91bmQg dGhlbSBieSBjb21waWxhdGlvbiBlcnJvcnMNCmFmdGVyIGF1dG9tYXRpYyBjb252ZXJzaW9uLg0K DQo+IA0KPiBXZSBjYW4gYXZvaWQgdGhlIGNvbmZ1c2luZyBFcnJvciAqKmVycnAgaW4gYWxsIHRo cmVlIGNhc2VzIGJ5IHBlZWxpbmcNCj4gb2ZmIGFuIGluZGlyZWN0aW9uLiAgV2hhdCBkbyB5b3Ug dGhpbms/DQo+IA0KDQpJIGxpa2UgdGhlIGlkZWEsIHRoYW5rcyEgSSB0aGluaywgSSdsbCB0cnkg dG8gbWFrZSBhIHBhdGNoLg0KDQpCdXQgeW91IGFyZSByaWdodCwgdW5mb3J0dW5hdGVseSB0aGVy ZSBtb3JlIGNhc2VzLCBhdCBsZWFzdCwgcG9pbnRlZCBieQ0KR3JlZw0KDQplcnJvcl9hcHBlbmRf c29ja2V0X3NvY2tmZF9oaW50IGFuZA0KZXJyb3JfYXBwZW5kX3NlY3VyaXR5X21vZGVsX2hpbnQN Cg0KV2hpY2ggZG9uJ3QgZnJlZSBlcnJvci4uIEJ1dCBpZiB0aGV5IGFwcGVuZCBoaW50LCB0aGV5 IHNob3VsZCBhbHdheXMgYmUgY2FsbGVkDQpvbiB3cmFwcGVkIGVycnAsIGFjY29yZGluZ2x5IHRv IHRoZSBwcm9ibGVtIGFib3V0IGZhdGFsX2Vycm9yLCBzbyB0aGV5IG1heQ0KYmUgY29udmVydGVk IHRvIEVycm9yICplcnIgdG9vLi4gSG1tLCBJIHNob3VsZCB0aGluayBhYm91dCB0aGUgc2NyaXB0 IHRvIGZpbmQNCnN1Y2ggZnVuY3Rpb25zLg0KDQotLSANCkJlc3QgcmVnYXJkcywNClZsYWRpbWly DQo=