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 1nJXsm-0007Rg-TR for pgsql-hackers@arkaria.postgresql.org; Mon, 14 Feb 2022 09:42:57 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1nJXsk-0004Hy-Lr for pgsql-hackers@arkaria.postgresql.org; Mon, 14 Feb 2022 09:42:54 +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 1nJXsj-0004Hp-At for pgsql-hackers@lists.postgresql.org; Mon, 14 Feb 2022 09:42:54 +0000 Received: from out5-smtp.messagingengine.com ([66.111.4.29]) by magus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nJXsf-0008KI-18 for pgsql-hackers@postgresql.org; Mon, 14 Feb 2022 09:42:52 +0000 Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.nyi.internal (Postfix) with ESMTP id 324C45C00D0 for ; Mon, 14 Feb 2022 04:42:47 -0500 (EST) Received: from mailfrontend2 ([10.202.2.163]) by compute4.internal (MEProxy); Mon, 14 Feb 2022 04:42:47 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:date:date:from:from :in-reply-to:message-id:mime-version:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; bh=QkFioGA4N8HA4mcCdEvVUN5KCumgxS/sg0VXmyeZR V4=; b=jjKjkQoheboKxo86+CX5n+da5KiN+lH1tlBM76OP5tL28RqHu6NNWZcKq YVtyRkvAM6JcEfGF6syAhNZT94tgLZG13PBpkRg98+zpYpIMVYyzVowSHfIgJTzw lVQhFsrQHIy3j5v6rNC0DqmToH+jKmtp4S/KWvImQNHZPNQqNihspn3tXwlFqqyC RM4xspvCn3W1HqJZEzQ8Y9eyRzaFZ/NTRcULPJtkjrf05Wv1/kyFLzqbFV3p0HeX S5YjooUIyrkB/v+oQOv5IqInnsSuhgrcVwcvaBJ5A8FNQpIQVW2mrM+NKIIk4Jxw MnxQcgau6H6f712xXmImDhJujlsGQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvvddrjedvgddtfecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecunecujfgurheptgfkffggfgfhuffvsehmtderredtfe ejnecuhfhrohhmpefrvghtvghrucfgihhsvghnthhrrghuthcuoehpvghtvghrrdgvihhs vghnthhrrghuthesvghnthgvrhhprhhishgvuggsrdgtohhmqeenucggtffrrghtthgvrh hnpeeijeevieduueehudehuddtffeijeejteeijeehhfevueeftdffjeeilefhleekffen ucffohhmrghinhepphhoshhtghhrvghsqhhlrdhorhhgnecuvehluhhsthgvrhfuihiivg eptdenucfrrghrrghmpehmrghilhhfrhhomhepphgvthgvrhdrvghishgvnhhtrhgruhht segvnhhtvghrphhrihhsvggusgdrtghomh X-ME-Proxy: Received: by mail.messagingengine.com (Postfix) with ESMTPA for ; Mon, 14 Feb 2022 04:42:46 -0500 (EST) Content-Type: multipart/mixed; boundary="------------03dAwgac6nyzttPtJ6LTTiVN" Message-ID: Date: Mon, 14 Feb 2022 10:42:45 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0) Gecko/20100101 Thunderbird/91.6.0 Content-Language: en-US From: Peter Eisentraut Subject: pgcrypto: Remove internal padding implementation To: pgsql-hackers List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk This is a multi-part message in MIME format. --------------03dAwgac6nyzttPtJ6LTTiVN Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit This is a rebase of the patch from [0]. It removes the internal padding implementation in pgcrypto and lets OpenSSL do it. The internal implementation was once applicable to the non-OpenSSL code paths, but those have since been removed. [0]: https://www.postgresql.org/message-id/b1a62889-bb45-e5e0-d138-7a370a0a334f@enterprisedb.com --------------03dAwgac6nyzttPtJ6LTTiVN Content-Type: text/plain; charset=UTF-8; name="v2-0001-pgcrypto-Remove-internal-padding-implementation.patch" Content-Disposition: attachment; filename*0="v2-0001-pgcrypto-Remove-internal-padding-implementation.patc"; filename*1="h" Content-Transfer-Encoding: base64 RnJvbSA4NmU2NTY5MDEwNWUzYTRhN2UzODI3NmY0OGJkOTdjMGUwOTViZWVjIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQZXRlciBFaXNlbnRyYXV0IDxwZXRlckBlaXNlbnRy YXV0Lm9yZz4KRGF0ZTogTW9uLCAxNCBGZWIgMjAyMiAxMDozMjo0OCArMDEwMApTdWJqZWN0 OiBbUEFUQ0ggdjJdIHBnY3J5cHRvOiBSZW1vdmUgaW50ZXJuYWwgcGFkZGluZyBpbXBsZW1l bnRhdGlvbgoKVXNlIHRoZSBwYWRkaW5nIHByb3ZpZGVkIGJ5IE9wZW5TU0wgaW5zdGVhZCBv ZiBkb2luZyBpdCBvdXJzZWx2ZXMuClRoZSBpbnRlcm5hbCBpbXBsZW1lbnRhdGlvbiB3YXMg b25jZSBhcHBsaWNhYmxlIHRvIHRoZSBub24tT3BlblNTTApjb2RlIHBhdGhzLCBidXQgdGhv c2UgaGF2ZSBzaW5jZSBiZWVuIHJlbW92ZWQuCgpEaXNjdXNzaW9uOiBodHRwczovL3d3dy5w b3N0Z3Jlc3FsLm9yZy9tZXNzYWdlLWlkL2IxYTYyODg5LWJiNDUtZTVlMC1kMTM4LTdhMzcw YTBhMzM0ZkBlbnRlcnByaXNlZGIuY29tCi0tLQogY29udHJpYi9wZ2NyeXB0by9vcGVuc3Ns LmMgfCAgMjIgKysrKy0tLQogY29udHJpYi9wZ2NyeXB0by9wZ3AtY2ZiLmMgfCAgIDQgKy0K IGNvbnRyaWIvcGdjcnlwdG8vcHguYyAgICAgIHwgMTE5ICstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0KIGNvbnRyaWIvcGdjcnlwdG8vcHguaCAgICAgIHwgIDEyICsr LS0KIDQgZmlsZXMgY2hhbmdlZCwgMjUgaW5zZXJ0aW9ucygrKSwgMTMyIGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL2NvbnRyaWIvcGdjcnlwdG8vb3BlbnNzbC5jIGIvY29udHJpYi9w Z2NyeXB0by9vcGVuc3NsLmMKaW5kZXggZTIzNmIwZDc5Yy4uNjhmZDYxYjcxNiAxMDA2NDQK LS0tIGEvY29udHJpYi9wZ2NyeXB0by9vcGVuc3NsLmMKKysrIGIvY29udHJpYi9wZ2NyeXB0 by9vcGVuc3NsLmMKQEAgLTM2OSwxNyArMzY5LDE3IEBAIGdlbl9vc3NsX2ZyZWUoUFhfQ2lw aGVyICpjKQogfQogCiBzdGF0aWMgaW50Ci1nZW5fb3NzbF9kZWNyeXB0KFBYX0NpcGhlciAq YywgY29uc3QgdWludDggKmRhdGEsIHVuc2lnbmVkIGRsZW4sCi0JCQkJIHVpbnQ4ICpyZXMp CitnZW5fb3NzbF9kZWNyeXB0KFBYX0NpcGhlciAqYywgaW50IHBhZGRpbmcsIGNvbnN0IHVp bnQ4ICpkYXRhLCB1bnNpZ25lZCBkbGVuLAorCQkJCSB1aW50OCAqcmVzLCB1bnNpZ25lZCAq cmxlbikKIHsKIAlPU1NMQ2lwaGVyICpvZCA9IGMtPnB0cjsKLQlpbnQJCQlvdXRsZW47CisJ aW50CQkJb3V0bGVuLCBvdXRsZW4yOwogCiAJaWYgKCFvZC0+aW5pdCkKIAl7CiAJCWlmICgh RVZQX0RlY3J5cHRJbml0X2V4KG9kLT5ldnBfY3R4LCBvZC0+ZXZwX2NpcGgsIE5VTEwsIE5V TEwsIE5VTEwpKQogCQkJcmV0dXJuIFBYRV9DSVBIRVJfSU5JVDsKLQkJaWYgKCFFVlBfQ0lQ SEVSX0NUWF9zZXRfcGFkZGluZyhvZC0+ZXZwX2N0eCwgMCkpCisJCWlmICghRVZQX0NJUEhF Ul9DVFhfc2V0X3BhZGRpbmcob2QtPmV2cF9jdHgsIHBhZGRpbmcpKQogCQkJcmV0dXJuIFBY RV9DSVBIRVJfSU5JVDsKIAkJaWYgKCFFVlBfQ0lQSEVSX0NUWF9zZXRfa2V5X2xlbmd0aChv ZC0+ZXZwX2N0eCwgb2QtPmtsZW4pKQogCQkJcmV0dXJuIFBYRV9DSVBIRVJfSU5JVDsKQEAg LTM5MCwyMiArMzkwLDI1IEBAIGdlbl9vc3NsX2RlY3J5cHQoUFhfQ2lwaGVyICpjLCBjb25z dCB1aW50OCAqZGF0YSwgdW5zaWduZWQgZGxlbiwKIAogCWlmICghRVZQX0RlY3J5cHRVcGRh dGUob2QtPmV2cF9jdHgsIHJlcywgJm91dGxlbiwgZGF0YSwgZGxlbikpCiAJCXJldHVybiBQ WEVfREVDUllQVF9GQUlMRUQ7CisJaWYgKCFFVlBfRGVjcnlwdEZpbmFsX2V4KG9kLT5ldnBf Y3R4LCByZXMgKyBvdXRsZW4sICZvdXRsZW4yKSkKKwkJcmV0dXJuIFBYRV9ERUNSWVBUX0ZB SUxFRDsKKwkqcmxlbiA9IG91dGxlbiArIG91dGxlbjI7CiAKIAlyZXR1cm4gMDsKIH0KIAog c3RhdGljIGludAotZ2VuX29zc2xfZW5jcnlwdChQWF9DaXBoZXIgKmMsIGNvbnN0IHVpbnQ4 ICpkYXRhLCB1bnNpZ25lZCBkbGVuLAotCQkJCSB1aW50OCAqcmVzKQorZ2VuX29zc2xfZW5j cnlwdChQWF9DaXBoZXIgKmMsIGludCBwYWRkaW5nLCBjb25zdCB1aW50OCAqZGF0YSwgdW5z aWduZWQgZGxlbiwKKwkJCQkgdWludDggKnJlcywgdW5zaWduZWQgKnJsZW4pCiB7CiAJT1NT TENpcGhlciAqb2QgPSBjLT5wdHI7Ci0JaW50CQkJb3V0bGVuOworCWludAkJCW91dGxlbiwg b3V0bGVuMjsKIAogCWlmICghb2QtPmluaXQpCiAJewogCQlpZiAoIUVWUF9FbmNyeXB0SW5p dF9leChvZC0+ZXZwX2N0eCwgb2QtPmV2cF9jaXBoLCBOVUxMLCBOVUxMLCBOVUxMKSkKIAkJ CXJldHVybiBQWEVfQ0lQSEVSX0lOSVQ7Ci0JCWlmICghRVZQX0NJUEhFUl9DVFhfc2V0X3Bh ZGRpbmcob2QtPmV2cF9jdHgsIDApKQorCQlpZiAoIUVWUF9DSVBIRVJfQ1RYX3NldF9wYWRk aW5nKG9kLT5ldnBfY3R4LCBwYWRkaW5nKSkKIAkJCXJldHVybiBQWEVfQ0lQSEVSX0lOSVQ7 CiAJCWlmICghRVZQX0NJUEhFUl9DVFhfc2V0X2tleV9sZW5ndGgob2QtPmV2cF9jdHgsIG9k LT5rbGVuKSkKIAkJCXJldHVybiBQWEVfQ0lQSEVSX0lOSVQ7CkBAIC00MTYsNiArNDE5LDkg QEAgZ2VuX29zc2xfZW5jcnlwdChQWF9DaXBoZXIgKmMsIGNvbnN0IHVpbnQ4ICpkYXRhLCB1 bnNpZ25lZCBkbGVuLAogCiAJaWYgKCFFVlBfRW5jcnlwdFVwZGF0ZShvZC0+ZXZwX2N0eCwg cmVzLCAmb3V0bGVuLCBkYXRhLCBkbGVuKSkKIAkJcmV0dXJuIFBYRV9FTkNSWVBUX0ZBSUxF RDsKKwlpZiAoIUVWUF9FbmNyeXB0RmluYWxfZXgob2QtPmV2cF9jdHgsIHJlcyArIG91dGxl biwgJm91dGxlbjIpKQorCQlyZXR1cm4gUFhFX0VOQ1JZUFRfRkFJTEVEOworCSpybGVuID0g b3V0bGVuICsgb3V0bGVuMjsKIAogCXJldHVybiAwOwogfQpkaWZmIC0tZ2l0IGEvY29udHJp Yi9wZ2NyeXB0by9wZ3AtY2ZiLmMgYi9jb250cmliL3BnY3J5cHRvL3BncC1jZmIuYwppbmRl eCBkYWZhNTYyZGFhLi5kZTQxZTgyNWIwIDEwMDY0NAotLS0gYS9jb250cmliL3BnY3J5cHRv L3BncC1jZmIuYworKysgYi9jb250cmliL3BnY3J5cHRvL3BncC1jZmIuYwpAQCAtMjIwLDcg KzIyMCw5IEBAIGNmYl9wcm9jZXNzKFBHUF9DRkIgKmN0eCwgY29uc3QgdWludDggKmRhdGEs IGludCBsZW4sIHVpbnQ4ICpkc3QsCiAKIAl3aGlsZSAobGVuID4gMCkKIAl7Ci0JCXB4X2Np cGhlcl9lbmNyeXB0KGN0eC0+Y2lwaCwgY3R4LT5mciwgY3R4LT5ibG9ja19zaXplLCBjdHgt PmZyZSk7CisJCXVuc2lnbmVkCXJsZW47CisKKwkJcHhfY2lwaGVyX2VuY3J5cHQoY3R4LT5j aXBoLCAwLCBjdHgtPmZyLCBjdHgtPmJsb2NrX3NpemUsIGN0eC0+ZnJlLCAmcmxlbik7CiAJ CWlmIChjdHgtPmJsb2NrX25vIDwgNSkKIAkJCWN0eC0+YmxvY2tfbm8rKzsKIApkaWZmIC0t Z2l0IGEvY29udHJpYi9wZ2NyeXB0by9weC5jIGIvY29udHJpYi9wZ2NyeXB0by9weC5jCmlu ZGV4IDQyMDVlOWMzZWYuLjVjY2FiNDQxMjIgMTAwNjQ0Ci0tLSBhL2NvbnRyaWIvcGdjcnlw dG8vcHguYworKysgYi9jb250cmliL3BnY3J5cHRvL3B4LmMKQEAgLTIyMywxMjkgKzIyMywx NCBAQCBzdGF0aWMgaW50CiBjb21ib19lbmNyeXB0KFBYX0NvbWJvICpjeCwgY29uc3QgdWlu dDggKmRhdGEsIHVuc2lnbmVkIGRsZW4sCiAJCQkgIHVpbnQ4ICpyZXMsIHVuc2lnbmVkICpy bGVuKQogewotCWludAkJCWVyciA9IDA7Ci0JdWludDgJICAgKmJidWY7Ci0JdW5zaWduZWQJ YnMsCi0JCQkJYnBvcywKLQkJCQlpLAotCQkJCXBhZDsKLQotCVBYX0NpcGhlciAgKmMgPSBj eC0+Y2lwaGVyOwotCi0JYmJ1ZiA9IE5VTEw7Ci0JYnMgPSBweF9jaXBoZXJfYmxvY2tfc2l6 ZShjKTsKLQotCS8qIGVuY3J5cHQgKi8KLQlpZiAoYnMgPiAxKQotCXsKLQkJYmJ1ZiA9IHBh bGxvYyhicyAqIDQpOwotCQlicG9zID0gZGxlbiAlIGJzOwotCQkqcmxlbiA9IGRsZW4gLSBi cG9zOwotCQltZW1jcHkoYmJ1ZiwgZGF0YSArICpybGVuLCBicG9zKTsKLQotCQkvKiBlbmNy eXB0IGZ1bGwtYmxvY2sgZGF0YSAqLwotCQlpZiAoKnJsZW4pCi0JCXsKLQkJCWVyciA9IHB4 X2NpcGhlcl9lbmNyeXB0KGMsIGRhdGEsICpybGVuLCByZXMpOwotCQkJaWYgKGVycikKLQkJ CQlnb3RvIG91dDsKLQkJfQotCi0JCS8qIGJidWYgaGFzIG5vdyBicG9zIGJ5dGVzIG9mIHN0 dWZmICovCi0JCWlmIChjeC0+cGFkZGluZykKLQkJewotCQkJcGFkID0gYnMgLSAoYnBvcyAl IGJzKTsKLQkJCWZvciAoaSA9IDA7IGkgPCBwYWQ7IGkrKykKLQkJCQliYnVmW2Jwb3MrK10g PSBwYWQ7Ci0JCX0KLQkJZWxzZSBpZiAoYnBvcyAlIGJzKQotCQl7Ci0JCQkvKiBFUlJPUj8g Ki8KLQkJCXBhZCA9IGJzIC0gKGJwb3MgJSBicyk7Ci0JCQlmb3IgKGkgPSAwOyBpIDwgcGFk OyBpKyspCi0JCQkJYmJ1ZlticG9zKytdID0gMDsKLQkJfQotCi0JCS8qIGVuY3J5cHQgdGhl IHJlc3QgLSBwYWQgKi8KLQkJaWYgKGJwb3MpCi0JCXsKLQkJCWVyciA9IHB4X2NpcGhlcl9l bmNyeXB0KGMsIGJidWYsIGJwb3MsIHJlcyArICpybGVuKTsKLQkJCSpybGVuICs9IGJwb3M7 Ci0JCX0KLQl9Ci0JZWxzZQotCXsKLQkJLyogc3RyZWFtIGNpcGhlci9tb2RlIC0gbm8gcGFk IG5lZWRlZCAqLwotCQllcnIgPSBweF9jaXBoZXJfZW5jcnlwdChjLCBkYXRhLCBkbGVuLCBy ZXMpOwotCQlpZiAoZXJyKQotCQkJZ290byBvdXQ7Ci0JCSpybGVuID0gZGxlbjsKLQl9Ci1v dXQ6Ci0JaWYgKGJidWYpCi0JCXBmcmVlKGJidWYpOwotCi0JcmV0dXJuIGVycjsKKwlyZXR1 cm4gcHhfY2lwaGVyX2VuY3J5cHQoY3gtPmNpcGhlciwgY3gtPnBhZGRpbmcsIGRhdGEsIGRs ZW4sIHJlcywgcmxlbik7CiB9CiAKIHN0YXRpYyBpbnQKIGNvbWJvX2RlY3J5cHQoUFhfQ29t Ym8gKmN4LCBjb25zdCB1aW50OCAqZGF0YSwgdW5zaWduZWQgZGxlbiwKIAkJCSAgdWludDgg KnJlcywgdW5zaWduZWQgKnJsZW4pCiB7Ci0JaW50CQkJZXJyID0gMDsKLQl1bnNpZ25lZAli cywKLQkJCQlpLAotCQkJCXBhZDsKLQl1bnNpZ25lZAlwYWRfb2s7Ci0KLQlQWF9DaXBoZXIg ICpjID0gY3gtPmNpcGhlcjsKLQotCS8qIGRlY2lkZSB3aGV0aGVyIHplcm8tbGVuZ3RoIGlu cHV0IGlzIGFsbG93ZWQgKi8KLQlpZiAoZGxlbiA9PSAwKQotCXsKLQkJLyogd2l0aCBwYWRk aW5nLCBlbXB0eSBjaXBoZXJ0ZXh0IGlzIG5vdCBhbGxvd2VkICovCi0JCWlmIChjeC0+cGFk ZGluZykKLQkJCXJldHVybiBQWEVfREVDUllQVF9GQUlMRUQ7Ci0KLQkJLyogd2l0aG91dCBw YWRkaW5nLCByZXBvcnQgZW1wdHkgcmVzdWx0ICovCi0JCSpybGVuID0gMDsKLQkJcmV0dXJu IDA7Ci0JfQotCi0JYnMgPSBweF9jaXBoZXJfYmxvY2tfc2l6ZShjKTsKLQlpZiAoYnMgPiAx ICYmIChkbGVuICUgYnMpICE9IDApCi0JCWdvdG8gYmxvY2tfZXJyb3I7Ci0KLQkvKiBkZWNy eXB0ICovCi0JKnJsZW4gPSBkbGVuOwotCWVyciA9IHB4X2NpcGhlcl9kZWNyeXB0KGMsIGRh dGEsIGRsZW4sIHJlcyk7Ci0JaWYgKGVycikKLQkJcmV0dXJuIGVycjsKLQotCS8qIHVucGFk ICovCi0JaWYgKGJzID4gMSAmJiBjeC0+cGFkZGluZykKLQl7Ci0JCXBhZCA9IHJlc1sqcmxl biAtIDFdOwotCQlwYWRfb2sgPSAwOwotCQlpZiAocGFkID4gMCAmJiBwYWQgPD0gYnMgJiYg cGFkIDw9ICpybGVuKQotCQl7Ci0JCQlwYWRfb2sgPSAxOwotCQkJZm9yIChpID0gKnJsZW4g LSBwYWQ7IGkgPCAqcmxlbjsgaSsrKQotCQkJCWlmIChyZXNbaV0gIT0gcGFkKQotCQkJCXsK LQkJCQkJcGFkX29rID0gMDsKLQkJCQkJYnJlYWs7Ci0JCQkJfQotCQl9Ci0KLQkJaWYgKHBh ZF9vaykKLQkJCSpybGVuIC09IHBhZDsKLQl9Ci0KLQlyZXR1cm4gMDsKLQotYmxvY2tfZXJy b3I6Ci0JcmV0dXJuIFBYRV9OT1RCTE9DS1NJWkU7CisJcmV0dXJuIHB4X2NpcGhlcl9kZWNy eXB0KGN4LT5jaXBoZXIsIGN4LT5wYWRkaW5nLCBkYXRhLCBkbGVuLCByZXMsIHJsZW4pOwog fQogCiBzdGF0aWMgdm9pZApkaWZmIC0tZ2l0IGEvY29udHJpYi9wZ2NyeXB0by9weC5oIGIv Y29udHJpYi9wZ2NyeXB0by9weC5oCmluZGV4IDE3ZDZmMjI0OTguLjkzNDhkNmM5OTcgMTAw NjQ0Ci0tLSBhL2NvbnRyaWIvcGdjcnlwdG8vcHguaAorKysgYi9jb250cmliL3BnY3J5cHRv L3B4LmgKQEAgLTE0Myw4ICsxNDMsOCBAQCBzdHJ1Y3QgcHhfY2lwaGVyCiAJdW5zaWduZWQJ KCppdl9zaXplKSAoUFhfQ2lwaGVyICpjKTsKIAogCWludAkJCSgqaW5pdCkgKFBYX0NpcGhl ciAqYywgY29uc3QgdWludDggKmtleSwgdW5zaWduZWQga2xlbiwgY29uc3QgdWludDggKml2 KTsKLQlpbnQJCQkoKmVuY3J5cHQpIChQWF9DaXBoZXIgKmMsIGNvbnN0IHVpbnQ4ICpkYXRh LCB1bnNpZ25lZCBkbGVuLCB1aW50OCAqcmVzKTsKLQlpbnQJCQkoKmRlY3J5cHQpIChQWF9D aXBoZXIgKmMsIGNvbnN0IHVpbnQ4ICpkYXRhLCB1bnNpZ25lZCBkbGVuLCB1aW50OCAqcmVz KTsKKwlpbnQJCQkoKmVuY3J5cHQpIChQWF9DaXBoZXIgKmMsIGludCBwYWRkaW5nLCBjb25z dCB1aW50OCAqZGF0YSwgdW5zaWduZWQgZGxlbiwgdWludDggKnJlcywgdW5zaWduZWQgKnJs ZW4pOworCWludAkJCSgqZGVjcnlwdCkgKFBYX0NpcGhlciAqYywgaW50IHBhZGRpbmcsIGNv bnN0IHVpbnQ4ICpkYXRhLCB1bnNpZ25lZCBkbGVuLCB1aW50OCAqcmVzLCB1bnNpZ25lZCAq cmxlbik7CiAJdm9pZAkJKCpmcmVlKSAoUFhfQ2lwaGVyICpjKTsKIAkvKiBwcml2YXRlICov CiAJdm9pZAkgICAqcHRyOwpAQCAtMjA3LDEwICsyMDcsMTAgQEAgdm9pZAkJcHhfZGVidWco Y29uc3QgY2hhciAqZm10LC4uLikgcGdfYXR0cmlidXRlX3ByaW50ZigxLCAyKTsKICNkZWZp bmUgcHhfY2lwaGVyX2Jsb2NrX3NpemUoYykJCShjKS0+YmxvY2tfc2l6ZShjKQogI2RlZmlu ZSBweF9jaXBoZXJfaXZfc2l6ZShjKQkJKGMpLT5pdl9zaXplKGMpCiAjZGVmaW5lIHB4X2Np cGhlcl9pbml0KGMsIGssIGtsZW4sIGl2KQkoYyktPmluaXQoYywgaywga2xlbiwgaXYpCi0j ZGVmaW5lIHB4X2NpcGhlcl9lbmNyeXB0KGMsIGRhdGEsIGRsZW4sIHJlcykgXAotCQkJCQko YyktPmVuY3J5cHQoYywgZGF0YSwgZGxlbiwgcmVzKQotI2RlZmluZSBweF9jaXBoZXJfZGVj cnlwdChjLCBkYXRhLCBkbGVuLCByZXMpIFwKLQkJCQkJKGMpLT5kZWNyeXB0KGMsIGRhdGEs IGRsZW4sIHJlcykKKyNkZWZpbmUgcHhfY2lwaGVyX2VuY3J5cHQoYywgcGFkZGluZywgZGF0 YSwgZGxlbiwgcmVzLCBybGVuKSBcCisJCQkJCShjKS0+ZW5jcnlwdChjLCBwYWRkaW5nLCBk YXRhLCBkbGVuLCByZXMsIHJsZW4pCisjZGVmaW5lIHB4X2NpcGhlcl9kZWNyeXB0KGMsIHBh ZGRpbmcsIGRhdGEsIGRsZW4sIHJlcywgcmxlbikgXAorCQkJCQkoYyktPmRlY3J5cHQoYywg cGFkZGluZywgZGF0YSwgZGxlbiwgcmVzLCBybGVuKQogI2RlZmluZSBweF9jaXBoZXJfZnJl ZShjKQkJKGMpLT5mcmVlKGMpCiAKIAotLSAKMi4zNS4xCgo= --------------03dAwgac6nyzttPtJ6LTTiVN--