From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id 92C4445D6F for ; Mon, 4 Dec 2023 21:15:52 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 110B568C5BA; Mon, 4 Dec 2023 23:15:51 +0200 (EET) Received: from mail-pl1-f174.google.com (mail-pl1-f174.google.com [209.85.214.174]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 5E71168C5BA for ; Mon, 4 Dec 2023 23:15:45 +0200 (EET) Received: by mail-pl1-f174.google.com with SMTP id d9443c01a7336-1cfabcbda7bso24358675ad.0 for ; Mon, 04 Dec 2023 13:15:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1701724542; x=1702329342; darn=ffmpeg.org; h=content-transfer-encoding:in-reply-to:autocrypt:from :content-language:references:to:subject:user-agent:mime-version:date :message-id:from:to:cc:subject:date:message-id:reply-to; bh=C/97E2MaraN37B9T1egqN+N9dYCGmYtbOkgFu1ot48Y=; b=JuguX9t3Hn2sKeG6KVf0wvZxk8HrG+ZLcjmAYVxnxzoTvZhnyOaQGlASduVbZaOTxQ Q77SsLi3S7pagjPkDgX3wx0Dihy4qj2Ri5txuj0qSIDTHxvTWNNEhlTjnZ7HbrxIFY1G gvtXLGWHRNBnQvfxF8OvBqqGKfkKxf9JABq6gT7udytTdmaj/XDy7O/+Kmg0jVPQGo+2 QRolxkRSI172jvetT7xwZIC3ekIJkYHJ3qcrpiOpCg19CBjxnLdsSSgsVHQBW01CYDm3 avk+680FsK6thcxBpDNFZqG1+bznPZkDkQC99TpgKJeMI6dwWaPbjc9C5svVUksRRPeV zH6A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701724542; x=1702329342; h=content-transfer-encoding:in-reply-to:autocrypt:from :content-language:references:to:subject:user-agent:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=C/97E2MaraN37B9T1egqN+N9dYCGmYtbOkgFu1ot48Y=; b=RCJdPXlNN9O3xHK9xDjhYag81F68N/3P5BOfkVOh6a3v64Ke3/hnW+nai1r9OgpZVS NldAD57mFFZvo5jVc35PRAWwNDy9WUX1cJDwHQFfpvW/ZGzoTvugChiJzLc2dNhlCcht S5miEzt4murpjEjoLYzuUOZW2wA+jRGGwZesw20DaUah1hChR/E0B72KTCjjxyLXJzmV Z6p1T6bh+vozXEiee7m6wxWcHNA0lMaGRqu27Ilg2NYzCWF0XPtGaxKZN955Qf+CJ008 97HiR0NsjRSsCCECKJh1G9YTBAaYESUyIDJIEQ40I/rFAuA3JajtrJXJS9Xz1wqTvf0J i96w== X-Gm-Message-State: AOJu0YwZvo4Ek06jl1tpqcgjrYBNmp2ySkRt3bbWdlmkfh1x5+2+oTpb Lq7koHIlvfzjxW+lfcqbvT++q7Cz/Ic= X-Google-Smtp-Source: AGHT+IF4rD+g8epPGPuGvJgV7fDSnFBxQAPBYxjCQQTXINzXyO1+Wjjg+UNxVMyvvk4WNQSkK48+ow== X-Received: by 2002:a17:902:a388:b0:1d0:6ffd:6114 with SMTP id x8-20020a170902a38800b001d06ffd6114mr379809pla.54.1701724542144; Mon, 04 Dec 2023 13:15:42 -0800 (PST) Received: from [192.168.0.16] (host197.190-225-105.telecom.net.ar. [190.225.105.197]) by smtp.gmail.com with ESMTPSA id t9-20020a170902e84900b001cc131c65besm8883179plg.168.2023.12.04.13.15.40 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 04 Dec 2023 13:15:41 -0800 (PST) Message-ID: Date: Mon, 4 Dec 2023 18:16:15 -0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird To: ffmpeg-devel@ffmpeg.org References: Content-Language: en-US From: James Almer Autocrypt: addr=jamrial@gmail.com; keydata= xsBNBFjZtqABCADLW+vdEoZaJZDsIO6geYFTOcn1unsEHefj9zn+3oTHlDFFzO47mzHsSfbK 9JE2xpOJEVnC8FAF5Sayi/pVwV+mtQUV3n5dgVeVBYF9GUQwOGFCpK8X54RRqhkgknbunOEE 0CtgAJgmpFmmmHgq02GvEspx1h/rh4apqwQR6QX4Favb+x9+i9ytVpwVcBX94vo2toyP7h/K BWfadQmb8ltgE1kshfg+SQs/H5bTV5Z1DuEASf02ZL/1qYB/sdTgWPLv9XMUHHsRFmMY8TMx wJSkP+Af3AiYQPJYz1B1D4tt98T/NoiVdin10zATakPjV8hXaobuRmxgakkUASXudydDABEB AAHNH0phbWVzIEFsbWVyIDxqYW1yaWFsQGdtYWlsLmNvbT7CwJIEEwEIADwCGwMGCwkIBwMC BhUIAgkKCwQWAgMBAh4BAheAFiEEd1EujP2UoWlX5pp6FGMBrXN2WeAFAmJoLUUCGQEACgkQ FGMBrXN2WeAFVQf9GtGhniRs1PzNUOgJktCnv6j4BbLieaIPYPEFXKDHOgjqQE2zVMYXnoXl Jam928ii902a8OY06r9ywn/R8ApD1/3NY/v64O71CY9scz5XyH2au8wIZ6HwFy3/f7sqjdGD uctY8Qs7rjT7NkoC5lmgMu2v2k03dGtM9AAf5AK5gU+H0EUw7vmKKiXzUqt5kvBuf4CEwXvH AQT1SMJ52rIlDWB7FQFyZeUbOAK2IgY/KNedfK6nsgd/eQVnlofPd2XoddE7kP6iys7jJefw DD3g3rZyDTq7in5dyk5glaNpWZpbHGBs+9SCYLnfQ8XvWqPFOD+gj0plamKANgOvavKTxM7A TQRY2bagAQgA69YtILj8kYxmqPr/M8+MXT7wVoOWVW9lvSmPquCELaDy/NIS7D06VC5EuE/6 JlJXZMTn37NLlyWhzwOgXuXw5w2tyoQQBuvqGiXJijuXwXH7HKdzrc6rpYtAqt5w05hzNrFS KrS0izG64VpWrfproy3BsL+8TBm9brLhhNPynVRqVukbbGzlATTzNQGZ14TTi2/dL6DkMQnM qn4jX9UEe4GdGQBP50bUJSSmeiIkyNLWA+znuN2PZEz930ZwNrF9GtDVw7mzcmpCZ7spldE2 tutbpy9D1bIqxyqBrYDSezyzL2adR1qgHyOTMCHg2AYNkrIQHrSyJxKTpZ1/hqOp8wARAQAB wsBfBBgBAgAJBQJY2bagAhsMAAoJEBRjAa1zdlnghekH/0Yb0iYJ74oID2f/Fj+AJKS2ekQF P2xOr8lpGzgp/+yWUvPtqbX0A33anBJdYwxaAC0NataX3tfZ+oJkzXqfmqhIHMPYHdZesJA2 Bk9hU/33mDl5s5U66/z0uelWzwKVHoQ2O6or4+qF3HJFSJLCe9uvWJ3zXf9F342Ftj73sfx+ 3xkw/IXsN1RqbYqDlzpoEQ99SIEfY/8Jjwnd3sIPfqkuyeaYfe6GJDqKawdCEP1oRRlbXEAp TJgYz8r3nPhGv9cdHNDCk44ISbsqVuxIEnLqi4fTPZaGupiQhT+srl268TTAp2TQW7+6Ce/b NPQorMquzS/LZoyALpmsYi/miMc= In-Reply-To: Subject: Re: [FFmpeg-devel] [PATCH 1/2] avformat/flvenc: support enhanced flv PacketTypeMetadata X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: T24gMTEvMTUvMjAyMyAxMTo0MCBBTSwgemh1cGVuZ2ZlaSB2aWEgZmZtcGVnLWRldmVsIHdyb3Rl Ogo+IEZyb206IFpodSBQZW5nZmVpIDw0MTEyOTQ5NjJAcXEuY29tPgo+IAo+IFNpZ25lZC1vZmYt Ynk6IFpodSBQZW5nZmVpIDw0MTEyOTQ5NjJAcXEuY29tPgo+IC0tLQo+ICAgbGliYXZmb3JtYXQv Zmx2ZW5jLmMgfCAxNTggKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr Kwo+ICAgMSBmaWxlIGNoYW5nZWQsIDE1OCBpbnNlcnRpb25zKCspCj4gCj4gZGlmZiAtLWdpdCBh L2xpYmF2Zm9ybWF0L2ZsdmVuYy5jIGIvbGliYXZmb3JtYXQvZmx2ZW5jLmMKPiBpbmRleCBmNmQx MGYzMzFjLi42MTVhMDcyOTI4IDEwMDY0NAo+IC0tLSBhL2xpYmF2Zm9ybWF0L2ZsdmVuYy5jCj4g KysrIGIvbGliYXZmb3JtYXQvZmx2ZW5jLmMKPiBAQCAtMjQsNiArMjQsNyBAQAo+ICAgI2luY2x1 ZGUgImxpYmF2dXRpbC9pbnRmbG9hdC5oIgo+ICAgI2luY2x1ZGUgImxpYmF2dXRpbC9hdmFzc2Vy dC5oIgo+ICAgI2luY2x1ZGUgImxpYmF2dXRpbC9tYXRoZW1hdGljcy5oIgo+ICsjaW5jbHVkZSAi bGliYXZ1dGlsL21hc3RlcmluZ19kaXNwbGF5X21ldGFkYXRhLmgiCj4gICAjaW5jbHVkZSAibGli YXZjb2RlYy9jb2RlY19kZXNjLmgiCj4gICAjaW5jbHVkZSAibGliYXZjb2RlYy9tcGVnNGF1ZGlv LmgiCj4gICAjaW5jbHVkZSAiYXZpby5oIgo+IEBAIC0xMjQsNiArMTI1LDcgQEAgdHlwZWRlZiBz dHJ1Y3QgRkxWQ29udGV4dCB7Cj4gICAKPiAgICAgICBpbnQgZmxhZ3M7Cj4gICAgICAgaW50NjRf dCBsYXN0X3RzW0ZMVl9TVFJFQU1fVFlQRV9OQl07Cj4gKyAgICBpbnQgd3JpdGVfbWV0YWRhdGFf cGt0Owo+ICAgfSBGTFZDb250ZXh0Owo+ICAgCj4gICBzdGF0aWMgaW50IGdldF9hdWRpb19mbGFn cyhBVkZvcm1hdENvbnRleHQgKnMsIEFWQ29kZWNQYXJhbWV0ZXJzICpwYXIpCj4gQEAgLTQ3OCw2 ICs0ODAsMTYxIEBAIHN0YXRpYyB2b2lkIHdyaXRlX21ldGFkYXRhKEFWRm9ybWF0Q29udGV4dCAq cywgdW5zaWduZWQgaW50IHRzKQo+ICAgICAgIGF2aW9fd2IzMihwYiwgZmx2LT5tZXRhZGF0YV90 b3RhbHNpemUgKyAxMSk7Cj4gICB9Cj4gICAKPiArc3RhdGljIHZvaWQgZmx2X3dyaXRlX21ldGFk YXRhX3BhY2tldF9pZl9uZWVkZWQoQVZGb3JtYXRDb250ZXh0ICpzLCBBVkNvZGVjUGFyYW1ldGVy cyAqcGFyLCB1bnNpZ25lZCBpbnQgdHMpCgpmbHZfd3JpdGVfbWV0YWRhdGFfcGFja2V0KCkgaXMg ZW5vdWdoIGFuZCBzaG9ydGVyLgoKPiArewo+ICsgICAgQVZJT0NvbnRleHQgKnBiID0gcy0+cGI7 Cj4gKyAgICBGTFZDb250ZXh0ICpmbHYgPSBzLT5wcml2X2RhdGE7Cj4gKyAgICBBVkNvbnRlbnRM aWdodE1ldGFkYXRhICpsaWdodE1ldGFkYXRhID0gTlVMTDsKPiArICAgIEFWTWFzdGVyaW5nRGlz cGxheU1ldGFkYXRhICpkaXNwbGF5TWV0YWRhdGEgPSBOVUxMOwo+ICsgICAgY29uc3QgaW50IGZs YWdzX3NpemUgPSA1Owo+ICsgICAgaW50NjRfdCBtZXRhZGF0YV9zaXplX3BvcyA9IDA7Cj4gKyAg ICBpbnQ2NF90IHRvdGFsX3NpemUgPSAwOwo+ICsgICAgY29uc3QgQVZQYWNrZXRTaWRlRGF0YSAq c2lkZV9kYXRhID0gTlVMTDsKPiArCj4gKyAgICBpZiAoZmx2LT53cml0ZV9tZXRhZGF0YV9wa3Qp IHsKCk5vIGJyYWNrZXRzIGZvciBzaW5nbGUgbGluZSBibG9ja3MsIHBsZWFzZS4KCj4gKyAgICAg ICAgcmV0dXJuOwo+ICsgICAgfQo+ICsKPiArICAgIHNpZGVfZGF0YSA9IGF2X3BhY2tldF9zaWRl X2RhdGFfZ2V0KHBhci0+Y29kZWRfc2lkZV9kYXRhLCBwYXItPm5iX2NvZGVkX3NpZGVfZGF0YSwK PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFWX1BLVF9EQVRBX0NP TlRFTlRfTElHSFRfTEVWRUwpOwo+ICsgICAgaWYgKHNpZGVfZGF0YSkKPiArICAgICAgICBsaWdo dE1ldGFkYXRhID0gKEFWQ29udGVudExpZ2h0TWV0YWRhdGEgKilzaWRlX2RhdGEtPmRhdGE7Cj4g Kwo+ICsgICAgc2lkZV9kYXRhID0gYXZfcGFja2V0X3NpZGVfZGF0YV9nZXQocGFyLT5jb2RlZF9z aWRlX2RhdGEsIHBhci0+bmJfY29kZWRfc2lkZV9kYXRhLAo+ICsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgQVZfUEtUX0RBVEFfTUFTVEVSSU5HX0RJU1BMQVlfTUVUQURB VEEpOwo+ICsgICAgaWYgKHNpZGVfZGF0YSkKPiArICAgICAgICBkaXNwbGF5TWV0YWRhdGEgPSAo QVZNYXN0ZXJpbmdEaXNwbGF5TWV0YWRhdGEgKilzaWRlX2RhdGEtPmRhdGE7Cj4gKwo+ICsgICAg aWYgKCFsaWdodE1ldGFkYXRhICYmICFkaXNwbGF5TWV0YWRhdGEpIHsKPiArICAgICAgICByZXR1 cm47CgpDYW4ndCB5b3Ugd3JpdGUgdHJhbnNmZXJDaGFyYWN0ZXJpc3RpY3MsIG1hdHJpeENvZWZm aWNpZW50cyBhbmQgCmNvbG9yUHJpbWFyaWVzIGlmIG5vIEhEUiBtZXRhZGF0YSBpcyBwcmVzZW50 PwoKPiArICAgIH0KPiArCj4gKyAgICAvKgo+ICsgICAgKiBSZWZlcmVuY2UgRW5oYW5jaW5nIEZM Vgo+ICsgICAgKiBodHRwczovL2dpdGh1Yi5jb20vdmVvdmVyYS9lbmhhbmNlZC1ydG1wL2Jsb2Iv bWFpbi9lbmhhbmNlZC1ydG1wLnBkZgo+ICsgICAgKiAqLwo+ICsgICAgYXZpb193OChwYiwgRkxW X1RBR19UWVBFX1ZJREVPKTsgLy/lhpnlhaVWaWRlbyAvQXVkaW8gdGFnIHR5cGUKPiArICAgIG1l dGFkYXRhX3NpemVfcG9zID0gYXZpb190ZWxsKHBiKTsKPiArICAgIGF2aW9fd2IyNChwYiwgMCAr IGZsYWdzX3NpemUpOwo+ICsgICAgcHV0X3RpbWVzdGFtcChwYiwgdHMpOyAvL3RzID0gcGt0LT5k dHMsIGdlbgo+ICsgICAgYXZpb193YjI0KHBiLCBmbHYtPnJlc2VydmVkKTsKPiArCj4gKyAgICBp ZiAocGFyLT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9IRVZDKSB7Cj4gKyAgICAgICAgYXZpb193 OChwYiwgRkxWX0lTX0VYX0hFQURFUiB8IFBhY2tldFR5cGVNZXRhZGF0YXwgRkxWX0ZSQU1FX1ZJ REVPX0lORk9fQ01EKTsgLy8gRXhWaWRlb1RhZ0hlYWRlciBtb2RlIHdpdGggUGFja2V0VHlwZU1l dGFkYXRhCj4gKyAgICAgICAgYXZpb193cml0ZShwYiwgImh2YzEiLCA0KTsKPiArICAgIH0gZWxz ZSBpZiAocGFyLT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9BVjEgfHwgcGFyLT5jb2RlY19pZCA9 PSBBVl9DT0RFQ19JRF9WUDkpIHsKPiArICAgICAgICBhdmlvX3c4KHBiLCBGTFZfSVNfRVhfSEVB REVSIHwgUGFja2V0VHlwZU1ldGFkYXRhfCBGTFZfRlJBTUVfVklERU9fSU5GT19DTUQpOwo+ICsg ICAgICAgIGF2aW9fd3JpdGUocGIsIHBhci0+Y29kZWNfaWQgPT0gQVZfQ09ERUNfSURfQVYxID8g ImF2MDEiIDogInZwMDkiLCA0KTsKPiArICAgIH0gZWxzZSB7Cj4gKyAgICAgICAgcmV0dXJuOwoK WW91IHNob3VsZCBvbmx5IGNhbGwgdGhpcyBmdW5jdGlvbiBmb3IgdGhlIHRocmVlIHN1cHBvcnRl ZCBjb2RlY3MsIHRoZW4uIApPdGhlcndpc2UgaWYgeW91IHJlYWNoIHRoaXMgcG9pbnQgeW91J2xs IGhhdmUgd3JpdHRlbiBzb21lIGJ5dGVzLCAKaW5jbHVkaW5nIGEgRkxWX1RBR19UWVBFX1ZJREVP LCBmb3Igc3RyZWFtcyBsaWtlIEFBQy4KCj4gKyAgICB9Cj4gKwo+ICsgICAgYXZpb193OChwYiwg QU1GX0RBVEFfVFlQRV9TVFJJTkcpOwo+ICsgICAgcHV0X2FtZl9zdHJpbmcocGIsICJjb2xvcklu Zm8iKTsKPiArCj4gKyAgICBhdmlvX3c4KHBiLCBBTUZfREFUQV9UWVBFX09CSkVDVCk7Cj4gKwo+ ICsgICAgcHV0X2FtZl9zdHJpbmcocGIsICJjb2xvckNvbmZpZyIpOyAgLy8gY29sb3JDb25maWcK PiArCj4gKyAgICAvKiBtaXhlZCBhcnJheSAoaGFzaCkgd2l0aCBzaXplIGFuZCBzdHJpbmcvdHlw ZS9kYXRhIHR1cGxlcyAqLwo+ICsgICAgYXZpb193OChwYiwgQU1GX0RBVEFfVFlQRV9NSVhFREFS UkFZKTsKPiArCj4gKyAgICBhdmlvX3diMzIocGIsIDApOyAvLyB3cml0ZSBhcnJheSBjb3VudAo+ ICsKPiArICAgIGlmIChwYXItPmNvbG9yX3RyYyAhPSBBVkNPTF9UUkNfVU5TUEVDSUZJRUQgJiYK PiArICAgICAgICBwYXItPmNvbG9yX3RyYyA8IEFWQ09MX1RSQ19OQikgewo+ICsgICAgICAgIHB1 dF9hbWZfc3RyaW5nKHBiLCAidHJhbnNmZXJDaGFyYWN0ZXJpc3RpY3MiKTsgIC8vIGNvbG9yX3Ry Ywo+ICsgICAgICAgIHB1dF9hbWZfZG91YmxlKHBiLCBwYXItPmNvbG9yX3RyYyk7Cj4gKyAgICB9 Cj4gKwo+ICsgICAgaWYgKHBhci0+Y29sb3Jfc3BhY2UgIT0gQVZDT0xfU1BDX1VOU1BFQ0lGSUVE ICYmCj4gKyAgICAgICAgcGFyLT5jb2xvcl9zcGFjZSA8IEFWQ09MX1NQQ19OQikgewo+ICsgICAg ICAgIHB1dF9hbWZfc3RyaW5nKHBiLCAibWF0cml4Q29lZmZpY2llbnRzIik7IC8vIGNvbG9yc3Bh Y2UKPiArICAgICAgICBwdXRfYW1mX2RvdWJsZShwYiwgcGFyLT5jb2xvcl9zcGFjZSk7Cj4gKyAg ICB9Cj4gKwo+ICsgICAgaWYgKHBhci0+Y29sb3JfcHJpbWFyaWVzICE9IEFWQ09MX1BSSV9VTlNQ RUNJRklFRCAmJgo+ICsgICAgICAgIHBhci0+Y29sb3JfcHJpbWFyaWVzIDwgQVZDT0xfUFJJX05C KSB7Cj4gKyAgICAgICAgcHV0X2FtZl9zdHJpbmcocGIsICJjb2xvclByaW1hcmllcyIpOyAvLyBj b2xvcl9wcmltYXJpZXMKPiArICAgICAgICBwdXRfYW1mX2RvdWJsZShwYiwgcGFyLT5jb2xvcl9w cmltYXJpZXMpOwo+ICsgICAgfQo+ICsKPiArICAgIHB1dF9hbWZfc3RyaW5nKHBiLCAiIik7Cj4g KyAgICBhdmlvX3c4KHBiLCBBTUZfRU5EX09GX09CSkVDVCk7IC8vIGFycmF5IGVuZCBvZiBvYmpl Y3QKPiArCj4gKyAgICBpZiAobGlnaHRNZXRhZGF0YSkgewo+ICsgICAgICAgIHB1dF9hbWZfc3Ry aW5nKHBiLCAiaGRyQ2xsIik7Cj4gKwo+ICsgICAgICAgIC8qIG1peGVkIGFycmF5IChoYXNoKSB3 aXRoIHNpemUgYW5kIHN0cmluZy90eXBlL2RhdGEgdHVwbGVzICovCj4gKyAgICAgICAgYXZpb193 OChwYiwgQU1GX0RBVEFfVFlQRV9NSVhFREFSUkFZKTsKPiArCj4gKyAgICAgICAgYXZpb193YjMy KHBiLCAwKTsgLy8gd3JpdGUgYXJyYXkgY291bnQKPiArCj4gKyAgICAgICAgcHV0X2FtZl9zdHJp bmcocGIsICJtYXhGYWxsIik7Cj4gKyAgICAgICAgcHV0X2FtZl9kb3VibGUocGIsIGxpZ2h0TWV0 YWRhdGEtPk1heEZBTEwpOwo+ICsKPiArICAgICAgICBwdXRfYW1mX3N0cmluZyhwYiwgIm1heENM TCIpOwo+ICsgICAgICAgIHB1dF9hbWZfZG91YmxlKHBiLCBsaWdodE1ldGFkYXRhLT5NYXhDTEwp Owo+ICsKPiArICAgICAgICAvLyBhcnJheSBlbmQgb2Ygb2JqZWN0Cj4gKyAgICAgICAgcHV0X2Ft Zl9zdHJpbmcocGIsICIiKTsKPiArICAgICAgICBhdmlvX3c4KHBiLCBBTUZfRU5EX09GX09CSkVD VCk7Cj4gKyAgICB9Cj4gKwo+ICsgICAgaWYgKGRpc3BsYXlNZXRhZGF0YSAmJiAoZGlzcGxheU1l dGFkYXRhLT5oYXNfcHJpbWFyaWVzIHx8IGRpc3BsYXlNZXRhZGF0YS0+aGFzX2x1bWluYW5jZSkp IHsKPiArICAgICAgICBwdXRfYW1mX3N0cmluZyhwYiwgImhkck1kY3YiKTsKPiArCj4gKyAgICAg ICAgLyogbWl4ZWQgYXJyYXkgKGhhc2gpIHdpdGggc2l6ZSBhbmQgc3RyaW5nL3R5cGUvZGF0YSB0 dXBsZXMgKi8KPiArICAgICAgICBhdmlvX3c4KHBiLCBBTUZfREFUQV9UWVBFX01JWEVEQVJSQVkp Owo+ICsgICAgICAgIGF2aW9fd2IzMihwYiwgMCk7IC8vIHdyaXRlIGFycmF5IGNvdW50Cj4gKwo+ ICsgICAgICAgIGlmIChkaXNwbGF5TWV0YWRhdGEtPmhhc19wcmltYXJpZXMpIHsKPiArICAgICAg ICAgICAgcHV0X2FtZl9zdHJpbmcocGIsICJyZWRYIik7Cj4gKyAgICAgICAgICAgIHB1dF9hbWZf ZG91YmxlKHBiLCBhdl9xMmQoZGlzcGxheU1ldGFkYXRhLT5kaXNwbGF5X3ByaW1hcmllc1swXVsw XSkpOwo+ICsKPiArICAgICAgICAgICAgcHV0X2FtZl9zdHJpbmcocGIsICJyZWRZIik7Cj4gKyAg ICAgICAgICAgIHB1dF9hbWZfZG91YmxlKHBiLCBhdl9xMmQoZGlzcGxheU1ldGFkYXRhLT5kaXNw bGF5X3ByaW1hcmllc1swXVsxXSkpOwo+ICsKPiArICAgICAgICAgICAgcHV0X2FtZl9zdHJpbmco cGIsICJncmVlblgiKTsKPiArICAgICAgICAgICAgcHV0X2FtZl9kb3VibGUocGIsIGF2X3EyZChk aXNwbGF5TWV0YWRhdGEtPmRpc3BsYXlfcHJpbWFyaWVzWzFdWzBdKSk7Cj4gKwo+ICsgICAgICAg ICAgICBwdXRfYW1mX3N0cmluZyhwYiwgImdyZWVuWSIpOwo+ICsgICAgICAgICAgICBwdXRfYW1m X2RvdWJsZShwYiwgYXZfcTJkKGRpc3BsYXlNZXRhZGF0YS0+ZGlzcGxheV9wcmltYXJpZXNbMV1b MV0pKTsKPiArCj4gKyAgICAgICAgICAgIHB1dF9hbWZfc3RyaW5nKHBiLCAiYmx1ZVgiKTsKPiAr ICAgICAgICAgICAgcHV0X2FtZl9kb3VibGUocGIsIGF2X3EyZChkaXNwbGF5TWV0YWRhdGEtPmRp c3BsYXlfcHJpbWFyaWVzWzJdWzBdKSk7Cj4gKwo+ICsgICAgICAgICAgICBwdXRfYW1mX3N0cmlu ZyhwYiwgImJsdWVZIik7Cj4gKyAgICAgICAgICAgIHB1dF9hbWZfZG91YmxlKHBiLCBhdl9xMmQo ZGlzcGxheU1ldGFkYXRhLT5kaXNwbGF5X3ByaW1hcmllc1syXVsxXSkpOwo+ICsKPiArICAgICAg ICAgICAgcHV0X2FtZl9zdHJpbmcocGIsICJ3aGl0ZVBvaW50WCIpOwo+ICsgICAgICAgICAgICBw dXRfYW1mX2RvdWJsZShwYiwgYXZfcTJkKGRpc3BsYXlNZXRhZGF0YS0+d2hpdGVfcG9pbnRbMF0p KTsKPiArCj4gKyAgICAgICAgICAgIHB1dF9hbWZfc3RyaW5nKHBiLCAid2hpdGVQb2ludFkiKTsK PiArICAgICAgICAgICAgcHV0X2FtZl9kb3VibGUocGIsIGF2X3EyZChkaXNwbGF5TWV0YWRhdGEt PndoaXRlX3BvaW50WzFdKSk7Cj4gKyAgICAgICAgfQo+ICsgICAgICAgIGlmIChkaXNwbGF5TWV0 YWRhdGEtPmhhc19sdW1pbmFuY2UpIHsKPiArICAgICAgICAgICAgcHV0X2FtZl9zdHJpbmcocGIs ICJtYXhMdW1pbmFuY2UiKTsKPiArICAgICAgICAgICAgcHV0X2FtZl9kb3VibGUocGIsIGF2X3Ey ZChkaXNwbGF5TWV0YWRhdGEtPm1heF9sdW1pbmFuY2UpKTsKPiArCj4gKyAgICAgICAgICAgIHB1 dF9hbWZfc3RyaW5nKHBiLCAibWluTHVtaW5hbmNlIik7Cj4gKyAgICAgICAgICAgIHB1dF9hbWZf ZG91YmxlKHBiLCBhdl9xMmQoZGlzcGxheU1ldGFkYXRhLT5taW5fbHVtaW5hbmNlKSk7Cj4gKyAg ICAgICAgfQo+ICsgICAgICAgIHB1dF9hbWZfc3RyaW5nKHBiLCAiIik7Cj4gKyAgICAgICAgYXZp b193OChwYiwgQU1GX0VORF9PRl9PQkpFQ1QpOwo+ICsgICAgfQo+ICsgICAgYXZpb193OChwYiwg QU1GX0RBVEFfVFlQRV9PQkpFQ1RfRU5EKTsKPiArCj4gKyAgICB0b3RhbF9zaXplID0gYXZpb190 ZWxsKHBiKSAtIG1ldGFkYXRhX3NpemVfcG9zIC0gMTA7Cj4gKyAgICBhdmlvX3NlZWsocGIsIG1l dGFkYXRhX3NpemVfcG9zLCBTRUVLX1NFVCk7Cj4gKyAgICBhdmlvX3diMjQocGIsIHRvdGFsX3Np emUpOwo+ICsgICAgYXZpb190ZWxsKHBiKTsKPiArICAgIGF2aW9fc2tpcChwYiwgdG90YWxfc2l6 ZSArIDEwIC0gMyk7Cj4gKyAgICBhdmlvX3RlbGwocGIpOwo+ICsgICAgYXZpb193YjMyKHBiLCB0 b3RhbF9zaXplICsgMTEpOyAvLyBwcmV2aW91cyB0YWcgc2l6ZQo+ICsgICAgZmx2LT53cml0ZV9t ZXRhZGF0YV9wa3QgPSAxOwo+ICt9Cj4gKwo+ICAgc3RhdGljIGludCB1bnN1cHBvcnRlZF9jb2Rl YyhBVkZvcm1hdENvbnRleHQgKnMsCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNv bnN0IGNoYXIqIHR5cGUsIGludCBjb2RlY19pZCkKPiAgIHsKPiBAQCAtODc4LDYgKzEwMzUsNyBA QCBzdGF0aWMgaW50IGZsdl93cml0ZV9wYWNrZXQoQVZGb3JtYXRDb250ZXh0ICpzLCBBVlBhY2tl dCAqcGt0KQo+ICAgICAgICAgICAgICAgbWVtY3B5KHBhci0+ZXh0cmFkYXRhLCBzaWRlLCBzaWRl X3NpemUpOwo+ICAgICAgICAgICAgICAgZmx2X3dyaXRlX2NvZGVjX2hlYWRlcihzLCBwYXIsIHBr dC0+ZHRzKTsKPiAgICAgICAgICAgfQo+ICsgICAgICAgIGZsdl93cml0ZV9tZXRhZGF0YV9wYWNr ZXRfaWZfbmVlZGVkKHMsIHBhciwgcGt0LT5kdHMpOwo+ICAgICAgIH0KPiAgIAo+ICAgICAgIGlm IChmbHYtPmRlbGF5ID09IEFWX05PUFRTX1ZBTFVFKQpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpmZm1wZWctZGV2ZWwgbWFpbGluZyBsaXN0CmZmbXBlZy1k ZXZlbEBmZm1wZWcub3JnCmh0dHBzOi8vZmZtcGVnLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ZmbXBl Zy1kZXZlbAoKVG8gdW5zdWJzY3JpYmUsIHZpc2l0IGxpbmsgYWJvdmUsIG9yIGVtYWlsCmZmbXBl Zy1kZXZlbC1yZXF1ZXN0QGZmbXBlZy5vcmcgd2l0aCBzdWJqZWN0ICJ1bnN1YnNjcmliZSIuCg==