From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <ffmpeg-devel-bounces@ffmpeg.org>
Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100])
	by master.gitmailbox.com (Postfix) with ESMTPS id 80A864DA0D
	for <ffmpegdev@gitmailbox.com>; Mon, 21 Apr 2025 18:24:53 +0000 (UTC)
Received: from [127.0.1.1] (localhost [127.0.0.1])
	by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id A56C6687D25;
	Mon, 21 Apr 2025 21:24:47 +0300 (EEST)
Received: from EUR02-AM0-obe.outbound.protection.outlook.com
 (mail-am0eur02olkn2096.outbound.protection.outlook.com [40.92.49.96])
 by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 82A4B687D25
 for <ffmpeg-devel@ffmpeg.org>; Mon, 21 Apr 2025 21:24:40 +0300 (EEST)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;
 b=KbFCTc1r1WoygKbyydy5O2KkNLy1FkcAln7h4CELTZbADivocLQkIxi6DnLpp9g/gwirO/z8qHavqyNiCRUVjouDAiS7cs3Rui0fLfMm1PzlXL3F6pTf/1ASnogVYdZEv0Sa59F/Otsj6KbM9gebhMe23vad7p8BwyIEeEvOHInyHy/JM+hNRr56xMsMH8eNpkTvsBYw9mLpGFXj/L2T9SRtbDYMX91w+zMCmk1YjLH9w3LnbK0ysJgszk5k4jlh+r8MlONC4nXGxpQCU7aArRH981aIOTzQbkIGTwGjogAnZFla3s7xhAckSMOsjybm0W50afdxf5eIwyxja/pRQw==
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=HtDsngRohyyyk/geRMiCUkWCgm3roAmz9EAM0fVEXCU=;
 b=BdGkqClnjgtV0kY22AHGkDjqBaUfPmPVHOdgZlOrthdBdiyPdoQHd/UmqqgHsbzzE5Ku/2ZXBrvaiDX6p9xWwqKc7z8HhWfjg4lFngT5fNYJYroevyCNKozQ6I8sH2Q1m+pIVRES849ezm+VnnqQH1AQ2fcflxKLS0Ad7/Gczlyg36Q8Nv9xjI+8uHyzUgUUBBr/QsLw8ax7JmZya1gfFMgrGmGIesdUe0Ln19iRIkUcNMLL5ObVgxmY9JWFUGmN52O05X3jp8/tSNjWb2i01aHD3K6rbGcl3Ifl4HMO8mgHpjfuvpMNAaYbdaORyrfnRWqUjRgv4OX7SzRx+DmbHA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none;
 dkim=none; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com;
 s=selector1;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=HtDsngRohyyyk/geRMiCUkWCgm3roAmz9EAM0fVEXCU=;
 b=q+WsY2o4dftiVzujlg39109UrmKDt8xXMdreUnxbgV7lF9NkrnftogOrVn62Pr1G0gsFZR/gQ8XUXsVMLvX2XETXHFjBNKxt8aOLbmJJbhqVlxvF4ZlByy26rWA8JQMKSanrMb9w0r+ZzlsqULRpYlvSve+VBH731jY0VkrUm8u3yhOeox7ia9aA4FpbNIQXW7xFqE6WTGvZvGNlpVvPz5ozvwVSsv1nUQx+URibaRg8XCABKAiKEEV9YltcESugpUK+AU4oqZ4Mo8z040PaA1anr6OcCabVLfHKim21y2+L9xVn2VvIUoqPVbBFlgf1BjVO3AVfy3AaXGE8R+wfXw==
Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17)
 by AS1P250MB0504.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:4a2::10) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8655.31; Mon, 21 Apr
 2025 18:09:01 +0000
Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM
 ([fe80::d6a1:e3af:a5f1:b614]) by GV1P250MB0737.EURP250.PROD.OUTLOOK.COM
 ([fe80::d6a1:e3af:a5f1:b614%5]) with mapi id 15.20.8655.031; Mon, 21 Apr 2025
 18:08:55 +0000
Content-Type: multipart/mixed; boundary="------------GNX1l5Qw5hj9pXaT91JDO35Y"
Message-ID: <GV1P250MB0737FD96447B4A57699002CE8FB82@GV1P250MB0737.EURP250.PROD.OUTLOOK.COM>
Date: Mon, 21 Apr 2025 20:08:53 +0200
User-Agent: Mozilla Thunderbird
Content-Language: en-US
To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org>
From: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
X-ClientProxiedBy: FR2P281CA0079.DEUP281.PROD.OUTLOOK.COM
 (2603:10a6:d10:9a::19) To GV1P250MB0737.EURP250.PROD.OUTLOOK.COM
 (2603:10a6:150:8e::17)
X-Microsoft-Original-Message-ID: <56c1628d-24d7-460f-80a7-54236d983e2c@outlook.com>
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: GV1P250MB0737:EE_|AS1P250MB0504:EE_
X-MS-Office365-Filtering-Correlation-Id: 80d8aab2-49ea-4bfe-60a7-08dd80ff93e4
X-MS-Exchange-SLBlob-MailProps: Z4JiEoKTUkmcMQlaPXrAUgH/xYXU5mzX/BiTm2hMODEYs1e79nhBbfDQrpjkRNHWyR9gilClcETycfLCe7GhgVPHS1d9LUOf5Fmcwe02AXHXxfaKHfLrTX+HkKrBlKrJ684fB7LC2nD2O9ZQIMviyxUm0wPZq91AKBaV8ZuHA05zXO5tTTuEN7ZVCaI7yAKqduCKipdPuM4Yoy5jqYsURLBBxp66YjHbLPkR2j+aDvvIOPng5Sml1TSnjKrRJQXdGyr9seNk9w5Ip8BcPUcbv7hMelqQ7bv7x7VlWmyJ1L1hAooENDC5Mr3uvZJx/K0MyrrdrwXRnNFRH+omeMvlUY9W6KYX+Wwv5zzjTvZ0AT7XmSDYYS5L5brItA28T8FdFQ+JMAFrYsyOfNT+BswojDvBQeYGfKI6LInrg9XZMRbvmAA08hWEgY24y8iRa+f6XIWl3eA3WuzLz1SVdHeCndKg3tRqFZ5IwupErFV3FJjJR2ayMmoTzeUVmB+iz9Ha1X/4hi8H6VPIqig0T/K5I1uxZFHm0A59oYnF6YQf6I/z2tglxImNcMVv4zV4qvPa3U2zY0/arlCOkaRjPpiUZ7mvx2IYOffRz3d22D+0vUdnKKw7L5LHoolgjsBrKCuv
X-Microsoft-Antispam: BCL:0;
 ARA:14566002|7092599003|15080799006|12121999004|8060799006|6092099012|461199028|19110799003|5072599009|13095399003|440099028|3412199025;
