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=-9.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,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 62F7DC4727E for ; Wed, 30 Sep 2020 10:24:16 +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 BBB842074A for ; Wed, 30 Sep 2020 10:24:15 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b="f32RXkvQ" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org BBB842074A Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:42336 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kNZHS-0001H1-Km for qemu-devel@archiver.kernel.org; Wed, 30 Sep 2020 06:24:14 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:43824) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kNZ7U-0003Tx-98 for qemu-devel@nongnu.org; Wed, 30 Sep 2020 06:13:56 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:32847) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kNZ7R-00063U-Ur for qemu-devel@nongnu.org; Wed, 30 Sep 2020 06:13:55 -0400 Dkim-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1601460833; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=xcWdqUtNzLbZiUblwpb+EnHbc8XTZYiDIUnt4Bj23xw=; b=f32RXkvQJUfuzcyLrEPHRa+UETofqCUs3DAtmjsgTQbUdiHKY/md/nXmTUaqeSaIOmfSly dj0N26p5VtxPbG5i3DK4AMV3gKQr/twneRC4I+/rNvKgG+Q84onUB7Iz8sUnLi2qrDXmhJ yrAWubI5lllZ2SyOP5QAjnL0LLciTlE= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-433-ApRgV9w_P_-4iVyV93ztlg-1; Wed, 30 Sep 2020 06:13:51 -0400 X-MC-Unique: ApRgV9w_P_-4iVyV93ztlg-1 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id EB41E1007466; Wed, 30 Sep 2020 10:13:49 +0000 (UTC) Received: from localhost (ovpn-114-33.ams2.redhat.com [10.36.114.33]) by smtp.corp.redhat.com (Postfix) with ESMTP id 673B973678; Wed, 30 Sep 2020 10:13:49 +0000 (UTC) From: Stefan Hajnoczi To: Peter Maydell , qemu-devel@nongnu.org Subject: [PULL 09/17] block: declare some coroutine functions in block/coroutines.h Date: Wed, 30 Sep 2020 11:12:57 +0100 Message-Id: <20200930101305.305302-10-stefanha@redhat.com> In-Reply-To: <20200930101305.305302-1-stefanha@redhat.com> References: <20200930101305.305302-1-stefanha@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=stefanha@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: base64 Received-SPF: pass client-ip=216.205.24.124; envelope-from=stefanha@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/09/30 00:26:33 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.687, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action 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: Kevin Wolf , Fam Zheng , Vladimir Sementsov-Ogievskiy , Eduardo Habkost , qemu-block@nongnu.org, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Max Reitz , Stefan Hajnoczi , Cleber Rosa Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" RnJvbTogVmxhZGltaXIgU2VtZW50c292LU9naWV2c2tpeSA8dnNlbWVudHNvdkB2aXJ0dW96em8u Y29tPgoKV2UgYXJlIGdvaW5nIHRvIGtlZXAgY29yb3V0aW5lLXdyYXBwZXJzIGNvZGUgKHN0cnVj dHVyZS1wYWNraW5nCnBhcmFtZXRlcnMsIEJEUlZfUE9MTCB3cmFwcGVyIGZ1bmN0aW9ucykgaW4g c2VwYXJhdGUgYXV0by1nZW5lcmF0ZWQKZmlsZXMuIFNvLCB3ZSdsbCBuZWVkIGEgaGVhZGVyIHdp dGggZGVjbGFyYXRpb24gb2Ygb3JpZ2luYWwgX2NvXwpmdW5jdGlvbnMsIGZvciB0aG9zZSB3aGlj aCBhcmUgc3RhdGljIG5vdy4gQXMgd2VsbCwgd2UnbGwgbmVlZApkZWNsYXJhdGlvbnMgZm9yIHdy YXBwZXIgZnVuY3Rpb25zLiBEbyB0aGVzZSBkZWNsYXJhdGlvbnMgbm93LCBhcyBhCnByZXBhcmF0 aW9uIHN0ZXAuCgpTaWduZWQtb2ZmLWJ5OiBWbGFkaW1pciBTZW1lbnRzb3YtT2dpZXZza2l5IDx2 c2VtZW50c292QHZpcnR1b3p6by5jb20+ClNpZ25lZC1vZmYtYnk6IFN0ZWZhbiBIYWpub2N6aSA8 c3RlZmFuaGFAcmVkaGF0LmNvbT4KUmV2aWV3ZWQtYnk6IEVyaWMgQmxha2UgPGVibGFrZUByZWRo YXQuY29tPgpSZXZpZXdlZC1ieTogUGhpbGlwcGUgTWF0aGlldS1EYXVkw6kgPHBoaWxtZEByZWRo YXQuY29tPgpSZXZpZXdlZC1ieTogU3RlZmFuIEhham5vY3ppIDxzdGVmYW5oYUByZWRoYXQuY29t PgpNZXNzYWdlLUlkOiA8MjAyMDA5MjQxODU0MTQuMjg2NDItNC12c2VtZW50c292QHZpcnR1b3p6 by5jb20+Ci0tLQogYmxvY2svY29yb3V0aW5lcy5oIHwgNjcgKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKwogYmxvY2suYyAgICAgICAgICAgIHwgIDggKysrLS0t CiBibG9jay9pby5jICAgICAgICAgfCAzNCArKysrKysrKysrKy0tLS0tLS0tLS0tLQogMyBmaWxl cyBjaGFuZ2VkLCA4OCBpbnNlcnRpb25zKCspLCAyMSBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2Rl IDEwMDY0NCBibG9jay9jb3JvdXRpbmVzLmgKCmRpZmYgLS1naXQgYS9ibG9jay9jb3JvdXRpbmVz LmggYi9ibG9jay9jb3JvdXRpbmVzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw MDAwMC4uOWNlMTczMGEwOQotLS0gL2Rldi9udWxsCisrKyBiL2Jsb2NrL2Nvcm91dGluZXMuaApA QCAtMCwwICsxLDY3IEBACisvKgorICogQmxvY2sgbGF5ZXIgSS9PIGZ1bmN0aW9ucworICoKKyAq IENvcHlyaWdodCAoYykgMjAwMyBGYWJyaWNlIEJlbGxhcmQKKyAqCisgKiBQZXJtaXNzaW9uIGlz IGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcg YSBjb3B5CisgKiBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24g ZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwgdG8gZGVhbAorICogaW4gdGhlIFNvZnR3YXJlIHdpdGhv dXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwor ICogdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJs aWNlbnNlLCBhbmQvb3Igc2VsbAorICogY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBl cm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzCisgKiBmdXJuaXNoZWQgdG8gZG8g c28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgorICoKKyAqIFRoZSBhYm92 ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGlu Y2x1ZGVkIGluCisgKiBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBT b2Z0d2FyZS4KKyAqCisgKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9V VCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgorICogSU1QTElFRCwgSU5DTFVESU5H IEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCisg KiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJ TiBOTyBFVkVOVCBTSEFMTAorICogVEhFIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUg TElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKKyAqIExJQUJJTElUWSwgV0hF VEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5H IEZST00sCisgKiBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBU SEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOCisgKiBUSEUgU09GVFdBUkUuCisgKi8KKworI2lm bmRlZiBCTE9DS19DT1JPVVRJTkVTX0lOVF9ICisjZGVmaW5lIEJMT0NLX0NPUk9VVElORVNfSU5U X0gKKworI2luY2x1ZGUgImJsb2NrL2Jsb2NrX2ludC5oIgorCitpbnQgY29yb3V0aW5lX2ZuIGJk cnZfY29fY2hlY2soQmxvY2tEcml2ZXJTdGF0ZSAqYnMsCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgQmRydkNoZWNrUmVzdWx0ICpyZXMsIEJkcnZDaGVja01vZGUgZml4KTsKK2ludCBj b3JvdXRpbmVfZm4gYmRydl9jb19pbnZhbGlkYXRlX2NhY2hlKEJsb2NrRHJpdmVyU3RhdGUgKmJz LCBFcnJvciAqKmVycnApOworCitpbnQgY29yb3V0aW5lX2ZuCitiZHJ2X2NvX3Byd3YoQmRydkNo aWxkICpjaGlsZCwgaW50NjRfdCBvZmZzZXQsIFFFTVVJT1ZlY3RvciAqcWlvdiwKKyAgICAgICAg ICAgICBib29sIGlzX3dyaXRlLCBCZHJ2UmVxdWVzdEZsYWdzIGZsYWdzKTsKK2ludAorYmRydl9w cnd2KEJkcnZDaGlsZCAqY2hpbGQsIGludDY0X3Qgb2Zmc2V0LCBRRU1VSU9WZWN0b3IgKnFpb3Ys CisgICAgICAgICAgYm9vbCBpc193cml0ZSwgQmRydlJlcXVlc3RGbGFncyBmbGFncyk7CisKK2lu dCBjb3JvdXRpbmVfZm4KK2JkcnZfY29fY29tbW9uX2Jsb2NrX3N0YXR1c19hYm92ZShCbG9ja0Ry aXZlclN0YXRlICpicywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCbG9ja0Ry aXZlclN0YXRlICpiYXNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wg d2FudF96ZXJvLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludDY0X3Qgb2Zm c2V0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludDY0X3QgYnl0ZXMsCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50NjRfdCAqcG51bSwKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQ2NF90ICptYXAsCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgQmxvY2tEcml2ZXJTdGF0ZSAqKmZpbGUpOworaW50CitiZHJ2X2Nv bW1vbl9ibG9ja19zdGF0dXNfYWJvdmUoQmxvY2tEcml2ZXJTdGF0ZSAqYnMsCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgQmxvY2tEcml2ZXJTdGF0ZSAqYmFzZSwKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBib29sIHdhbnRfemVybywKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBpbnQ2NF90IG9mZnNldCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBpbnQ2NF90IGJ5dGVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludDY0X3Qg KnBudW0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50NjRfdCAqbWFwLAorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJsb2NrRHJpdmVyU3RhdGUgKipmaWxlKTsKKwor aW50IGNvcm91dGluZV9mbgorYmRydl9jb19yd192bXN0YXRlKEJsb2NrRHJpdmVyU3RhdGUgKmJz LCBRRU1VSU9WZWN0b3IgKnFpb3YsIGludDY0X3QgcG9zLAorICAgICAgICAgICAgICAgICAgIGJv b2wgaXNfcmVhZCk7CitpbnQKK2JkcnZfcndfdm1zdGF0ZShCbG9ja0RyaXZlclN0YXRlICpicywg UUVNVUlPVmVjdG9yICpxaW92LCBpbnQ2NF90IHBvcywKKyAgICAgICAgICAgICAgICBib29sIGlz X3JlYWQpOworCisjZW5kaWYgLyogQkxPQ0tfQ09ST1VUSU5FU19JTlRfSCAqLwpkaWZmIC0tZ2l0 IGEvYmxvY2suYyBiL2Jsb2NrLmMKaW5kZXggNDgyOWM4YWM0Ny4uNTE3YTQyNTM0MCAxMDA2NDQK LS0tIGEvYmxvY2suYworKysgYi9ibG9jay5jCkBAIC00OCw2ICs0OCw3IEBACiAjaW5jbHVkZSAi cWVtdS90aW1lci5oIgogI2luY2x1ZGUgInFlbXUvY3V0aWxzLmgiCiAjaW5jbHVkZSAicWVtdS9p ZC5oIgorI2luY2x1ZGUgImJsb2NrL2Nvcm91dGluZXMuaCIKIAogI2lmZGVmIENPTkZJR19CU0QK ICNpbmNsdWRlIDxzeXMvaW9jdGwuaD4KQEAgLTQ2NzYsOCArNDY3Nyw4IEBAIHN0YXRpYyB2b2lk IGJkcnZfZGVsZXRlKEJsb2NrRHJpdmVyU3RhdGUgKmJzKQogICogZnJlZSBvZiBlcnJvcnMpIG9y IC1lcnJubyB3aGVuIGFuIGludGVybmFsIGVycm9yIG9jY3VycmVkLiBUaGUgcmVzdWx0cyBvZiB0 aGUKICAqIGNoZWNrIGFyZSBzdG9yZWQgaW4gcmVzLgogICovCi1zdGF0aWMgaW50IGNvcm91dGlu ZV9mbiBiZHJ2X2NvX2NoZWNrKEJsb2NrRHJpdmVyU3RhdGUgKmJzLAotICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBCZHJ2Q2hlY2tSZXN1bHQgKnJlcywgQmRydkNoZWNrTW9k ZSBmaXgpCitpbnQgY29yb3V0aW5lX2ZuIGJkcnZfY29fY2hlY2soQmxvY2tEcml2ZXJTdGF0ZSAq YnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQmRydkNoZWNrUmVzdWx0ICpyZXMs IEJkcnZDaGVja01vZGUgZml4KQogewogICAgIGlmIChicy0+ZHJ2ID09IE5VTEwpIHsKICAgICAg ICAgcmV0dXJuIC1FTk9NRURJVU07CkBAIC01NzgxLDggKzU3ODIsNyBAQCB2b2lkIGJkcnZfaW5p dF93aXRoX3doaXRlbGlzdCh2b2lkKQogICAgIGJkcnZfaW5pdCgpOwogfQogCi1zdGF0aWMgaW50 IGNvcm91dGluZV9mbiBiZHJ2X2NvX2ludmFsaWRhdGVfY2FjaGUoQmxvY2tEcml2ZXJTdGF0ZSAq YnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRXJy b3IgKiplcnJwKQoraW50IGNvcm91dGluZV9mbiBiZHJ2X2NvX2ludmFsaWRhdGVfY2FjaGUoQmxv Y2tEcml2ZXJTdGF0ZSAqYnMsIEVycm9yICoqZXJycCkKIHsKICAgICBCZHJ2Q2hpbGQgKmNoaWxk LCAqcGFyZW50OwogICAgIHVpbnQ2NF90IHBlcm0sIHNoYXJlZF9wZXJtOwpkaWZmIC0tZ2l0IGEv YmxvY2svaW8uYyBiL2Jsb2NrL2lvLmMKaW5kZXggYjRmNmFiMGFiMS4uNTViM2I3NjkyYyAxMDA2 NDQKLS0tIGEvYmxvY2svaW8uYworKysgYi9ibG9jay9pby5jCkBAIC0yOSw2ICsyOSw3IEBACiAj aW5jbHVkZSAiYmxvY2svYmxvY2tqb2IuaCIKICNpbmNsdWRlICJibG9jay9ibG9ja2pvYl9pbnQu aCIKICNpbmNsdWRlICJibG9jay9ibG9ja19pbnQuaCIKKyNpbmNsdWRlICJibG9jay9jb3JvdXRp bmVzLmgiCiAjaW5jbHVkZSAicWVtdS9jdXRpbHMuaCIKICNpbmNsdWRlICJxYXBpL2Vycm9yLmgi CiAjaW5jbHVkZSAicWVtdS9lcnJvci1yZXBvcnQuaCIKQEAgLTkzMyw5ICs5MzQsOSBAQCB0eXBl ZGVmIHN0cnVjdCBSd0NvIHsKICAgICBCZHJ2UmVxdWVzdEZsYWdzIGZsYWdzOwogfSBSd0NvOwog Ci1zdGF0aWMgaW50IGNvcm91dGluZV9mbiBiZHJ2X2NvX3Byd3YoQmRydkNoaWxkICpjaGlsZCwg aW50NjRfdCBvZmZzZXQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUUVN VUlPVmVjdG9yICpxaW92LCBib29sIGlzX3dyaXRlLAotICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIEJkcnZSZXF1ZXN0RmxhZ3MgZmxhZ3MpCitpbnQgY29yb3V0aW5lX2ZuIGJk cnZfY29fcHJ3dihCZHJ2Q2hpbGQgKmNoaWxkLCBpbnQ2NF90IG9mZnNldCwKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFFFTVVJT1ZlY3RvciAqcWlvdiwgYm9vbCBpc193cml0ZSwKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJkcnZSZXF1ZXN0RmxhZ3MgZmxhZ3MpCiB7CiAg ICAgaWYgKGlzX3dyaXRlKSB7CiAgICAgICAgIHJldHVybiBiZHJ2X2NvX3B3cml0ZXYoY2hpbGQs IG9mZnNldCwgcWlvdi0+c2l6ZSwgcWlvdiwgZmxhZ3MpOwpAQCAtOTU1LDkgKzk1Niw5IEBAIHN0 YXRpYyBpbnQgY29yb3V0aW5lX2ZuIGJkcnZfcndfY29fZW50cnkodm9pZCAqb3BhcXVlKQogLyoK ICAqIFByb2Nlc3MgYSB2ZWN0b3JlZCBzeW5jaHJvbm91cyByZXF1ZXN0IHVzaW5nIGNvcm91dGlu ZXMKICAqLwotc3RhdGljIGludCBiZHJ2X3Byd3YoQmRydkNoaWxkICpjaGlsZCwgaW50NjRfdCBv ZmZzZXQsCi0gICAgICAgICAgICAgICAgICAgICBRRU1VSU9WZWN0b3IgKnFpb3YsIGJvb2wgaXNf d3JpdGUsCi0gICAgICAgICAgICAgICAgICAgICBCZHJ2UmVxdWVzdEZsYWdzIGZsYWdzKQoraW50 IGJkcnZfcHJ3dihCZHJ2Q2hpbGQgKmNoaWxkLCBpbnQ2NF90IG9mZnNldCwKKyAgICAgICAgICAg ICAgUUVNVUlPVmVjdG9yICpxaW92LCBib29sIGlzX3dyaXRlLAorICAgICAgICAgICAgICBCZHJ2 UmVxdWVzdEZsYWdzIGZsYWdzKQogewogICAgIFJ3Q28gcndjbyA9IHsKICAgICAgICAgLmNoaWxk ID0gY2hpbGQsCkBAIC0yNDUyLDcgKzI0NTMsNyBAQCBlYXJseV9vdXQ6CiAgICAgcmV0dXJuIHJl dDsKIH0KIAotc3RhdGljIGludCBjb3JvdXRpbmVfZm4KK2ludCBjb3JvdXRpbmVfZm4KIGJkcnZf Y29fY29tbW9uX2Jsb2NrX3N0YXR1c19hYm92ZShCbG9ja0RyaXZlclN0YXRlICpicywKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCbG9ja0RyaXZlclN0YXRlICpiYXNlLAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgd2FudF96ZXJvLApAQCAtMjUwOSwx MiArMjUxMCwxMiBAQCBzdGF0aWMgaW50IGNvcm91dGluZV9mbiBiZHJ2X2Jsb2NrX3N0YXR1c19h Ym92ZV9jb19lbnRyeSh2b2lkICpvcGFxdWUpCiAgKgogICogU2VlIGJkcnZfY29fYmxvY2tfc3Rh dHVzX2Fib3ZlKCkgZm9yIGRldGFpbHMuCiAgKi8KLXN0YXRpYyBpbnQgYmRydl9jb21tb25fYmxv Y2tfc3RhdHVzX2Fib3ZlKEJsb2NrRHJpdmVyU3RhdGUgKmJzLAotICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgQmxvY2tEcml2ZXJTdGF0ZSAqYmFzZSwKLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgd2FudF96ZXJvLCBpbnQ2NF90 IG9mZnNldCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludDY0 X3QgYnl0ZXMsIGludDY0X3QgKnBudW0sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBpbnQ2NF90ICptYXAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBCbG9ja0RyaXZlclN0YXRlICoqZmlsZSkKK2ludCBiZHJ2X2NvbW1vbl9ibG9j a19zdGF0dXNfYWJvdmUoQmxvY2tEcml2ZXJTdGF0ZSAqYnMsCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIEJsb2NrRHJpdmVyU3RhdGUgKmJhc2UsCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGJvb2wgd2FudF96ZXJvLCBpbnQ2NF90IG9mZnNldCwKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50NjRfdCBieXRlcywgaW50NjRfdCAqcG51 bSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50NjRfdCAqbWFwLAorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCbG9ja0RyaXZlclN0YXRlICoqZmlsZSkK IHsKICAgICBCZHJ2Q29CbG9ja1N0YXR1c0RhdGEgZGF0YSA9IHsKICAgICAgICAgLmJzID0gYnMs CkBAIC0yNjMwLDcgKzI2MzEsNyBAQCB0eXBlZGVmIHN0cnVjdCBCZHJ2Vm1zdGF0ZUNvIHsKICAg ICBib29sICAgICAgICAgICAgICAgIGlzX3JlYWQ7CiB9IEJkcnZWbXN0YXRlQ287CiAKLXN0YXRp YyBpbnQgY29yb3V0aW5lX2ZuCitpbnQgY29yb3V0aW5lX2ZuCiBiZHJ2X2NvX3J3X3Ztc3RhdGUo QmxvY2tEcml2ZXJTdGF0ZSAqYnMsIFFFTVVJT1ZlY3RvciAqcWlvdiwgaW50NjRfdCBwb3MsCiAg ICAgICAgICAgICAgICAgICAgYm9vbCBpc19yZWFkKQogewpAQCAtMjY2Myw5ICsyNjY0LDggQEAg c3RhdGljIGludCBjb3JvdXRpbmVfZm4gYmRydl9jb19yd192bXN0YXRlX2VudHJ5KHZvaWQgKm9w YXF1ZSkKICAgICByZXR1cm4gYmRydl9jb19yd192bXN0YXRlKGNvLT5icywgY28tPnFpb3YsIGNv LT5wb3MsIGNvLT5pc19yZWFkKTsKIH0KIAotc3RhdGljIGlubGluZSBpbnQKLWJkcnZfcndfdm1z dGF0ZShCbG9ja0RyaXZlclN0YXRlICpicywgUUVNVUlPVmVjdG9yICpxaW92LCBpbnQ2NF90IHBv cywKLSAgICAgICAgICAgICAgICBib29sIGlzX3JlYWQpCitpbnQgYmRydl9yd192bXN0YXRlKEJs b2NrRHJpdmVyU3RhdGUgKmJzLCBRRU1VSU9WZWN0b3IgKnFpb3YsIGludDY0X3QgcG9zLAorICAg ICAgICAgICAgICAgICAgICBib29sIGlzX3JlYWQpCiB7CiAgICAgQmRydlZtc3RhdGVDbyBkYXRh ID0gewogICAgICAgICAuYnMgICAgICAgICA9IGJzLAotLSAKMi4yNi4yCgo=