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 1537A47DD9 for ; Fri, 26 Jan 2024 15:22:36 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id A2AEF68D16E; Fri, 26 Jan 2024 17:22:33 +0200 (EET) Received: from mail-lf1-f53.google.com (mail-lf1-f53.google.com [209.85.167.53]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 873B368CCAE for ; Fri, 26 Jan 2024 17:22:27 +0200 (EET) Received: by mail-lf1-f53.google.com with SMTP id 2adb3069b0e04-50e7ddd999bso484021e87.1 for ; Fri, 26 Jan 2024 07:22:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706282547; x=1706887347; darn=ffmpeg.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=f6W8EQfDKK1ShPwybLQ1LtqC5kip9FaF+RvkKEOc0jg=; b=R8Ld/ALcL2DLUA37Vh06bBXf8Uhy5tHzXEgsox1bHq87n6GmIVwHy2p/3V2QamSSYU ji2ZTvYodCFHXtv8jBP+1L3UIEfY96I8+u/6YjkVE77t7vMirRhIDcYdlc0NuAqwz+Uh /IbXfG9osuO4Dv2Md7nL/uisUFv7ndResG8V/oCG4WS017L6NJLwC66q9kr+IVZLr+vI /W2VUXfJbdUkfyAIzlQDM8FXbzLq3Vd+OPysTz4NFPsw3GwEJBrnVZO446YociPGXOAu NsQl1QjCX6Ne4UTY+WCzVIDinbFPyJoExehav54TGzzjXbmNSUNlebiY3bvj2WCl7khC B7Fw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706282547; x=1706887347; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=f6W8EQfDKK1ShPwybLQ1LtqC5kip9FaF+RvkKEOc0jg=; b=nDmjpnfNa2ZMmUvVycfbULn3hjZItPMdIkg72Po/hhnjdBpvG+EmFanUAf04J5C7Wb v8/3898zsmoFI4OjSD7V+/UwcCNU+NvVh4n12texdyF1MWkkwxjgVWtESR0TCr1t8Oy+ F4OuM0GVDAtquIGHo5jIBdD+V7zND5xR1UlG0QPs2QzzYkeK/X8TU7Rej43Bg9JG8BUB Q4V+eFoyK2KAlQlrup1NrfFWsi9059MTgplsjTfnIT/G/rnEG4zvqUnZ24rtQ07J9W+r QWtkMC9+RsExzCxQ+dh+B0jwZr+i5iRntCZmaIgId4kWPLcfM0Kfsogtcp0H3nWprrbv j9cQ== X-Gm-Message-State: AOJu0Yyzz8eIe72ZKKveSqU6oHp1QbnvWdolJR3r9DY6gyIJzS0ynUZ4 mtQ1O5EKjjUhTfI7jDUZQFL7/kTnoEkAm/eEs2swnYstPigJffVJ0SWfG/PllBSLrKrZUa6O7OL 0MTAZfAQVN7A1jz9k0YefeMQZwnkrc/+6mD4= X-Google-Smtp-Source: AGHT+IH+UOS6pMeTFkvUxlTKmzHnWHeYfJBZA8ipr56NArzOzcxoc/BZCphZ3aA56s1z1k0ENQ2D3jBh8V0VjlyyFnQ= X-Received: by 2002:a05:6512:3ca7:b0:510:56e:f55f with SMTP id h39-20020a0565123ca700b00510056ef55fmr1122237lfv.109.1706282546084; Fri, 26 Jan 2024 07:22:26 -0800 (PST) MIME-Version: 1.0 References: <20240125122601.5473-1-nuomi2021@gmail.com> In-Reply-To: From: Nuo Mi Date: Fri, 26 Jan 2024 23:22:22 +0800 Message-ID: To: Thomas Siedel X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: Re: [FFmpeg-devel] [PATCH v2 1/2] avformat: add muxer support for H266/VVC 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 Cc: ffmpeg-devel@ffmpeg.org Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: T24gRnJpLCBKYW4gMjYsIDIwMjQgYXQgMTA6MDTigK9QTSBUaG9tYXMgU2llZGVsIDx0aG9tYXMu ZmZAc3Bpbi1kaWdpdGFsLmNvbT4Kd3JvdGU6Cgo+IFRoYW5rcyBmb3IgcGlja2luZyB1cCB0aGUg cGF0Y2ggc2V0IQo+Cj4gT24gVGh1LCAyNSBKYW4gMjAyNCBhdCAxMzoyNiwgTnVvIE1pIDxudW9t aTIwMjFAZ21haWwuY29tPiB3cm90ZToKPgo+PiBGcm9tOiBUaG9tYXMgU2llZGVsIDx0aG9tYXMu ZmZAc3Bpbi1kaWdpdGFsLmNvbT4KPj4KPj4gQWRkIG11eGVyIGZvciB2dmNjIGJ5dGUgc3RyZWFt IGZvcm1hdC4KPj4gQWRkIEFWX0NPREVDX0lEX1ZWQyB0byBmZl9tcDRfb2JqX3R5cGUuCj4+IEFk ZCBBVl9DT0RFQ19JRF9WVkMgdG8gSVNPIE1lZGlhIGNvZGVjIChWdmNDb25maWd1cmF0aW9uQm94 IHZ2aTEsCj4+IHZ2YzEgZGVmaW5lZCBpbiBJU08vSUVDIDE0NDk2LTE1OjIwMjEpLgo+PiBBZGQg VnZjQ29uZmlndXJhdGlvbkJveCB2dmNDIHdoaWNoIGV4dGVuZHMgRnVsbEJveCB0eXBlIGluCj4+ IElTTy9JRUMgMTQ0OTYtMTU6MjAyMS4KPj4gQWRkIGZmX3Z2Y19tdXhlciB0byBSQVcgbXV4ZXJz Lgo+Pgo+PiBUZXN0ZWQgd2l0aDoKPj4gICAgIGZmbXBlZyAtaSBOb3Zvc29ib3JuYXlhU3F1YXJl XzE5MjB4MTA4MC5tcDQgLWM6diBsaWJ2dmVuYyB0ZXN0Lm1wNCAmJgo+PiBmZm1wZWcgLWkgdGVz dC5tcDQgLWYgbnVsbCAtCj4+ICAgICBmZm1wZWcgLWkgTm92b3NvYm9ybmF5YVNxdWFyZV8xOTIw eDEwODAubXA0IC1jOnYgY29weSB0ZXN0Lm1wNCAgICAgJiYKPj4gZmZtcGVnIC1pIHRlc3QubXA0 IC1mIG1kNSAtCj4+Cj4+IFNpZ25lZC1vZmYtYnk6IFRob21hcyBTaWVkZWwgPHRob21hcy5mZkBz cGluLWRpZ2l0YWwuY29tPgo+PiBDby1BdXRob3JlZC1CeTogTnVvIE1pIDxudW9taTIwMjFAZ21h aWwuY29tPgo+PiAtLS0KPj4gIGxpYmF2Zm9ybWF0L01ha2VmaWxlICAgIHwgICA2ICstCj4+ICBs aWJhdmZvcm1hdC9pc29tLmMgICAgICB8ICAgMSArCj4+ICBsaWJhdmZvcm1hdC9pc29tX3RhZ3Mu YyB8ICAgMyArCj4+ICBsaWJhdmZvcm1hdC9tb3YuYyAgICAgICB8ICAgNiArCj4+ICBsaWJhdmZv cm1hdC9tb3ZlbmMuYyAgICB8ICA0MSArLQo+PiAgbGliYXZmb3JtYXQvdnZjLmMgICAgICAgfCA5 NzEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+PiAgbGliYXZmb3Jt YXQvdnZjLmggICAgICAgfCAgOTkgKysrKwo+PiAgNyBmaWxlcyBjaGFuZ2VkLCAxMTIzIGluc2Vy dGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCj4+ICBjcmVhdGUgbW9kZSAxMDA2NDQgbGliYXZmb3Jt YXQvdnZjLmMKPj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWJhdmZvcm1hdC92dmMuaAo+Pgo+PiBk aWZmIC0tZ2l0IGEvbGliYXZmb3JtYXQvTWFrZWZpbGUgYi9saWJhdmZvcm1hdC9NYWtlZmlsZQo+ PiBpbmRleCBkY2M5OWVlYWM0Li4wNWI5YjhhMTE1IDEwMDY0NAo+PiAtLS0gYS9saWJhdmZvcm1h dC9NYWtlZmlsZQo+PiArKysgYi9saWJhdmZvcm1hdC9NYWtlZmlsZQo+PiBAQCAtMzQzLDcgKzM0 Myw3IEBAIE9CSlMtJChDT05GSUdfTUFUUk9TS0FfREVNVVhFUikgICAgICAgICAgKz0KPj4gbWF0 cm9za2FkZWMubyBtYXRyb3NrYS5vICBcCj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIG9nZ3BhcnNldm9yYmlzLm8KPj4gdm9yYmlzY29tbWVudC5vIFwKPj4g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcXRwYWxldHRlLm8g cmVwbGF5Z2Fpbi5vCj4+IGRvdmlfaXNvbS5vCj4+ICBPQkpTLSQoQ09ORklHX01BVFJPU0tBX01V WEVSKSAgICAgICAgICAgICs9IG1hdHJvc2thZW5jLm8gbWF0cm9za2EubyBcCj4+IC0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF2MS5vIGF2Yy5vIGhldmMubyBc Cj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF2MS5vIGF2 Yy5vIGhldmMubyB2dmMub1wKPj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgZmxhY2VuY19oZWFkZXIubwo+PiBhdmxhbmd1YWdlLm8gXAo+PiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b3JiaXNjb21tZW50Lm8gd3Yubwo+ PiBkb3ZpX2lzb20ubwo+PiAgT0JKUy0kKENPTkZJR19NQ0FfREVNVVhFUikgICAgICAgICAgICAg ICArPSBtY2Eubwo+PiBAQCAtMzY1LDcgKzM2NSw3IEBAIE9CSlMtJChDT05GSUdfTU9EU19ERU1V WEVSKSAgICAgICAgICAgICAgKz0gbW9kcy5vCj4+ICBPQkpTLSQoQ09ORklHX01PRkxFWF9ERU1V WEVSKSAgICAgICAgICAgICs9IG1vZmxleC5vCj4+ICBPQkpTLSQoQ09ORklHX01PVl9ERU1VWEVS KSAgICAgICAgICAgICAgICs9IG1vdi5vIG1vdl9jaGFuLm8gbW92X2VzZHMubyBcCj4+ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHF0cGFsZXR0ZS5vIHJlcGxh eWdhaW4ubwo+PiBkb3ZpX2lzb20ubwo+PiAtT0JKUy0kKENPTkZJR19NT1ZfTVVYRVIpICAgICAg ICAgICAgICAgICArPSBtb3ZlbmMubyBhdjEubyBhdmMubyBoZXZjLm8KPj4gdnBjYy5vIFwKPj4g K09CSlMtJChDT05GSUdfTU9WX01VWEVSKSAgICAgICAgICAgICAgICAgKz0gbW92ZW5jLm8gYXYx Lm8gYXZjLm8gaGV2Yy5vCj4+IHZ2Yy5vIHZwY2MubyBcCj4+ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIG1vdmVuY2hpbnQubyBtb3ZfY2hhbi5vCj4+IHJ0cC5v IFwKPj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW92ZW5j Y2VuYy5vIG1vdmVuY190dG1sLm8KPj4gcmF3dXRpbHMubyBcCj4+ICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvdmlfaXNvbS5vIGV2Yy5vCj4+IEBAIC01MjAs NyArNTIwLDcgQEAgT0JKUy0kKENPTkZJR19SVFBfTVVYRVIpICAgICAgICAgICAgICAgICArPSBy dHAubwo+PiAgICAgIFwKPj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgcnRwZW5jX3ZwOC5vICBcCj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHJ0cGVuY192cDkubyAgICAgICAgICAgICAgICBcCj4+ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ0cGVuY194aXBoLm8gXAo+PiAtICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdmMubyBoZXZjLm8KPj4g KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXZjLm8gaGV2Yy5v IHZ2Yy5vCj4+ICBPQkpTLSQoQ09ORklHX1JUU1BfREVNVVhFUikgICAgICAgICAgICAgICs9IHJ0 c3AubyBydHNwZGVjLm8gaHR0cGF1dGgubyBcCj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHVybGRlY29kZS5vCj4+ICBPQkpTLSQoQ09ORklHX1JUU1BfTVVY RVIpICAgICAgICAgICAgICAgICs9IHJ0c3AubyBydHNwZW5jLm8gaHR0cGF1dGgubyBcCj4+IGRp ZmYgLS1naXQgYS9saWJhdmZvcm1hdC9pc29tLmMgYi9saWJhdmZvcm1hdC9pc29tLmMKPj4gaW5k ZXggNmQwMTk4ODFlNS4uOWZiY2NkNDQzNyAxMDA2NDQKPj4gLS0tIGEvbGliYXZmb3JtYXQvaXNv bS5jCj4+ICsrKyBiL2xpYmF2Zm9ybWF0L2lzb20uYwo+PiBAQCAtMzYsNiArMzYsNyBAQCBjb25z dCBBVkNvZGVjVGFnIGZmX21wNF9vYmpfdHlwZVtdID0gewo+PiAgICAgIHsgQVZfQ09ERUNfSURf TVBFRzQgICAgICAgLCAweDIwIH0sCj4+ICAgICAgeyBBVl9DT0RFQ19JRF9IMjY0ICAgICAgICAs IDB4MjEgfSwKPj4gICAgICB7IEFWX0NPREVDX0lEX0hFVkMgICAgICAgICwgMHgyMyB9LAo+PiAr ICAgIHsgQVZfQ09ERUNfSURfVlZDICAgICAgICAgLCAweDMzIH0sCj4+ICAgICAgeyBBVl9DT0RF Q19JRF9BQUMgICAgICAgICAsIDB4NDAgfSwKPj4gICAgICB7IEFWX0NPREVDX0lEX01QNEFMUyAg ICAgICwgMHg0MCB9LCAvKiAxNDQ5Ni0zIEFMUyAqLwo+PiAgICAgIHsgQVZfQ09ERUNfSURfTVBF RzJWSURFTyAgLCAweDYxIH0sIC8qIE1QRUctMiBNYWluICovCj4+IGRpZmYgLS1naXQgYS9saWJh dmZvcm1hdC9pc29tX3RhZ3MuYyBiL2xpYmF2Zm9ybWF0L2lzb21fdGFncy5jCj4+IGluZGV4IGE1 NzViN2MxNjAuLjcwNTgxMWU5NTAgMTAwNjQ0Cj4+IC0tLSBhL2xpYmF2Zm9ybWF0L2lzb21fdGFn cy5jCj4+ICsrKyBiL2xpYmF2Zm9ybWF0L2lzb21fdGFncy5jCj4+IEBAIC0xMjMsNiArMTIzLDkg QEAgY29uc3QgQVZDb2RlY1RhZyBmZl9jb2RlY19tb3Z2aWRlb190YWdzW10gPSB7Cj4+ICAgICAg eyBBVl9DT0RFQ19JRF9IRVZDLCBNS1RBRygnZCcsICd2JywgJ2gnLCAnZScpIH0sIC8qIEhFVkMt YmFzZWQgRG9sYnkKPj4gVmlzaW9uIGRlcml2ZWQgZnJvbSBoZXYxICovCj4+ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGR2aDEgaXMgaGFu ZGxlZAo+PiB3aXRoaW4gbW92LmMgKi8KPj4KPj4gKyAgICB7IEFWX0NPREVDX0lEX1ZWQywgTUtU QUcoJ3YnLCAndicsICdpJywgJzEnKSB9LCAgLyogVlZDL0guMjY2IHdoaWNoCj4+IGluZGljYXRl cyBwYXJhbWV0ZXIgc2V0cyBtYXkgYmUgaW4gRVMgKi8KPj4gKyAgICB7IEFWX0NPREVDX0lEX1ZW QywgTUtUQUcoJ3YnLCAndicsICdjJywgJzEnKSB9LCAgLyogVlZDL0guMjY2IHdoaWNoCj4+IGlu ZGljYXRlcyBwYXJhbWV0ZXIgc2hhbGwgbm90IGJlIGluIEVTICovCj4+ICsKPj4gICAgICB7IEFW X0NPREVDX0lEX0gyNjQsIE1LVEFHKCdhJywgJ3YnLCAnYycsICcxJykgfSwgLyogQVZDLTEvSC4y NjQgKi8KPj4gICAgICB7IEFWX0NPREVDX0lEX0gyNjQsIE1LVEFHKCdhJywgJ3YnLCAnYycsICcy JykgfSwKPj4gICAgICB7IEFWX0NPREVDX0lEX0gyNjQsIE1LVEFHKCdhJywgJ3YnLCAnYycsICcz JykgfSwKPj4gZGlmZiAtLWdpdCBhL2xpYmF2Zm9ybWF0L21vdi5jIGIvbGliYXZmb3JtYXQvbW92 LmMKPj4gaW5kZXggNGNmZmQ2YzdkYi4uY2Y5MzFkNDU5NCAxMDA2NDQKPj4gLS0tIGEvbGliYXZm b3JtYXQvbW92LmMKPj4gKysrIGIvbGliYXZmb3JtYXQvbW92LmMKPj4gQEAgLTIxMjMsNiArMjEy MywxMSBAQCBzdGF0aWMgaW50IG1vdl9yZWFkX2dsYmwoTU9WQ29udGV4dCAqYywKPj4gQVZJT0Nv bnRleHQgKnBiLCBNT1ZBdG9tIGF0b20pCj4+ICAgICAgaWYgKCh1aW50NjRfdClhdG9tLnNpemUg PiAoMTw8MzApKQo+PiAgICAgICAgICByZXR1cm4gQVZFUlJPUl9JTlZBTElEREFUQTsKPj4KPj4g KyAgICBpZiAoYXRvbS50eXBlID09IE1LVEFHKCd2JywndicsJ2MnLCdDJykpIHsKPj4gKyAgICAg ICAgYXZpb19za2lwKHBiLCA0KTsKPj4gKyAgICAgICAgYXRvbS5zaXplIC09IDQ7Cj4+ICsgICAg fQo+PiArCj4+ICAgICAgaWYgKGF0b20uc2l6ZSA+PSAxMCkgewo+PiAgICAgICAgICAvLyBCcm9r ZW4gZmlsZXMgY3JlYXRlZCBieSBsZWdhY3kgdmVyc2lvbnMgb2YgbGliYXZmb3JtYXQgd2lsbAo+ PiAgICAgICAgICAvLyB3cmFwIGEgd2hvbGUgZmllbCBhdG9tIGluc2lkZSBvZiBhIGdsYmwgYXRv bS4KPj4gQEAgLTgxMjksNiArODEzNCw3IEBAIHN0YXRpYyBjb25zdCBNT1ZQYXJzZVRhYmxlRW50 cnkKPj4gbW92X2RlZmF1bHRfcGFyc2VfdGFibGVbXSA9IHsKPj4gIHsgTUtUQUcoJ3MnLCdnJywn cCcsJ2QnKSwgbW92X3JlYWRfc2dwZCB9LAo+PiAgeyBNS1RBRygncycsJ2InLCdnJywncCcpLCBt b3ZfcmVhZF9zYmdwIH0sCj4+ICB7IE1LVEFHKCdoJywndicsJ2MnLCdDJyksIG1vdl9yZWFkX2ds YmwgfSwKPj4gK3sgTUtUQUcoJ3YnLCd2JywnYycsJ0MnKSwgbW92X3JlYWRfZ2xibCB9LAo+PiAg eyBNS1RBRygndScsJ3UnLCdpJywnZCcpLCBtb3ZfcmVhZF91dWlkIH0sCj4+ICB7IE1LVEFHKCdD JywnaScsJ24nLCAweDhlKSwgbW92X3JlYWRfdGFyZ2FfeTIxNiB9LAo+PiAgeyBNS1RBRygnZics J3InLCdlJywnZScpLCBtb3ZfcmVhZF9mcmVlIH0sCj4+IGRpZmYgLS1naXQgYS9saWJhdmZvcm1h dC9tb3ZlbmMuYyBiL2xpYmF2Zm9ybWF0L21vdmVuYy5jCj4+IGluZGV4IDhhMjdhZmJjNTcuLjQw YmU3MWYzZTAgMTAwNjQ0Cj4+IC0tLSBhL2xpYmF2Zm9ybWF0L21vdmVuYy5jCj4+ICsrKyBiL2xp YmF2Zm9ybWF0L21vdmVuYy5jCj4+IEBAIC02OCw2ICs2OCw3IEBACj4+ICAjaW5jbHVkZSAidHRt bGVuYy5oIgo+PiAgI2luY2x1ZGUgInZlcnNpb24uaCIKPj4gICNpbmNsdWRlICJ2cGNjLmgiCj4+ ICsjaW5jbHVkZSAidnZjLmgiCj4+Cj4+ICBzdGF0aWMgY29uc3QgQVZPcHRpb24gb3B0aW9uc1td ID0gewo+PiAgICAgIHsgImJyYW5kIiwgICAgIk92ZXJyaWRlIG1ham9yIGJyYW5kIiwgb2Zmc2V0 b2YoTU9WTXV4Q29udGV4dCwKPj4gbWFqb3JfYnJhbmQpLCAgIEFWX09QVF9UWVBFX1NUUklORywg ey5zdHIgPSBOVUxMfSwgLmZsYWdzID0KPj4gQVZfT1BUX0ZMQUdfRU5DT0RJTkdfUEFSQU0gfSwK Pj4gQEAgLTE0NzMsNiArMTQ3NCwyMyBAQCBzdGF0aWMgaW50IG1vdl93cml0ZV9ldmNjX3RhZyhB VklPQ29udGV4dCAqcGIsCj4+IE1PVlRyYWNrICp0cmFjaykKPj4gICAgICByZXR1cm4gdXBkYXRl X3NpemUocGIsIHBvcyk7Cj4+ICB9Cj4+Cj4+ICtzdGF0aWMgaW50IG1vdl93cml0ZV92dmNjX3Rh ZyhBVklPQ29udGV4dCAqcGIsIE1PVlRyYWNrICp0cmFjaykKPj4gK3sKPj4gKyAgICBpbnQ2NF90 IHBvcyA9IGF2aW9fdGVsbChwYik7Cj4+ICsKPj4gKyAgICBhdmlvX3diMzIocGIsIDApOwo+PiAr ICAgIGZmaW9fd2ZvdXJjYyhwYiwgInZ2Y0MiKTsKPj4gKwo+PiArICAgIGF2aW9fdzggIChwYiwg MCk7IC8qIHZlcnNpb24gKi8KPj4gKyAgICBhdmlvX3diMjQocGIsIDApOyAvKiBmbGFncyAqLwo+ PiArCj4+ICsgICAgaWYgKHRyYWNrLT50YWcgPT0gTUtUQUcoJ3YnLCd2JywnYycsJzEnKSkKPj4g KyAgICAgICAgZmZfaXNvbV93cml0ZV92dmNjKHBiLCB0cmFjay0+dm9zX2RhdGEsIHRyYWNrLT52 b3NfbGVuLCAxKTsKPj4gKyAgICBlbHNlCj4+ICsgICAgICAgIGZmX2lzb21fd3JpdGVfdnZjYyhw YiwgdHJhY2stPnZvc19kYXRhLCB0cmFjay0+dm9zX2xlbiwgMCk7Cj4+ICsgICAgcmV0dXJuIHVw ZGF0ZV9zaXplKHBiLCBwb3MpOwo+PiArfQo+PiArCj4+ICAvKiBhbHNvIHVzZWQgYnkgYWxsIGF2 aWQgY29kZWNzIChkdiwgaW14LCBtZXJpZGllbikgYW5kIHRoZWlyIHZhcmlhbnRzICovCj4+ICBz dGF0aWMgaW50IG1vdl93cml0ZV9hdmlkX3RhZyhBVklPQ29udGV4dCAqcGIsIE1PVlRyYWNrICp0 cmFjaykKPj4gIHsKPj4gQEAgLTIzODIsNiArMjQwMCw4IEBAIHN0YXRpYyBpbnQgbW92X3dyaXRl X3ZpZGVvX3RhZyhBVkZvcm1hdENvbnRleHQgKnMsCj4+IEFWSU9Db250ZXh0ICpwYiwgTU9WTXV4 Q29udGV4Cj4+ICAgICAgICAgIGF2aWQgPSAxOwo+PiAgICAgIH0gZWxzZSBpZiAodHJhY2stPnBh ci0+Y29kZWNfaWQgPT0gQVZfQ09ERUNfSURfSEVWQykKPj4gICAgICAgICAgbW92X3dyaXRlX2h2 Y2NfdGFnKHBiLCB0cmFjayk7Cj4+ICsgICAgZWxzZSBpZiAodHJhY2stPnBhci0+Y29kZWNfaWQg PT0gQVZfQ09ERUNfSURfVlZDKQo+PiArICAgICAgICBtb3Zfd3JpdGVfdnZjY190YWcocGIsIHRy YWNrKTsKPj4gICAgICBlbHNlIGlmICh0cmFjay0+cGFyLT5jb2RlY19pZCA9PSBBVl9DT0RFQ19J RF9IMjY0ICYmCj4+ICFUQUdfSVNfQVZDSSh0cmFjay0+dGFnKSkgewo+PiAgICAgICAgICBtb3Zf d3JpdGVfYXZjY190YWcocGIsIHRyYWNrKTsKPj4gICAgICAgICAgaWYgKHRyYWNrLT5tb2RlID09 IE1PREVfSVBPRCkKPj4gQEAgLTYxNzAsNiArNjE5MCw3IEBAIGludCBmZl9tb3Zfd3JpdGVfcGFj a2V0KEFWRm9ybWF0Q29udGV4dCAqcywKPj4gQVZQYWNrZXQgKnBrdCkKPj4gICAgICBpZiAoKHBh ci0+Y29kZWNfaWQgPT0gQVZfQ09ERUNfSURfRE5YSEQgfHwKPj4gICAgICAgICAgIHBhci0+Y29k ZWNfaWQgPT0gQVZfQ09ERUNfSURfSDI2NCB8fAo+PiAgICAgICAgICAgcGFyLT5jb2RlY19pZCA9 PSBBVl9DT0RFQ19JRF9IRVZDIHx8Cj4+ICsgICAgICAgICBwYXItPmNvZGVjX2lkID09IEFWX0NP REVDX0lEX1ZWQyB8fAo+PiAgICAgICAgICAgcGFyLT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9W UDkgfHwKPj4gICAgICAgICAgIHBhci0+Y29kZWNfaWQgPT0gQVZfQ09ERUNfSURfRVZDIHx8Cj4+ ICAgICAgICAgICBwYXItPmNvZGVjX2lkID09IEFWX0NPREVDX0lEX1RSVUVIRCkgJiYgIXRyay0+ dm9zX2xlbiAmJgo+PiBAQCAtNjIzNSw2ICs2MjU2LDE4IEBAIGludCBmZl9tb3Zfd3JpdGVfcGFj a2V0KEFWRm9ybWF0Q29udGV4dCAqcywKPj4gQVZQYWNrZXQgKnBrdCkKPj4gICAgICAgICAgICAg ICAgICBzaXplID0gZmZfaGV2Y19hbm5leGIybXA0KHBiLCBwa3QtPmRhdGEsIHBrdC0+c2l6ZSwg MCwKPj4gTlVMTCk7Cj4+ICAgICAgICAgICAgICB9Cj4+ICAgICAgICAgIH0KPj4gKyAgICB9IGVs c2UgaWYgKHBhci0+Y29kZWNfaWQgPT0gQVZfQ09ERUNfSURfVlZDICYmIHRyay0+dm9zX2xlbiA+ IDYgJiYKPj4gKyAgICAgICAgICAgICAoQVZfUkIyNCh0cmstPnZvc19kYXRhKSA9PSAxIHx8IEFW X1JCMzIodHJrLT52b3NfZGF0YSkgPT0KPj4gMSkpIHsKPj4gKyAgICAgIC8qIGV4dHJhZGF0YSBp cyBBbm5leCBCLCBhc3N1bWUgdGhlIGJpdHN0cmVhbSBpcyB0b28gYW5kIGNvbnZlcnQKPj4gaXQg Ki8KPj4gKyAgICAgIGlmICh0cmstPmhpbnRfdHJhY2sgPj0gMCAmJiB0cmstPmhpbnRfdHJhY2sg PCBtb3YtPm5iX3RyYWNrcykgewo+PiArICAgICAgICAgICAgcmV0ID0gZmZfdnZjX2FubmV4YjJt cDRfYnVmKHBrdC0+ZGF0YSwgJnJlZm9ybWF0dGVkX2RhdGEsCj4+ICsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICZzaXplLCAwLCBOVUxMKTsKPj4gKyAgICAgICAgICAg IGlmIChyZXQgPCAwKQo+PiArICAgICAgICAgICAgICAgIHJldHVybiByZXQ7Cj4+ICsgICAgICAg ICAgICBhdmlvX3dyaXRlKHBiLCByZWZvcm1hdHRlZF9kYXRhLCBzaXplKTsKPj4gKyAgICAgIH0g ZWxzZSB7Cj4+ICsgICAgICAgICAgc2l6ZSA9IGZmX3Z2Y19hbm5leGIybXA0KHBiLCBwa3QtPmRh dGEsIHBrdC0+c2l6ZSwgMCwgTlVMTCk7Cj4+ICsgICAgICB9Cj4+ICAgICAgfSBlbHNlIGlmIChw YXItPmNvZGVjX2lkID09IEFWX0NPREVDX0lEX0FWMSkgewo+PiAgICAgICAgICBpZiAodHJrLT5o aW50X3RyYWNrID49IDAgJiYgdHJrLT5oaW50X3RyYWNrIDwgbW92LT5uYl90cmFja3MpIHsKPj4g ICAgICAgICAgICAgIHJldCA9IGZmX2F2MV9maWx0ZXJfb2J1c19idWYocGt0LT5kYXRhLCAmcmVm b3JtYXR0ZWRfZGF0YSwKPj4gQEAgLTYyODEsNiArNjMxNCw5IEBAIGludCBmZl9tb3Zfd3JpdGVf cGFja2V0KEFWRm9ybWF0Q29udGV4dCAqcywKPj4gQVZQYWNrZXQgKnBrdCkKPj4gICAgICAgICAg ICAgIH0gZWxzZSBpZihwYXItPmNvZGVjX2lkID09IEFWX0NPREVDX0lEX0hFVkMgJiYKPj4gcGFy LT5leHRyYWRhdGFfc2l6ZSA+IDIxKSB7Cj4+ICAgICAgICAgICAgICAgICAgaW50IG5hbF9zaXpl X2xlbmd0aCA9IChwYXItPmV4dHJhZGF0YVsyMV0gJiAweDMpICsgMTsKPj4gICAgICAgICAgICAg ICAgICByZXQgPSBmZl9tb3ZfY2VuY19hdmNfd3JpdGVfbmFsX3VuaXRzKHMsICZ0cmstPmNlbmMs Cj4+IG5hbF9zaXplX2xlbmd0aCwgcGIsIHBrdC0+ZGF0YSwgc2l6ZSk7Cj4+ICsgICAgICAgICAg ICB9IGVsc2UgaWYocGFyLT5jb2RlY19pZCA9PSBBVl9DT0RFQ19JRF9WVkMgJiYKPj4gcGFyLT5l eHRyYWRhdGFfc2l6ZSA+IDIxKSB7Cj4+ICsgICAgICAgICAgICAgICAgaW50IG5hbF9zaXplX2xl bmd0aCA9IChwYXItPmV4dHJhZGF0YVsyMV0gJiAweDMpICsgMTsKPj4KPgo+IFRoaXMgaXMgd3Jv bmcgZm9yIFZWQyAod2FzIG5vdGljZWQgYnkgSmFtZXMgQWxtZXIgaW4gcHJldmlvdXMgdmVyc2lv biBvZgo+IHRoZSBwYXRjaCBzZXQpLiBJbnN0ZWFkLCBpdCBzaG91bGQgYmUgdGhpczoKPiBpbnQg bmFsX3NpemVfbGVuZ3RoID0gKChwYXItPmV4dHJhZGF0YVs0XT4+MSkgJiAweDMpICsgMTsKPgpI aSBUaG9tYXMsClRoYW5rIHlvdSBmb3IgdGhlIHJlcGx5Lgo0IGlzIHJlbGF0aXZlbHkgc21hbGwg Y29tcGFyZWQgdG8gMjEuIElzIHRoZXJlIGFueSBwbGFjZSB3aGVyZSB3ZSBjYW4gZmluZApkZXRh aWxzIGFib3V0IENFTkM/Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fCmZmbXBlZy1kZXZlbCBtYWlsaW5nIGxpc3QKZmZtcGVnLWRldmVsQGZmbXBlZy5vcmcK aHR0cHM6Ly9mZm1wZWcub3JnL21haWxtYW4vbGlzdGluZm8vZmZtcGVnLWRldmVsCgpUbyB1bnN1 YnNjcmliZSwgdmlzaXQgbGluayBhYm92ZSwgb3IgZW1haWwKZmZtcGVnLWRldmVsLXJlcXVlc3RA ZmZtcGVnLm9yZyB3aXRoIHN1YmplY3QgInVuc3Vic2NyaWJlIi4K