X-Microsoft-Antispam-Message-Info: =?utf-8?B?TERya3lHYXJrUWQ3ZTBYQTFiRithaFV1RE1Jd3BySzIvWHhZT2VCSnpkc3BS?=
 =?utf-8?B?SklFMHhDTTdFUllpelZkZDI5bElBQ3lhQUNBNmRLL2tQVTNXdDJ6M0x1YW1B?=
 =?utf-8?B?bnAwU012eDhISFZ3andaVlNhVjdpU1FIU2drRU9CS08rU1dxVVRIdy9ia0Vh?=
 =?utf-8?B?enJUNVMza1VRWG9ORm56OUxOaU1KYjBvdG9HcDJiRkpXd1JybkF1YXNKVWR2?=
 =?utf-8?B?VnlJRVhncnpqRlhmZ3k1Y2xJU0FJK3BMQ1h5ZnQvTlI5ZU9sUU1nbEUwL0Zl?=
 =?utf-8?B?bjJGSmJVVVBXZkNXRlJOTHN0QmJTSkNPYWJSR0g2c0tNWmNydkVBSy9RMWNE?=
 =?utf-8?B?elljR2ZJZUM4Z25WWmlBNjRwRDZZYmJxTWNPZ010VlNEV1J2Tlhnam5LZ2c2?=
 =?utf-8?B?bklaSjhnMndQZUJ5N2Uzb2F0RURJSkdNV3oxSGxobEYyUDBTdllsRmhaYmdR?=
 =?utf-8?B?cnpQY0xWYVhiYUlVN1plYm91clpjNzBOQmdxUGtqSHFwbTBIek9ORHVkNFNB?=
 =?utf-8?B?UCtkeUlVb2dwUG9IaVZxVTVscjlodk5vTnUwYm5kYUZjZ0N2Ky9IcTY2T2pz?=
 =?utf-8?B?RHo0MEtHaHJiMStTbk1mZlJmNW9JN21TU21aN1NaWG5DN0plWE45bXNPT1k3?=
 =?utf-8?B?dk4xdFVKYm1BZ2toYmpGZStRMWhmS3JnaFdZTVBpQ0tURkFCRmF6S2t4TVNu?=
 =?utf-8?B?LzB5bjZ1R3YzeUNzb05kTGJpSVVwS3loUVB2ZFEwc2ozZFU0N3p1L254SUtW?=
 =?utf-8?B?K0p1WXkrSy83RWE1S1pubVZqN1pHNlFHUHdvK0t4OTlJNUNUWHRiUjhBUDI2?=
 =?utf-8?B?dG9qanMwUmlRTGdTeXgxMmJOYmxVaS8rSjg4OGh2YlFiOUhHL0EwTmxsY2c1?=
 =?utf-8?B?VE5jZFlVS2c0WjlxbDd4NWUwR092UHpxMDZEdm9BNEtHWFkyVzRxelVId29q?=
 =?utf-8?B?dXZKbHY1S0hLdFM1aGMzMDJmVDJYM1JYOFVjUkl2dDMwV205ZEMzRGpIdkNM?=
 =?utf-8?B?Qk9CVjRvRnNuRkdMZllJcXY3dXJBVXlvODBtTkRpbVVJQXRGdFN2bHVqV2Y5?=
 =?utf-8?B?VWdUdUVadjZvV2VYWE5ZYmx5U2pzYi9FZ2ZRU2hoT3Y1cWhLZFhSQm1zZnhu?=
 =?utf-8?B?REZWRGwvUFZEZ0NiUU9Hbk5DR1pSMFNTQ0FpL2IrYnRIVDR5dlZoUVhvWmNo?=
 =?utf-8?B?M0Z6aGxmLzYvMDZsUi9hZ1I1YVh5cGIxcXN5TVlra2ZHMlAwWEQxQVBwYlNY?=
 =?utf-8?B?dlowc0pUSTIzUWh0bU41NGJBcEp4UFRVVHg5eitLYTdubVpsUVRpaWhJYVNH?=
 =?utf-8?B?UmJPT3FnQUhIKzJPQm1qeDB2U09hZHFib0ZmVFk5MkxtNUpXQWxNa3ZEUmNy?=
 =?utf-8?B?cXl5UDBRTytnMWJndVpzdURPQmNKdnlXR1I3R09Lc01QVmo5WWRNMGlhRFVp?=
 =?utf-8?B?bVlGa3lHODZYTUtlOWxtNXJDbi9zdFJBTFJTYThJYjVJRkl6dWphMzlJeDlu?=
 =?utf-8?B?cjdvcEdtZDU2VERUUkV0YTd6WCtqMDZnWldrWHZlWjNET0hEdHpReTNhdVNK?=
 =?utf-8?B?SHBvVDNhK3JKWFhBb2JFWGlSTG9KWW43VFp4ZThqckREeXVYT3JDbkJuTFRH?=
 =?utf-8?B?TjZzc1JzaCtUdUMveUl1a29TLy9JZ3c9PQ==?=
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ZnZicm0rMjNUQ1h2dzByVEVzdC85N3hiYk9CUWZyK212QWR0SU9WOEozRzVF?=
 =?utf-8?B?SENsMWFUT3JYMCtWS1FmQUc1QjN1VVk1NmthdVhQb0FvNkpSaXhIN1FSRXZU?=
 =?utf-8?B?RmozM2FTKzZKQlZpUERURldzU3BOU3JRQnNOZVI5VzVnY2QwdXRWZW5yd0Nw?=
 =?utf-8?B?RGsrVVBSZENFaWhXWFUyNWtZSUt4L1dwbDNHTGI5Vm9HTEliZHdwQVVUYnRG?=
 =?utf-8?B?N3BQcDVJSERwR3hPdnZTd092V0IxL2sxV3VpTmpncUZhcDZsbm1RNE9ZMjla?=
 =?utf-8?B?ZEpLajNPMkxKTlMxc2dET09oNFpLOVhGR004ZEZsYmhzM0pqait0RDk1WDd2?=
 =?utf-8?B?VUZiQTc0c0lOMVdOK3FoNlk2SVNSREdLQUx4SXVpbDNteWgrTlA3dk01dk9m?=
 =?utf-8?B?OVptMlNNNURpUEJ3NkhQQmRXZXE4VUVaSDUzNjg4MklBWi91UkhaUmpuOEZo?=
 =?utf-8?B?SDVvdXM0TnZCYWNtZmFwd1l2VHpPYmFYZU1RTTJwa1ZvV1gxQUM4K3EzM1pr?=
 =?utf-8?B?S01peG9aclBnNU5FZEh3OG5nb2U4dW41RWJ3MGlJaDlIZVBMZXZFcmI5VWd0?=
 =?utf-8?B?bHk4Q0tYSDlpaHRyZHdBcllScGtrRFkwZkYyMDFzVGRXbEZhV2lGblR0cVZZ?=
 =?utf-8?B?Um1WWE9uQ21Cd20wRWszdE5jcW1BZ0wva09NUjc3bXdHOHpWOVdYTEd1dEgz?=
 =?utf-8?B?SElFL29WaXJDeE5IK1ZZSFZsVkRJZnNjNDdoT1FjTm9iTExSL0tmUFRQY2JE?=
 =?utf-8?B?SmwxVDltcUUwcmtyYzJlQnl4blhMQUQwU0hYSmloSEczdEtRQ0tDRk8vNXVr?=
 =?utf-8?B?UWRDMkpDQ1h5S1NxYlpoRDZDSkFhZGJ1bGhBYXJBbDRxeTVHOG9uVVJiaUJU?=
 =?utf-8?B?UGttRzV3QVVkbHFRUmdXZjh0cXg0ZFpsWWxSV2g5dTNNUGp1elc5QXgyL25j?=
 =?utf-8?B?RG1vYjVlZTRBd0RWSUZEd1FSMU1jc1NpaUxNaEVqWXJzQkpzSThiWmF3QnVX?=
 =?utf-8?B?aTREVEdKd0FING5SZ2VIbVdwQ0hqWGs0QmcwQ09OTVM3WkJ6QXFLRTQxdFFG?=
 =?utf-8?B?V3F6bXNRR0ZYZ0ZOcldzUUZaNjNBd2w5L0Y0RmVDWklwNVhXTUtvZlF6dVM5?=
 =?utf-8?B?Q1cwQkR6QTBGby85QmVvOC9QUkJSSjRVT25rYWpIem95T2NiR3hkcGVibGFI?=
 =?utf-8?B?eklrQm9SNEpTV2ZxVVNqRmNyWTg1Rld4N0J3bEpXR1lvaENqK3FzT1dkRWRh?=
 =?utf-8?B?RldTUHhmMUdSSVJoOUU5VHd5ZW5OYXpZcHlGTkRjeDB3bUZ1SjVjVGJpZSt4?=
 =?utf-8?B?QWNNMEFGOFNmblNwSjRJdlpkL0hhbmpzdjczKzBJVTlmSkd6NkhFdTBCamFX?=
 =?utf-8?B?dVB2VXZndGM0blBJcEg1QzYzczFvZEFCWkNUREFTWlBUQTFqVml5TUpUY0lT?=
 =?utf-8?B?RVFXUVlqaHR6c3dKMnRQRElQMGp2WmU2VXNEMkYvUlhKRFpVSmxOdXVRYXVS?=
 =?utf-8?B?RS9mWFFzN1FVY2ZnVG5CYVVXZ3VwengwY1cyNGZYYU5lOHhUcGtVUWVQb3JW?=
 =?utf-8?B?WHgwNnp6MGJBSUVYZlBsODZPTGFNbEFLdzFad2dmMkVKU3ZjaERldWpvbG5Z?=
 =?utf-8?B?Z01zVXB6bmd5bUQ3Q2dsdkpxMk8ySUIrVXh5U090d3F0ajYwVzRza3hGVDNM?=
 =?utf-8?B?K1VCK2hFM1VVck9ONmdlYlUvRnhLaG5JOTlYQ1R4UlB3dkZXMUphdU94eVBZ?=
 =?utf-8?B?dlU3ZFYxNW9vVmxod1JLRzhJUEdYVDVoQThSOWRPaGthZWZIY0RqK2lYY2Q0?=
 =?utf-8?B?VXZmZ29rTFY1bW02RDJzZz09?=
X-OriginatorOrg: outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 80d8aab2-49ea-4bfe-60a7-08dd80ff93e4
X-MS-Exchange-CrossTenant-AuthSource: GV1P250MB0737.EURP250.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Apr 2025 18:08:54.9381 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa
X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1P250MB0504
Subject: [FFmpeg-devel] [PATCH] avformat: Use ffio_read_size() where
 appropriate
X-BeenThere: ffmpeg-devel@ffmpeg.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: FFmpeg development discussions and patches <ffmpeg-devel.ffmpeg.org>
List-Unsubscribe: <https://ffmpeg.org/mailman/options/ffmpeg-devel>,
 <mailto:ffmpeg-devel-request@ffmpeg.org?subject=unsubscribe>
List-Archive: <https://ffmpeg.org/pipermail/ffmpeg-devel>
List-Post: <mailto:ffmpeg-devel@ffmpeg.org>
List-Help: <mailto:ffmpeg-devel-request@ffmpeg.org?subject=help>
List-Subscribe: <https://ffmpeg.org/mailman/listinfo/ffmpeg-devel>,
 <mailto:ffmpeg-devel-request@ffmpeg.org?subject=subscribe>
Reply-To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org>
Errors-To: ffmpeg-devel-bounces@ffmpeg.org
Sender: "ffmpeg-devel" <ffmpeg-devel-bounces@ffmpeg.org>
Archived-At: <https://master.gitmailbox.com/ffmpegdev/GV1P250MB0737FD96447B4A57699002CE8FB82@GV1P250MB0737.EURP250.PROD.OUTLOOK.COM/>
List-Archive: <https://master.gitmailbox.com/ffmpegdev/>
List-Post: <mailto:ffmpegdev@gitmailbox.com>

--------------GNX1l5Qw5hj9pXaT91JDO35Y
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

Patch attached.

- Andreas

--------------GNX1l5Qw5hj9pXaT91JDO35Y
Content-Type: text/x-patch; charset=UTF-8;
 name="0001-avformat-Use-ffio_read_size-where-appropriate.patch"
Content-Disposition: attachment;
 filename="0001-avformat-Use-ffio_read_size-where-appropriate.patch"
Content-Transfer-Encoding: base64

RnJvbSBlNGNhNDA3Y2EzY2NiZWE0MTc3ZWM4OTA0OGUxYjM4ODMzYjg2ZTM2IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk
dEBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCAyMSBBcHIgMjAyNSAxOTo1NDozOCArMDIwMApTdWJq
ZWN0OiBbUEFUQ0hdIGF2Zm9ybWF0OiBVc2UgZmZpb19yZWFkX3NpemUoKSB3aGVyZSBhcHByb3By
aWF0ZQoKU2lnbmVkLW9mZi1ieTogQW5kcmVhcyBSaGVpbmhhcmR0IDxhbmRyZWFzLnJoZWluaGFy
ZHRAb3V0bG9vay5jb20+Ci0tLQogbGliYXZmb3JtYXQvYXJnb19icnAuYyB8IDM3ICsrKysrKysr
KysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KIGxpYmF2Zm9ybWF0L2ZsYWNkZWMuYyAgfCAg
NSArKy0tLQogbGliYXZmb3JtYXQvaWxiYy5jICAgICB8ICA3ICsrKysrLS0KIGxpYmF2Zm9ybWF0
L2lwbW92aWUuYyAgfCAgNyArKysrKy0tCiBsaWJhdmZvcm1hdC9tbS5jICAgICAgIHwgMTEgKysr
KysrKy0tLS0KIGxpYmF2Zm9ybWF0L21wZWcuYyAgICAgfCAgNiArKystLS0KIGxpYmF2Zm9ybWF0
L214ZmRlYy5jICAgfCAxOSArKysrKysrKysrKysrLS0tLS0tCiBsaWJhdmZvcm1hdC9xY3AuYyAg
ICAgIHwgIDcgKysrKystLQogbGliYXZmb3JtYXQvcm1kZWMuYyAgICB8IDE1ICsrKysrKysrKy0t
LS0tLQogbGliYXZmb3JtYXQvdGFrZGVjLmMgICB8IDEyICsrKysrKy0tLS0tLQogbGliYXZmb3Jt
YXQvdml2aWRhcy5jICB8ICA1ICsrKy0tCiBsaWJhdmZvcm1hdC92cWYuYyAgICAgIHwgMTUgKysr
KysrKy0tLS0tLS0tCiBsaWJhdmZvcm1hdC93YXZkZWMuYyAgIHwgIDcgKysrKystLQogbGliYXZm
b3JtYXQvd3R2ZGVjLmMgICB8ICA3ICsrKysrLS0KIDE0IGZpbGVzIGNoYW5nZWQsIDkxIGluc2Vy
dGlvbnMoKyksIDY5IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpYmF2Zm9ybWF0L2FyZ29f
YnJwLmMgYi9saWJhdmZvcm1hdC9hcmdvX2JycC5jCmluZGV4IDk0YjQwNGI1ZDAuLjlkODk4ZDMx
OTMgMTAwNjQ0Ci0tLSBhL2xpYmF2Zm9ybWF0L2FyZ29fYnJwLmMKKysrIGIvbGliYXZmb3JtYXQv
YXJnb19icnAuYwpAQCAtMjEsNiArMjEsNyBAQAogICovCiAKICNpbmNsdWRlICJhdmZvcm1hdC5o
IgorI2luY2x1ZGUgImF2aW9faW50ZXJuYWwuaCIKICNpbmNsdWRlICJkZW11eC5oIgogI2luY2x1
ZGUgImludGVybmFsLmgiCiAjaW5jbHVkZSAibGliYXZ1dGlsL2ludHJlYWR3cml0ZS5oIgpAQCAt
MTM5LDEyICsxNDAsMTAgQEAgc3RhdGljIGludCByZWFkX2V4dHJhZGF0YShBVkZvcm1hdENvbnRl
eHQgKnMsIGNvbnN0IEFyZ29CUlBTdHJlYW1IZWFkZXIgKmhkciwKIAogICAgIGF2X2Fzc2VydDAo
YnVmc3ogPj0gc2l6ZSk7CiAKLSAgICBpZiAoKHJldCA9IGF2aW9fcmVhZChzLT5wYiwgYnVmLCBz
aXplKSkgPCAwKQorICAgIHJldCA9IGZmaW9fcmVhZF9zaXplKHMtPnBiLCBidWYsIHNpemUpOwor
ICAgIGlmIChyZXQgPCAwKQogICAgICAgICByZXR1cm4gcmV0OwogCi0gICAgaWYgKHJldCAhPSBz
aXplKQotICAgICAgICByZXR1cm4gQVZFUlJPUihFSU8pOwotCiAgICAgcmV0dXJuIDA7CiB9CiAK
QEAgLTE1NSwxMCArMTU0LDkgQEAgc3RhdGljIGludCBhcmdvX2JycF9yZWFkX2hlYWRlcihBVkZv
cm1hdENvbnRleHQgKnMpCiAgICAgQXJnb0JSUERlbXV4Q29udGV4dCAqYnJwID0gcy0+cHJpdl9k
YXRhOwogICAgIHVpbnQ4X3QgYnVmW0ZGTUFYKEJSUF9NSU5fQlVGRkVSX1NJWkUsIEFTRl9NSU5f
QlVGRkVSX1NJWkUpXTsKIAotICAgIGlmICgocmV0ID0gYXZpb19yZWFkKHBiLCBidWYsIEJSUF9G
SUxFX0hFQURFUl9TSVpFKSkgPCAwKQorICAgIHJldCA9IGZmaW9fcmVhZF9zaXplKHBiLCBidWYs
IEJSUF9GSUxFX0hFQURFUl9TSVpFKTsKKyAgICBpZiAocmV0IDwgMCkKICAgICAgICAgcmV0dXJu
IHJldDsKLSAgICBlbHNlIGlmIChyZXQgIT0gQlJQX0ZJTEVfSEVBREVSX1NJWkUpCi0gICAgICAg
IHJldHVybiBBVkVSUk9SKEVJTyk7CiAKICAgICBicnAtPmZoZHIubWFnaWMgICAgICAgPSBBVl9S
TDMyKGJ1ZiArIDApOwogICAgIGJycC0+Zmhkci5udW1fc3RyZWFtcyA9IEFWX1JMMzIoYnVmICsg
NCk7CkBAIC0xODEsMTAgKzE3OSw5IEBAIHN0YXRpYyBpbnQgYXJnb19icnBfcmVhZF9oZWFkZXIo
QVZGb3JtYXRDb250ZXh0ICpzKQogICAgICAgICBpZiAoIShzdCA9IGF2Zm9ybWF0X25ld19zdHJl
YW0ocywgTlVMTCkpKQogICAgICAgICAgICAgcmV0dXJuIEFWRVJST1IoRU5PTUVNKTsKIAotICAg
ICAgICBpZiAoKHJldCA9IGF2aW9fcmVhZChwYiwgYnVmLCBCUlBfU1RSRUFNX0hFQURFUl9TSVpF
KSkgPCAwKQorICAgICAgICByZXQgPSBmZmlvX3JlYWRfc2l6ZShwYiwgYnVmLCBCUlBfU1RSRUFN
X0hFQURFUl9TSVpFKTsKKyAgICAgICAgaWYgKHJldCA8IDApCiAgICAgICAgICAgICByZXR1cm4g
cmV0OwotICAgICAgICBlbHNlIGlmIChyZXQgIT0gQlJQX1NUUkVBTV9IRUFERVJfU0laRSkKLSAg
ICAgICAgICAgIHJldHVybiBBVkVSUk9SKEVJTyk7CiAKICAgICAgICAgaGRyLT5jb2RlY19pZCAg
ICAgICA9IEFWX1JMMzIoYnVmICsgMCk7CiAgICAgICAgIGhkci0+aWQgICAgICAgICAgICAgPSBB
Vl9STDMyKGJ1ZiArIDQpOwpAQCAtMjg2LDEwICsyODMsOSBAQCBzdGF0aWMgaW50IGFyZ29fYnJw
X3JlYWRfaGVhZGVyKEFWRm9ybWF0Q29udGV4dCAqcykKICAgICAgICAgYXZfbG9nKHMsIEFWX0xP
R19UUkFDRSwgIlNlYXJjaGluZyAlZCBibG9ja3MgZm9yIEJBU0YuLi4iLCBCUlBfQkFTRl9MT09L
QUhFQUQpOwogCiAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBCUlBfQkFTRl9MT09LQUhFQUQ7IGkr
KykgewotICAgICAgICAgICAgaWYgKChyZXQgPSBhdmlvX3JlYWQocGIsIGJ1ZiwgQlJQX0JMT0NL
X0hFQURFUl9TSVpFKSkgPCAwKQorICAgICAgICAgICAgcmV0ID0gZmZpb19yZWFkX3NpemUocGIs
IGJ1ZiwgQlJQX0JMT0NLX0hFQURFUl9TSVpFKTsKKyAgICAgICAgICAgIGlmIChyZXQgPCAwKQog
ICAgICAgICAgICAgICAgIHJldHVybiByZXQ7Ci0gICAgICAgICAgICBlbHNlIGlmIChyZXQgIT0g
QlJQX0JMT0NLX0hFQURFUl9TSVpFKQotICAgICAgICAgICAgICAgIHJldHVybiBBVkVSUk9SKEVJ
Tyk7CiAKICAgICAgICAgICAgIGJsay5zdHJlYW1faWQgPSBBVl9STDMyKGJ1ZiArIDApOwogICAg
ICAgICAgICAgYmxrLnN0YXJ0X21zICA9IEFWX1JMMzIoYnVmICsgNCk7CkBAIC0zMTMsMTAgKzMw
OSw5IEBAIHN0YXRpYyBpbnQgYXJnb19icnBfcmVhZF9oZWFkZXIoQVZGb3JtYXRDb250ZXh0ICpz
KQogICAgICAgICBpZiAoYmxrLnNpemUgPCBBU0ZfQ0hVTktfSEVBREVSX1NJWkUpCiAgICAgICAg
ICAgICByZXR1cm4gQVZFUlJPUl9JTlZBTElEREFUQTsKIAotICAgICAgICBpZiAoKHJldCA9IGF2
aW9fcmVhZChwYiwgYnVmLCBBU0ZfQ0hVTktfSEVBREVSX1NJWkUpKSA8IDApCisgICAgICAgIHJl
dCA9IGZmaW9fcmVhZF9zaXplKHBiLCBidWYsIEJSUF9CTE9DS19IRUFERVJfU0laRSk7CisgICAg
ICAgIGlmIChyZXQgPCAwKQogICAgICAgICAgICAgcmV0dXJuIHJldDsKLSAgICAgICAgZWxzZSBp
ZiAocmV0ICE9IEFTRl9DSFVOS19IRUFERVJfU0laRSkKLSAgICAgICAgICAgIHJldHVybiBBVkVS
Uk9SKEVJTyk7CiAKICAgICAgICAgZmZfYXJnb19hc2ZfcGFyc2VfY2h1bmtfaGVhZGVyKCZicnAt
PmJhc2YuY2toZHIsIGJ1Zik7CiAKQEAgLTM1OCwxMCArMzUzLDkgQEAgc3RhdGljIGludCBhcmdv
X2JycF9yZWFkX3BhY2tldChBVkZvcm1hdENvbnRleHQgKnMsIEFWUGFja2V0ICpwa3QpCiAgICAg
QXJnb0FTRkNodW5rSGVhZGVyIGNraGRyOwogICAgIGludCByZXQ7CiAKLSAgICBpZiAoKHJldCA9
IGF2aW9fcmVhZChzLT5wYiwgYnVmLCBCUlBfQkxPQ0tfSEVBREVSX1NJWkUpKSA8IDApCisgICAg
cmV0ID0gZmZpb19yZWFkX3NpemUocy0+cGIsIGJ1ZiwgQlJQX0JMT0NLX0hFQURFUl9TSVpFKTsK
KyAgICBpZiAocmV0IDwgMCkKICAgICAgICAgcmV0dXJuIHJldDsKLSAgICBlbHNlIGlmIChyZXQg
IT0gQlJQX0JMT0NLX0hFQURFUl9TSVpFKQotICAgICAgICByZXR1cm4gQVZFUlJPUihFSU8pOwog
CiAgICAgYmxrLnN0cmVhbV9pZCA9IEFWX1JMMzIoYnVmICsgMCk7CiAgICAgYmxrLnN0YXJ0X21z
ICA9IEFWX1JMMzIoYnVmICsgNCk7CkBAIC0zODAsOCArMzc0LDkgQEAgc3RhdGljIGludCBhcmdv
X2JycF9yZWFkX3BhY2tldChBVkZvcm1hdENvbnRleHQgKnMsIEFWUGFja2V0ICpwa3QpCiAgICAg
ICAgIGlmIChibGsuc2l6ZSA8IEFTRl9DSFVOS19IRUFERVJfU0laRSkKICAgICAgICAgICAgIHJl
dHVybiBBVkVSUk9SX0lOVkFMSUREQVRBOwogCi0gICAgICAgIGlmIChhdmlvX3JlYWQocy0+cGIs
IGJ1ZiwgQVNGX0NIVU5LX0hFQURFUl9TSVpFKSAhPSBBU0ZfQ0hVTktfSEVBREVSX1NJWkUpCi0g
ICAgICAgICAgICByZXR1cm4gQVZFUlJPUl9JTlZBTElEREFUQTsKKyAgICAgICAgcmV0ID0gZmZp
b19yZWFkX3NpemUocy0+cGIsIGJ1ZiwgQVNGX0NIVU5LX0hFQURFUl9TSVpFKTsKKyAgICAgICAg
aWYgKHJldCA8IDApCisgICAgICAgICAgICByZXR1cm4gcmV0OwogCiAgICAgICAgIGZmX2FyZ29f
YXNmX3BhcnNlX2NodW5rX2hlYWRlcigmY2toZHIsIGJ1Zik7CiAKZGlmZiAtLWdpdCBhL2xpYmF2
Zm9ybWF0L2ZsYWNkZWMuYyBiL2xpYmF2Zm9ybWF0L2ZsYWNkZWMuYwppbmRleCAxYzE4NTU2YzNk
Li5mYzkwYzAxZGRmIDEwMDY0NAotLS0gYS9saWJhdmZvcm1hdC9mbGFjZGVjLmMKKysrIGIvbGli
YXZmb3JtYXQvZmxhY2RlYy5jCkBAIC0yNSw2ICsyNSw3IEBACiAjaW5jbHVkZSAibGliYXZjb2Rl
Yy9ieXRlc3RyZWFtLmgiCiAjaW5jbHVkZSAibGliYXZjb2RlYy9mbGFjLmgiCiAjaW5jbHVkZSAi
YXZmb3JtYXQuaCIKKyNpbmNsdWRlICJhdmlvX2ludGVybmFsLmgiCiAjaW5jbHVkZSAiZGVtdXgu
aCIKICNpbmNsdWRlICJmbGFjX3BpY3R1cmUuaCIKICNpbmNsdWRlICJpbnRlcm5hbC5oIgpAQCAt
MTAwLDExICsxMDEsOSBAQCBzdGF0aWMgaW50IGZsYWNfcmVhZF9oZWFkZXIoQVZGb3JtYXRDb250
ZXh0ICpzKQogICAgICAgICAgICAgaWYgKCFidWZmZXIpIHsKICAgICAgICAgICAgICAgICByZXR1
cm4gQVZFUlJPUihFTk9NRU0pOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgcmV0ID0gYXZp
b19yZWFkKHMtPnBiLCBidWZmZXIsIG1ldGFkYXRhX3NpemUpOworICAgICAgICAgICAgcmV0ID0g
ZmZpb19yZWFkX3NpemUocy0+cGIsIGJ1ZmZlciwgbWV0YWRhdGFfc2l6ZSk7CiAgICAgICAgICAg
ICBpZiAocmV0IDwgMCkgewogICAgICAgICAgICAgICAgIFJFVFVSTl9FUlJPUihyZXQpOwotICAg
ICAgICAgICAgfSBlbHNlIGlmIChyZXQgIT0gbWV0YWRhdGFfc2l6ZSkgewotICAgICAgICAgICAg
ICAgIFJFVFVSTl9FUlJPUihBVkVSUk9SX0VPRik7CiAgICAgICAgICAgICB9CiAgICAgICAgICAg
ICBicmVhazsKICAgICAgICAgLyogc2tpcCBtZXRhZGF0YSBibG9jayBmb3IgdW5zdXBwb3J0ZWQg
dHlwZXMgKi8KZGlmZiAtLWdpdCBhL2xpYmF2Zm9ybWF0L2lsYmMuYyBiL2xpYmF2Zm9ybWF0L2ls
YmMuYwppbmRleCA2YzQ0MWMyMWJmLi44ZjBjZDNmZmZmIDEwMDY0NAotLS0gYS9saWJhdmZvcm1h
dC9pbGJjLmMKKysrIGIvbGliYXZmb3JtYXQvaWxiYy5jCkBAIC0yMiw2ICsyMiw3IEBACiAjaW5j
bHVkZSAiY29uZmlnX2NvbXBvbmVudHMuaCIKIAogI2luY2x1ZGUgImF2Zm9ybWF0LmgiCisjaW5j
bHVkZSAiYXZpb19pbnRlcm5hbC5oIgogI2luY2x1ZGUgImRlbXV4LmgiCiAjaW5jbHVkZSAiaW50
ZXJuYWwuaCIKICNpbmNsdWRlICJtdXguaCIKQEAgLTYwLDkgKzYxLDExIEBAIHN0YXRpYyBpbnQg
aWxiY19yZWFkX2hlYWRlcihBVkZvcm1hdENvbnRleHQgKnMpCiAgICAgQVZJT0NvbnRleHQgKnBi
ID0gcy0+cGI7CiAgICAgQVZTdHJlYW0gKnN0OwogICAgIHVpbnQ4X3QgaGVhZGVyWzldOworICAg
IGludCByZXQ7CiAKLSAgICBpZiAoYXZpb19yZWFkKHBiLCBoZWFkZXIsIDkpICE9IDkpCi0gICAg
ICAgIHJldHVybiBBVkVSUk9SX0lOVkFMSUREQVRBOworICAgIHJldCA9IGZmaW9fcmVhZF9zaXpl
KHBiLCBoZWFkZXIsIDkpOworICAgIGlmIChyZXQgPCAwKQorICAgICAgICByZXR1cm4gcmV0Owog
CiAgICAgc3QgPSBhdmZvcm1hdF9uZXdfc3RyZWFtKHMsIE5VTEwpOwogICAgIGlmICghc3QpCmRp
ZmYgLS1naXQgYS9saWJhdmZvcm1hdC9pcG1vdmllLmMgYi9saWJhdmZvcm1hdC9pcG1vdmllLmMK
aW5kZXggMzcwMWJlMjc2Zi4uNWE4YWJkZTg0MiAxMDA2NDQKLS0tIGEvbGliYXZmb3JtYXQvaXBt
b3ZpZS5jCisrKyBiL2xpYmF2Zm9ybWF0L2lwbW92aWUuYwpAQCAtMzUsNiArMzUsNyBAQAogI2lu
Y2x1ZGUgImxpYmF2dXRpbC9jaGFubmVsX2xheW91dC5oIgogI2luY2x1ZGUgImxpYmF2dXRpbC9p
bnRyZWFkd3JpdGUuaCIKICNpbmNsdWRlICJhdmZvcm1hdC5oIgorI2luY2x1ZGUgImF2aW9faW50
ZXJuYWwuaCIKICNpbmNsdWRlICJkZW11eC5oIgogI2luY2x1ZGUgImludGVybmFsLmgiCiAKQEAg
LTYxMSwxMSArNjEyLDEzIEBAIHN0YXRpYyBpbnQgaXBtb3ZpZV9yZWFkX2hlYWRlcihBVkZvcm1h
dENvbnRleHQgKnMpCiAgICAgdW5zaWduZWQgY2hhciBjaHVua19wcmVhbWJsZVtDSFVOS19QUkVB
TUJMRV9TSVpFXTsKICAgICBpbnQgY2h1bmtfdHlwZSwgaTsKICAgICB1aW50OF90IHNpZ25hdHVy
ZV9idWZmZXJbc2l6ZW9mKHNpZ25hdHVyZSldOworICAgIGludCByZXQ7CiAKICAgICBpcG1vdmll
LT5hdmYgPSBzOwogCi0gICAgaWYgKGF2aW9fcmVhZChwYiwgc2lnbmF0dXJlX2J1ZmZlciwgc2l6
ZW9mKHNpZ25hdHVyZV9idWZmZXIpKSAhPSBzaXplb2Yoc2lnbmF0dXJlX2J1ZmZlcikpCi0gICAg
ICAgIHJldHVybiBBVkVSUk9SX0lOVkFMSUREQVRBOworICAgIHJldCA9IGZmaW9fcmVhZF9zaXpl
KHBiLCBzaWduYXR1cmVfYnVmZmVyLCBzaXplb2Yoc2lnbmF0dXJlX2J1ZmZlcikpOworICAgIGlm
IChyZXQgPCAwKQorICAgICAgICByZXR1cm4gcmV0OwogICAgIHdoaWxlIChtZW1jbXAoc2lnbmF0
dXJlX2J1ZmZlciwgc2lnbmF0dXJlLCBzaXplb2Yoc2lnbmF0dXJlKSkpIHsKICAgICAgICAgbWVt
bW92ZShzaWduYXR1cmVfYnVmZmVyLCBzaWduYXR1cmVfYnVmZmVyICsgMSwgc2l6ZW9mKHNpZ25h
dHVyZV9idWZmZXIpIC0gMSk7CiAgICAgICAgIHNpZ25hdHVyZV9idWZmZXJbc2l6ZW9mKHNpZ25h
dHVyZV9idWZmZXIpIC0gMV0gPSBhdmlvX3I4KHBiKTsKZGlmZiAtLWdpdCBhL2xpYmF2Zm9ybWF0
L21tLmMgYi9saWJhdmZvcm1hdC9tbS5jCmluZGV4IDEzNzE3YjMyNTQuLjRlNjlkYTA1MTkgMTAw
NjQ0Ci0tLSBhL2xpYmF2Zm9ybWF0L21tLmMKKysrIGIvbGliYXZmb3JtYXQvbW0uYwpAQCAtMzQs
NiArMzQsNyBAQAogI2luY2x1ZGUgImxpYmF2dXRpbC9jaGFubmVsX2xheW91dC5oIgogI2luY2x1
ZGUgImxpYmF2dXRpbC9pbnRyZWFkd3JpdGUuaCIKICNpbmNsdWRlICJhdmZvcm1hdC5oIgorI2lu
Y2x1ZGUgImF2aW9faW50ZXJuYWwuaCIKICNpbmNsdWRlICJkZW11eC5oIgogI2luY2x1ZGUgImlu
dGVybmFsLmgiCiAKQEAgLTE0NCw4ICsxNDUsOSBAQCBzdGF0aWMgaW50IHJlYWRfcGFja2V0KEFW
Rm9ybWF0Q29udGV4dCAqcywKICAgICAgICAgaWYgKGF2aW9fZmVvZihwYikpCiAgICAgICAgICAg
ICByZXR1cm4gQVZFUlJPUl9FT0Y7CiAKLSAgICAgICAgaWYgKGF2aW9fcmVhZChwYiwgcHJlYW1i
bGUsIE1NX1BSRUFNQkxFX1NJWkUpICE9IE1NX1BSRUFNQkxFX1NJWkUpCi0gICAgICAgICAgICBy
ZXR1cm4gQVZFUlJPUihFSU8pOworICAgICAgICByZXQgPSBmZmlvX3JlYWRfc2l6ZShwYiwgcHJl
YW1ibGUsIE1NX1BSRUFNQkxFX1NJWkUpOworICAgICAgICBpZiAocmV0IDwgMCkKKyAgICAgICAg
ICAgIHJldHVybiByZXQ7CiAKICAgICAgICAgdHlwZSA9IEFWX1JMMTYoJnByZWFtYmxlWzBdKTsK
ICAgICAgICAgbGVuZ3RoID0gQVZfUkwxNigmcHJlYW1ibGVbMl0pOwpAQCAtMTYzLDggKzE2NSw5
IEBAIHN0YXRpYyBpbnQgcmVhZF9wYWNrZXQoQVZGb3JtYXRDb250ZXh0ICpzLAogICAgICAgICAg
ICAgaWYgKChyZXQgPSBhdl9uZXdfcGFja2V0KHBrdCwgbGVuZ3RoICsgTU1fUFJFQU1CTEVfU0la
RSkpIDwgMCkKICAgICAgICAgICAgICAgICByZXR1cm4gcmV0OwogICAgICAgICAgICAgbWVtY3B5
KHBrdC0+ZGF0YSwgcHJlYW1ibGUsIE1NX1BSRUFNQkxFX1NJWkUpOwotICAgICAgICAgICAgaWYg
KGF2aW9fcmVhZChwYiwgcGt0LT5kYXRhICsgTU1fUFJFQU1CTEVfU0laRSwgbGVuZ3RoKSAhPSBs
ZW5ndGgpCi0gICAgICAgICAgICAgICAgcmV0dXJuIEFWRVJST1IoRUlPKTsKKyAgICAgICAgICAg
IHJldCA9IGZmaW9fcmVhZF9zaXplKHBiLCBwa3QtPmRhdGEgKyBNTV9QUkVBTUJMRV9TSVpFLCBs
ZW5ndGgpOworICAgICAgICAgICAgaWYgKHJldCA8IDApCisgICAgICAgICAgICAgICAgcmV0dXJu
IHJldDsKICAgICAgICAgICAgIHBrdC0+c2l6ZSA9IGxlbmd0aCArIE1NX1BSRUFNQkxFX1NJWkU7
CiAgICAgICAgICAgICBwa3QtPnN0cmVhbV9pbmRleCA9IDA7CiAgICAgICAgICAgICBpZiAodHlw
ZSE9TU1fVFlQRV9QQUxFVFRFKQpkaWZmIC0tZ2l0IGEvbGliYXZmb3JtYXQvbXBlZy5jIGIvbGli
YXZmb3JtYXQvbXBlZy5jCmluZGV4IDRkNzMyYWFmODYuLmE3YTJlZjc4ZTYgMTAwNjQ0Ci0tLSBh
L2xpYmF2Zm9ybWF0L21wZWcuYworKysgYi9saWJhdmZvcm1hdC9tcGVnLmMKQEAgLTU2Niw5ICs1
NjYsOSBAQCByZWRvOgogICAgICAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBhdnNfc2Vx
aFs0XSA9IHsgMCwgMCwgMSwgMHhiMCB9OwogICAgICAgICB1bnNpZ25lZCBjaGFyIGJ1Zls4XTsK
IAotICAgICAgICByZXQgPSBhdmlvX3JlYWQocy0+cGIsIGJ1ZiwgOCk7Ci0gICAgICAgIGlmIChy
ZXQgIT0gOCkKLSAgICAgICAgICAgIHJldHVybiBBVkVSUk9SX0lOVkFMSUREQVRBOworICAgICAg
ICByZXQgPSBmZmlvX3JlYWRfc2l6ZShzLT5wYiwgYnVmLCA4KTsKKyAgICAgICAgaWYgKHJldCA8
IDApCisgICAgICAgICAgICByZXR1cm4gcmV0OwogICAgICAgICBhdmlvX3NlZWsocy0+cGIsIC04
LCBTRUVLX0NVUik7CiAgICAgICAgIGlmICghbWVtY21wKGJ1ZiwgYXZzX3NlcWgsIDQpICYmIChi
dWZbNl0gIT0gMCB8fCBidWZbN10gIT0gMSkpCiAgICAgICAgICAgICBjb2RlY19pZCA9IEFWX0NP
REVDX0lEX0NBVlM7CmRpZmYgLS1naXQgYS9saWJhdmZvcm1hdC9teGZkZWMuYyBiL2xpYmF2Zm9y
bWF0L214ZmRlYy5jCmluZGV4IDE5NzhiMmNlYzUuLjBlZWQxM2Q4NTAgMTAwNjQ0Ci0tLSBhL2xp
YmF2Zm9ybWF0L214ZmRlYy5jCisrKyBiL2xpYmF2Zm9ybWF0L214ZmRlYy5jCkBAIC02Miw2ICs2
Miw3IEBACiAjaW5jbHVkZSAibGliYXZ1dGlsL29wdC5oIgogI2luY2x1ZGUgImF2Zm9ybWF0Lmgi
CiAjaW5jbHVkZSAiYXZsYW5ndWFnZS5oIgorI2luY2x1ZGUgImF2aW9faW50ZXJuYWwuaCIKICNp
bmNsdWRlICJkZW11eC5oIgogI2luY2x1ZGUgImludGVybmFsLmgiCiAjaW5jbHVkZSAibXhmLmgi
CkBAIC02NTksNiArNjYwLDcgQEAgc3RhdGljIGludCBteGZfZGVjcnlwdF90cmlwbGV0KEFWRm9y
bWF0Q29udGV4dCAqcywgQVZQYWNrZXQgKnBrdCwgS0xWUGFja2V0ICprbHYKICAgICB1aW50NjRf
dCBwbGFpbnRleHRfc2l6ZTsKICAgICB1aW50OF90IGl2ZWNbMTZdOwogICAgIHVpbnQ4X3QgdG1w
YnVmWzE2XTsKKyAgICBpbnQgcmV0OwogICAgIGludCBpbmRleDsKICAgICBpbnQgYm9keV9zaWQ7
CiAKQEAgLTY5Niw4ICs2OTgsOSBAQCBzdGF0aWMgaW50IG14Zl9kZWNyeXB0X3RyaXBsZXQoQVZG
b3JtYXRDb250ZXh0ICpzLCBBVlBhY2tldCAqcGt0LCBLTFZQYWNrZXQgKmtsdgogICAgIGlmIChz
aXplIDwgMzIgfHwgc2l6ZSAtIDMyIDwgb3JpZ19zaXplIHx8IChpbnQpb3JpZ19zaXplICE9IG9y
aWdfc2l6ZSkKICAgICAgICAgcmV0dXJuIEFWRVJST1JfSU5WQUxJRERBVEE7CiAgICAgYXZpb19y
ZWFkKHBiLCBpdmVjLCAxNik7Ci0gICAgaWYgKGF2aW9fcmVhZChwYiwgdG1wYnVmLCAxNikgIT0g
MTYpCi0gICAgICAgIHJldHVybiBBVkVSUk9SX0lOVkFMSUREQVRBOworICAgIHJldCA9IGZmaW9f
cmVhZF9zaXplKHBiLCB0bXBidWYsIDE2KTsKKyAgICBpZiAocmV0IDwgMTYpCisgICAgICAgIHJl
dHVybiByZXQ7CiAgICAgaWYgKG14Zi0+YWVzYykKICAgICAgICAgYXZfYWVzX2NyeXB0KG14Zi0+
YWVzYywgdG1wYnVmLCB0bXBidWYsIDEsIGl2ZWMsIDEpOwogICAgIGlmIChtZW1jbXAodG1wYnVm
LCBjaGVja3YsIDE2KSkKQEAgLTc1Myw2ICs3NTYsNyBAQCBzdGF0aWMgaW50IG14Zl9yZWFkX3Bh
cnRpdGlvbl9wYWNrKHZvaWQgKmFyZywgQVZJT0NvbnRleHQgKnBiLCBpbnQgdGFnLCBpbnQgc2l6
ZQogICAgIHVpbnQ2NF90IGZvb3Rlcl9wYXJ0aXRpb247CiAgICAgdWludDMyX3QgbmJfZXNzZW5j
ZV9jb250YWluZXJzOwogICAgIHVpbnQ2NF90IHRoaXNfcGFydGl0aW9uOworICAgIGludCByZXQ7
CiAKICAgICBpZiAobXhmLT5wYXJ0aXRpb25zX2NvdW50ID49IElOVF9NQVggLyAyKQogICAgICAg
ICByZXR1cm4gQVZFUlJPUl9JTlZBTElEREFUQTsKQEAgLTgxOCw5ICs4MjIsMTAgQEAgc3RhdGlj
IGludCBteGZfcmVhZF9wYXJ0aXRpb25fcGFjayh2b2lkICphcmcsIEFWSU9Db250ZXh0ICpwYiwg
aW50IHRhZywgaW50IHNpemUKICAgICBpZiAocGFydGl0aW9uLT5ib2R5X29mZnNldCA8IDApCiAg
ICAgICAgIHJldHVybiBBVkVSUk9SX0lOVkFMSUREQVRBOwogCi0gICAgaWYgKGF2aW9fcmVhZChw
Yiwgb3AsIHNpemVvZihVSUQpKSAhPSBzaXplb2YoVUlEKSkgeworICAgIHJldCA9IGZmaW9fcmVh
ZF9zaXplKHBiLCBvcCwgc2l6ZW9mKFVJRCkpOworICAgIGlmIChyZXQgPCAwKSB7CiAgICAgICAg
IGF2X2xvZyhteGYtPmZjLCBBVl9MT0dfRVJST1IsICJGYWlsZWQgcmVhZGluZyBVSURcbiIpOwot
ICAgICAgICByZXR1cm4gQVZFUlJPUl9JTlZBTElEREFUQTsKKyAgICAgICAgcmV0dXJuIHJldDsK
ICAgICB9CiAgICAgbmJfZXNzZW5jZV9jb250YWluZXJzID0gYXZpb19yYjMyKHBiKTsKIApAQCAt
MTU1MiwxMiArMTU1NywxNCBAQCBzdGF0aWMgaW50IG14Zl9yZWFkX2luZGlyZWN0X3ZhbHVlKHZv
aWQgKmFyZywgQVZJT0NvbnRleHQgKnBiLCBpbnQgc2l6ZSkKIHsKICAgICBNWEZUYWdnZWRWYWx1
ZSAqdGFnZ2VkX3ZhbHVlID0gYXJnOwogICAgIHVpbnQ4X3Qga2V5WzE3XTsKKyAgICBpbnQgcmV0
OwogCiAgICAgaWYgKHNpemUgPD0gMTcpCiAgICAgICAgIHJldHVybiAwOwogCi0gICAgaWYgKGF2
aW9fcmVhZChwYiwga2V5LCAxNykgIT0gMTcpCi0gICAgICAgIHJldHVybiBBVkVSUk9SX0lOVkFM
SUREQVRBOworICAgIHJldCA9IGZmaW9fcmVhZF9zaXplKHBiLCBrZXksIDE3KTsKKyAgICBpZiAo
cmV0IDwgMCkKKyAgICAgICAgcmV0dXJuIHJldDsKICAgICAvKiBUT0RPOiBoYW5kbGUgb3RoZXIg
dHlwZXMgb2Ygb2YgaW5kaXJlY3QgdmFsdWVzICovCiAgICAgaWYgKG1lbWNtcChrZXksIG14Zl9p
bmRpcmVjdF92YWx1ZV91dGYxNmxlLCAxNykgPT0gMCkgewogICAgICAgICByZXR1cm4gbXhmX3Jl
YWRfdXRmMTZsZV9zdHJpbmcocGIsIHNpemUgLSAxNywgJnRhZ2dlZF92YWx1ZS0+dmFsdWUpOwpk
aWZmIC0tZ2l0IGEvbGliYXZmb3JtYXQvcWNwLmMgYi9saWJhdmZvcm1hdC9xY3AuYwppbmRleCAx
M2E0NzlhMTFlLi4yODhlMzIxZTg5IDEwMDY0NAotLS0gYS9saWJhdmZvcm1hdC9xY3AuYworKysg
Yi9saWJhdmZvcm1hdC9xY3AuYwpAQCAtMzAsNiArMzAsNyBAQAogI2luY2x1ZGUgImxpYmF2dXRp
bC9jaGFubmVsX2xheW91dC5oIgogI2luY2x1ZGUgImxpYmF2dXRpbC9pbnRyZWFkd3JpdGUuaCIK
ICNpbmNsdWRlICJhdmZvcm1hdC5oIgorI2luY2x1ZGUgImF2aW9faW50ZXJuYWwuaCIKICNpbmNs
dWRlICJkZW11eC5oIgogI2luY2x1ZGUgInJpZmYuaCIKIApAQCAtOTQsNiArOTUsNyBAQCBzdGF0
aWMgaW50IHFjcF9yZWFkX2hlYWRlcihBVkZvcm1hdENvbnRleHQgKnMpCiAgICAgUUNQQ29udGV4
dCAgICAqYyAgPSBzLT5wcml2X2RhdGE7CiAgICAgQVZTdHJlYW0gICAgICAqc3QgPSBhdmZvcm1h
dF9uZXdfc3RyZWFtKHMsIE5VTEwpOwogICAgIHVpbnQ4X3QgICAgICAgYnVmWzE2XTsKKyAgICBp
bnQgICAgICAgICAgIHJldDsKICAgICBpbnQgICAgICAgICAgIGk7CiAgICAgdW5zaWduZWQgICAg
ICBuYl9yYXRlczsKIApAQCAtMTA1LDggKzEwNyw5IEBAIHN0YXRpYyBpbnQgcWNwX3JlYWRfaGVh
ZGVyKEFWRm9ybWF0Q29udGV4dCAqcykKIAogICAgIHN0LT5jb2RlY3Bhci0+Y29kZWNfdHlwZSA9
IEFWTUVESUFfVFlQRV9BVURJTzsKICAgICBzdC0+Y29kZWNwYXItPmNoX2xheW91dCAgPSAoQVZD
aGFubmVsTGF5b3V0KUFWX0NIQU5ORUxfTEFZT1VUX01PTk87Ci0gICAgaWYgKGF2aW9fcmVhZChw
YiwgYnVmLCAxNikgIT0gMTYpCi0gICAgICAgIHJldHVybiBBVkVSUk9SX0lOVkFMSUREQVRBOwor
ICAgIHJldCA9IGZmaW9fcmVhZF9zaXplKHBiLCBidWYsIDE2KTsKKyAgICBpZiAocmV0IDwgMCkK
KyAgICAgICAgcmV0dXJuIHJldDsKICAgICBpZiAoaXNfcWNlbHBfMTNrX2d1aWQoYnVmKSkgewog
ICAgICAgICBzdC0+Y29kZWNwYXItPmNvZGVjX2lkID0gQVZfQ09ERUNfSURfUUNFTFA7CiAgICAg
fSBlbHNlIGlmICghbWVtY21wKGJ1ZiwgZ3VpZF9ldnJjLCAxNikpIHsKZGlmZiAtLWdpdCBhL2xp
YmF2Zm9ybWF0L3JtZGVjLmMgYi9saWJhdmZvcm1hdC9ybWRlYy5jCmluZGV4IDc5M2IyOWJkMTgu
Ljg1NjQzYTM1OGYgMTAwNjQ0Ci0tLSBhL2xpYmF2Zm9ybWF0L3JtZGVjLmMKKysrIGIvbGliYXZm
b3JtYXQvcm1kZWMuYwpAQCAtMTg4LDggKzE4OCw5IEBAIHN0YXRpYyBpbnQgcm1fcmVhZF9hdWRp
b19zdHJlYW1faW5mbyhBVkZvcm1hdENvbnRleHQgKnMsIEFWSU9Db250ZXh0ICpwYiwKICAgICAg
ICAgc3QtPmNvZGVjcGFyLT5jaF9sYXlvdXQubmJfY2hhbm5lbHMgPSBhdmlvX3JiMTYocGIpOwog
ICAgICAgICBpZiAodmVyc2lvbiA9PSA1KSB7CiAgICAgICAgICAgICBhc3QtPmRlaW50X2lkID0g
YXZpb19ybDMyKHBiKTsKLSAgICAgICAgICAgIGlmIChhdmlvX3JlYWQocGIsIGJ1ZiwgNCkgIT0g
NCkKLSAgICAgICAgICAgICAgICByZXR1cm4gQVZFUlJPUl9JTlZBTElEREFUQTsKKyAgICAgICAg
ICAgIHJldCA9IGZmaW9fcmVhZF9zaXplKHBiLCBidWYsIDQpOworICAgICAgICAgICAgaWYgKHJl
dCA8IDApCisgICAgICAgICAgICAgICAgcmV0dXJuIHJldDsKICAgICAgICAgICAgIGJ1Zls0XSA9
IDA7CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBBVl9XTDMyKGJ1ZiwgMCk7CkBAIC04
MTYsMTAgKzgxNywxMSBAQCBzdGF0aWMgaW50IHJtX2Fzc2VtYmxlX3ZpZGVvX2ZyYW1lKEFWRm9y
bWF0Q29udGV4dCAqcywgQVZJT0NvbnRleHQgKnBiLAogICAgICAgICBwa3QtPmRhdGFbMF0gPSAw
OwogICAgICAgICBBVl9XTDMyKHBrdC0+ZGF0YSArIDEsIDEpOwogICAgICAgICBBVl9XTDMyKHBr
dC0+ZGF0YSArIDUsIDApOwotICAgICAgICBpZiAoKHJldCA9IGF2aW9fcmVhZChwYiwgcGt0LT5k
YXRhICsgOSwgbGVuKSkgIT0gbGVuKSB7CisgICAgICAgIHJldCA9IGZmaW9fcmVhZF9zaXplKHBi
LCBwa3QtPmRhdGEgKyA5LCBsZW4pOworICAgICAgICBpZiAocmV0IDwgMCkgewogICAgICAgICAg
ICAgYXZfcGFja2V0X3VucmVmKHBrdCk7CiAgICAgICAgICAgICBhdl9sb2cocywgQVZfTE9HX0VS
Uk9SLCAiRmFpbGVkIHRvIHJlYWQgJWQgYnl0ZXNcbiIsIGxlbik7Ci0gICAgICAgICAgICByZXR1
cm4gcmV0IDwgMCA/IHJldCA6IEFWRVJST1IoRUlPKTsKKyAgICAgICAgICAgIHJldHVybiByZXQ7
CiAgICAgICAgIH0KICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQpAQCAtODU2LDggKzg1OCw5IEBA
IHN0YXRpYyBpbnQgcm1fYXNzZW1ibGVfdmlkZW9fZnJhbWUoQVZGb3JtYXRDb250ZXh0ICpzLCBB
VklPQ29udGV4dCAqcGIsCiAgICAgICAgIGF2X2xvZyhzLCBBVl9MT0dfRVJST1IsICJvdXRzaWRl
IHZpZGVvYnVmc2l6ZVxuIik7CiAgICAgICAgIHJldHVybiAxOwogICAgIH0KLSAgICBpZiAoYXZp
b19yZWFkKHBiLCB2c3QtPnBrdC5kYXRhICsgdnN0LT52aWRlb2J1ZnBvcywgbGVuKSAhPSBsZW4p
Ci0gICAgICAgIHJldHVybiBBVkVSUk9SKEVJTyk7CisgICAgcmV0ID0gZmZpb19yZWFkX3NpemUo
cGIsIHZzdC0+cGt0LmRhdGEgKyB2c3QtPnZpZGVvYnVmcG9zLCBsZW4pOworICAgIGlmIChyZXQg
PCAwKQorICAgICAgICByZXR1cm4gcmV0OwogICAgIHZzdC0+dmlkZW9idWZwb3MgKz0gbGVuOwog
ICAgIHJtLT5yZW1haW5pbmdfbGVuLT0gbGVuOwogCmRpZmYgLS1naXQgYS9saWJhdmZvcm1hdC90
YWtkZWMuYyBiL2xpYmF2Zm9ybWF0L3Rha2RlYy5jCmluZGV4IGU2ZGUyNjliMDUuLmI4Zjc2YWFh
NjcgMTAwNjQ0Ci0tLSBhL2xpYmF2Zm9ybWF0L3Rha2RlYy5jCisrKyBiL2xpYmF2Zm9ybWF0L3Rh
a2RlYy5jCkBAIC05NiwxMCArOTYsMTAgQEAgc3RhdGljIGludCB0YWtfcmVhZF9oZWFkZXIoQVZG
b3JtYXRDb250ZXh0ICpzKQogICAgICAgICAgICAgbWVtc2V0KGJ1ZmZlciArIHNpemUgLSAzLCAw
LCBBVl9JTlBVVF9CVUZGRVJfUEFERElOR19TSVpFKTsKIAogICAgICAgICAgICAgZmZpb19pbml0
X2NoZWNrc3VtKHBiLCB0YWtfY2hlY2tfY3JjLCAweENFMDRCN1UpOwotICAgICAgICAgICAgcmV0
ID0gYXZpb19yZWFkKHBiLCBidWZmZXIsIHNpemUgLSAzKTsKLSAgICAgICAgICAgIGlmIChyZXQg
IT0gc2l6ZSAtIDMpIHsKKyAgICAgICAgICAgIHJldCA9IGZmaW9fcmVhZF9zaXplKHBiLCBidWZm
ZXIsIHNpemUgLSAzKTsKKyAgICAgICAgICAgIGlmIChyZXQgPCAwKSB7CiAgICAgICAgICAgICAg
ICAgYXZfZnJlZXAoJmJ1ZmZlcik7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIHJldCA8IDAgPyBy
ZXQgOiBBVkVSUk9SX0lOVkFMSUREQVRBOworICAgICAgICAgICAgICAgIHJldHVybiByZXQ7CiAg
ICAgICAgICAgICB9CiAgICAgICAgICAgICBpZiAoZmZpb19nZXRfY2hlY2tzdW0ocy0+cGIpICE9
IGF2aW9fcmIyNChwYikpIHsKICAgICAgICAgICAgICAgICBhdl9sb2cocywgQVZfTE9HX0VSUk9S
LCAiJWQgbWV0YWRhdGEgYmxvY2sgQ1JDIGVycm9yLlxuIiwgdHlwZSk7CkBAIC0xMTcsOSArMTE3
LDkgQEAgc3RhdGljIGludCB0YWtfcmVhZF9oZWFkZXIoQVZGb3JtYXRDb250ZXh0ICpzKQogICAg
ICAgICAgICAgaWYgKHNpemUgIT0gMTkpCiAgICAgICAgICAgICAgICAgcmV0dXJuIEFWRVJST1Jf
SU5WQUxJRERBVEE7CiAgICAgICAgICAgICBmZmlvX2luaXRfY2hlY2tzdW0ocGIsIHRha19jaGVj
a19jcmMsIDB4Q0UwNEI3VSk7Ci0gICAgICAgICAgICByZXQgPSBhdmlvX3JlYWQocGIsIG1kNSwg
MTYpOwotICAgICAgICAgICAgaWYgKHJldCAhPSAxNikKLSAgICAgICAgICAgICAgICByZXR1cm4g
cmV0IDwgMCA/IHJldCA6IEFWRVJST1JfSU5WQUxJRERBVEE7CisgICAgICAgICAgICByZXQgPSBm
ZmlvX3JlYWRfc2l6ZShwYiwgbWQ1LCAxNik7CisgICAgICAgICAgICBpZiAocmV0IDwgMCkKKyAg
ICAgICAgICAgICAgICByZXR1cm4gcmV0OwogICAgICAgICAgICAgaWYgKGZmaW9fZ2V0X2NoZWNr
c3VtKHMtPnBiKSAhPSBhdmlvX3JiMjQocGIpKSB7CiAgICAgICAgICAgICAgICAgYXZfbG9nKHMs
IEFWX0xPR19FUlJPUiwgIk1ENSBtZXRhZGF0YSBibG9jayBDUkMgZXJyb3IuXG4iKTsKICAgICAg
ICAgICAgICAgICBpZiAocy0+ZXJyb3JfcmVjb2duaXRpb24gJiBBVl9FRl9FWFBMT0RFKQpkaWZm
IC0tZ2l0IGEvbGliYXZmb3JtYXQvdml2aWRhcy5jIGIvbGliYXZmb3JtYXQvdml2aWRhcy5jCmlu
ZGV4IGJlYzRhZDdjZWMuLmRkMjU1MzkyMDEgMTAwNjQ0Ci0tLSBhL2xpYmF2Zm9ybWF0L3Zpdmlk
YXMuYworKysgYi9saWJhdmZvcm1hdC92aXZpZGFzLmMKQEAgLTU2Nyw4ICs1NjcsOSBAQCBzdGF0
aWMgaW50IHZpdl9yZWFkX2hlYWRlcihBVkZvcm1hdENvbnRleHQgKnMpCiAgICAgdiA9IGF2aW9f
cjgocGIpOwogICAgIGF2aW9fc2VlayhwYiwgdiwgU0VFS19DVVIpOwogCi0gICAgaWYgKGF2aW9f
cmVhZChwYiwga2V5YnVmZmVyLCAxODcpICE9IDE4NykKLSAgICAgICAgcmV0dXJuIEFWRVJST1Jf
SU5WQUxJRERBVEE7CisgICAgcmV0ID0gZmZpb19yZWFkX3NpemUocGIsIGtleWJ1ZmZlciwgMTg3
KTsKKyAgICBpZiAocmV0IDwgMCkKKyAgICAgICAgcmV0dXJuIHJldDsKICAgICBrZXkgPSBkZWNv
ZGVfa2V5KGtleWJ1ZmZlcik7CiAgICAgdml2LT5zYl9rZXkgPSBrZXk7CiAKZGlmZiAtLWdpdCBh
L2xpYmF2Zm9ybWF0L3ZxZi5jIGIvbGliYXZmb3JtYXQvdnFmLmMKaW5kZXggZmJlNTQ3MzljZC4u
MDUzNzIwZWEyMiAxMDA2NDQKLS0tIGEvbGliYXZmb3JtYXQvdnFmLmMKKysrIGIvbGliYXZmb3Jt
YXQvdnFmLmMKQEAgLTIwLDYgKzIwLDcgQEAKICAqLwogCiAjaW5jbHVkZSAiYXZmb3JtYXQuaCIK
KyNpbmNsdWRlICJhdmlvX2ludGVybmFsLmgiCiAjaW5jbHVkZSAiZGVtdXguaCIKICNpbmNsdWRl
ICJpbnRlcm5hbC5oIgogI2luY2x1ZGUgImxpYmF2dXRpbC9pbnRyZWFkd3JpdGUuaCIKQEAgLTY1
LDEwICs2NiwxMCBAQCBzdGF0aWMgaW50IGFkZF9tZXRhZGF0YShBVkZvcm1hdENvbnRleHQgKnMs
IHVpbnQzMl90IHRhZywKICAgICBpZiAoIWJ1ZikKICAgICAgICAgcmV0dXJuIEFWRVJST1IoRU5P
TUVNKTsKIAotICAgIHJldCA9IGF2aW9fcmVhZChzLT5wYiwgYnVmLCBsZW4pOwotICAgIGlmIChy
ZXQgPCAwIHx8IHJldCAhPSBsZW4pIHsKKyAgICByZXQgPSBmZmlvX3JlYWRfc2l6ZShzLT5wYiwg
YnVmLCBsZW4pOworICAgIGlmIChyZXQgPCAwKSB7CiAgICAgICAgIGF2X2ZyZWUoYnVmKTsKLSAg
ICAgICAgcmV0dXJuIHJldCA8IDAgPyByZXQgOiBBVkVSUk9SX0lOVkFMSUREQVRBOworICAgICAg
ICByZXR1cm4gcmV0OwogICAgIH0KICAgICBidWZbbGVuXSA9IDA7CiAgICAgQVZfV0wzMihrZXks
IHRhZyk7CkBAIC0yNTksMTEgKzI2MCw5IEBAIHN0YXRpYyBpbnQgdnFmX3JlYWRfcGFja2V0KEFW
Rm9ybWF0Q29udGV4dCAqcywgQVZQYWNrZXQgKnBrdCkKIAogICAgIHBrdC0+ZGF0YVswXSA9IDgg
LSBjLT5yZW1haW5pbmdfYml0czsgLy8gTnVtYmVyIG9mIGJpdHMgdG8gc2tpcAogICAgIHBrdC0+
ZGF0YVsxXSA9IGMtPmxhc3RfZnJhbWVfYml0czsKLSAgICByZXQgPSBhdmlvX3JlYWQocy0+cGIs
IHBrdC0+ZGF0YSsyLCBzaXplKTsKLQotICAgIGlmIChyZXQgIT0gc2l6ZSkgewotICAgICAgICBy
ZXR1cm4gQVZFUlJPUihFSU8pOwotICAgIH0KKyAgICByZXQgPSBmZmlvX3JlYWRfc2l6ZShzLT5w
YiwgcGt0LT5kYXRhICsgMiwgc2l6ZSk7CisgICAgaWYgKHJldCA8IDApCisgICAgICAgIHJldHVy
biByZXQ7CiAKICAgICBjLT5sYXN0X2ZyYW1lX2JpdHMgPSBwa3QtPmRhdGFbc2l6ZSsxXTsKICAg
ICBjLT5yZW1haW5pbmdfYml0cyAgPSAoc2l6ZSA8PCAzKSAtIGMtPmZyYW1lX2JpdF9sZW4gKyBj
LT5yZW1haW5pbmdfYml0czsKZGlmZiAtLWdpdCBhL2xpYmF2Zm9ybWF0L3dhdmRlYy5jIGIvbGli
YXZmb3JtYXQvd2F2ZGVjLmMKaW5kZXggYWU2ZmYwZTAyMi4uZGM3ZTQ5YWJjNCAxMDA2NDQKLS0t
IGEvbGliYXZmb3JtYXQvd2F2ZGVjLmMKKysrIGIvbGliYXZmb3JtYXQvd2F2ZGVjLmMKQEAgLTg3
Miw5ICs4NzIsMTIgQEAgc3RhdGljIGludCB3NjRfcmVhZF9oZWFkZXIoQVZGb3JtYXRDb250ZXh0
ICpzKQogICAgIFdBVkRlbXV4Q29udGV4dCAqd2F2ID0gcy0+cHJpdl9kYXRhOwogICAgIEFWU3Ry
ZWFtICpzdDsKICAgICB1aW50OF90IGd1aWRbMTZdOwotICAgIGludCByZXQ7CisgICAgaW50IHJl
dCA9IGZmaW9fcmVhZF9zaXplKHBiLCBndWlkLCAxNik7CisKKyAgICBpZiAocmV0IDwgMCkKKyAg
ICAgICAgcmV0dXJuIHJldDsKIAotICAgIGlmIChhdmlvX3JlYWQocGIsIGd1aWQsIDE2KSAhPSAx
NiB8fCBtZW1jbXAoZ3VpZCwgZmZfdzY0X2d1aWRfcmlmZiwgMTYpKQorICAgIGlmIChtZW1jbXAo
Z3VpZCwgZmZfdzY0X2d1aWRfcmlmZiwgMTYpKQogICAgICAgICByZXR1cm4gQVZFUlJPUl9JTlZB
TElEREFUQTsKIAogICAgIC8qIHJpZmYgKyB3YXZlICsgZm10ICsgc2l6ZXMgKi8KZGlmZiAtLWdp
dCBhL2xpYmF2Zm9ybWF0L3d0dmRlYy5jIGIvbGliYXZmb3JtYXQvd3R2ZGVjLmMKaW5kZXggMjFj
OTY0OTg2OS4uOWQyNmUzNWUyMiAxMDA2NDQKLS0tIGEvbGliYXZmb3JtYXQvd3R2ZGVjLmMKKysr
IGIvbGliYXZmb3JtYXQvd3R2ZGVjLmMKQEAgLTM0LDYgKzM0LDcgQEAKICNpbmNsdWRlICJsaWJh
dnV0aWwvbWVtLmgiCiAjaW5jbHVkZSAibGliYXZ1dGlsL3RpbWVfaW50ZXJuYWwuaCIKICNpbmNs
dWRlICJhdmZvcm1hdC5oIgorI2luY2x1ZGUgImF2aW9faW50ZXJuYWwuaCIKICNpbmNsdWRlICJk
ZW11eC5oIgogI2luY2x1ZGUgImludGVybmFsLmgiCiAjaW5jbHVkZSAid3R2LmgiCkBAIC03NzQs
NiArNzc1LDcgQEAgc3RhdGljIGludCBwYXJzZV9jaHVua3MoQVZGb3JtYXRDb250ZXh0ICpzLCBp
bnQgbW9kZSwgaW50NjRfdCBzZWVrdHMsIGludCAqbGVuX3AKIHsKICAgICBXdHZDb250ZXh0ICp3
dHYgPSBzLT5wcml2X2RhdGE7CiAgICAgQVZJT0NvbnRleHQgKnBiID0gd3R2LT5wYjsKKyAgICBp
bnQgcmV0OwogICAgIHdoaWxlICghYXZpb19mZW9mKHBiKSkgewogICAgICAgICBmZl9hc2ZfZ3Vp
ZCBnOwogICAgICAgICBpbnQgbGVuLCBzaWQsIGNvbnN1bWVkOwpAQCAtODQ2LDggKzg0OCw5IEBA
IHN0YXRpYyBpbnQgcGFyc2VfY2h1bmtzKEFWRm9ybWF0Q29udGV4dCAqcywgaW50IG1vZGUsIGlu
dDY0X3Qgc2Vla3RzLCBpbnQgKmxlbl9wCiAgICAgICAgICAgICAgICAgfQogCiAgICAgICAgICAg
ICAgICAgYnVmX3NpemUgPSBGRk1JTihsZW4gLSBjb25zdW1lZCwgc2l6ZW9mKGJ1ZikpOwotICAg
ICAgICAgICAgICAgIGlmIChhdmlvX3JlYWQocGIsIGJ1ZiwgYnVmX3NpemUpICE9IGJ1Zl9zaXpl
KQotICAgICAgICAgICAgICAgICAgICByZXR1cm4gQVZFUlJPUl9JTlZBTElEREFUQTsKKyAgICAg
ICAgICAgICAgICByZXQgPSBmZmlvX3JlYWRfc2l6ZShwYiwgYnVmLCBidWZfc2l6ZSk7CisgICAg
ICAgICAgICAgICAgaWYgKHJldCA8IDApCisgICAgICAgICAgICAgICAgICAgIHJldHVybiByZXQ7
CiAgICAgICAgICAgICAgICAgY29uc3VtZWQgKz0gYnVmX3NpemU7CiAgICAgICAgICAgICAgICAg
ZmZfcGFyc2VfbXBlZzJfZGVzY3JpcHRvcihzLCBzdCwgMCwgJnBidWYsIGJ1ZiArIGJ1Zl9zaXpl
LCBOVUxMLCAwLCAwLCBOVUxMKTsKICAgICAgICAgICAgIH0KLS0gCjIuNDUuMgoK

--------------GNX1l5Qw5hj9pXaT91JDO35Y
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

--------------GNX1l5Qw5hj9pXaT91JDO35Y--