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 7975949586 for ; Thu, 14 Mar 2024 09:52:49 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 88C7A68D1C7; Thu, 14 Mar 2024 11:52:47 +0200 (EET) Received: from mail-wr1-f53.google.com (mail-wr1-f53.google.com [209.85.221.53]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 770B168D19F for ; Thu, 14 Mar 2024 11:52:41 +0200 (EET) Received: by mail-wr1-f53.google.com with SMTP id ffacd0b85a97d-33e92b3b5c9so805323f8f.2 for ; Thu, 14 Mar 2024 02:52:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1710409960; x=1711014760; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=eNqPkozExrqWVcC0eIE0Azux6qRFs/CEqbbkePHgh9A=; b=g1QY2fhTSupg4TYJk9YdmGyzx93Cl3dQ8XOn0tOS9vnjGgDIAOg4XUcOu34wH2yzux zeDQJyLtX64qfuWy3/AdaO/8vIpstD8NsfDdjAF0eBjFEYqs5gUl1abHM2FoTM2eIMpR whv1j9effI4gkQDGOcgjJbnxryZN0hnX94TuRJy1fwZfD/NDkiwKQ5AQBDoP+Y1reETZ OkW8vJKHo9z0UPJEI0INFybNtkn19CsDsZLZs0kslra9oM2eW8//XT9DRU0Pk+yCvboQ n4ZwhlSgI5Lf50EKXUGaPw6HB9n9RMtn73aRnfw1tvrVDYS2JcHDRUDDNRwfeMJhAsgv OuPA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1710409960; x=1711014760; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=eNqPkozExrqWVcC0eIE0Azux6qRFs/CEqbbkePHgh9A=; b=J0rdRynNyvubphURRFqR3tRd+Xd4DXX4F5ZCZxBFj2LAs1c46s05xtzBE/Z4rJF3ni AzetvL1Ke6dtfBoblf7drNLNUpNQDJZkqcsPoN6sVkY4dF+PRSRny8CDicC+Ge3KXEUI Qxo5ns1zfevlup4/x11nd3sY+NAPZGr+jVYkuOh9hnIf0Jf/5TPh4axHaXP4R/IPlf4v hcKRE5MX4hYLS0se2eQrMlw8a85sBrUq7onnjhB3qtlIW/793jvXl3k4cqoKNnSuvvGN FXrLegMcXD/m9ZSnIvqp/Ew+55ETgUb1wSJ4+VtBTLKpJqX0ECGsT6bRmaQlQ2z//LLU vyWA== X-Gm-Message-State: AOJu0YyASvMWF7C5dWwvgmO460cg1TEyUmR2kKK2+9XP5Z/pWys+/QzB jD2tx3/St7TM+5vDClMvSe/IyR/RJXhupBUvTY5KVTm4jnAieteqoODf1Bft X-Google-Smtp-Source: AGHT+IE19WkBoUThdvsiEJl6HcmRfvRS2mAmmFw5AizoL2ausXmqQDtpaLf2ntA6wWF39CidhSsbJg== X-Received: by 2002:a5d:52c2:0:b0:33e:7aeb:fd8 with SMTP id r2-20020a5d52c2000000b0033e7aeb0fd8mr866258wrv.32.1710409960425; Thu, 14 Mar 2024 02:52:40 -0700 (PDT) Received: from [192.168.178.30] (dynamic-2a01-0c23-60fd-a000-6dff-bd6b-3acb-95dc.c23.pool.telefonica.de. [2a01:c23:60fd:a000:6dff:bd6b:3acb:95dc]) by smtp.gmail.com with ESMTPSA id ay19-20020a5d6f13000000b0033e2291fbc0sm366857wrb.68.2024.03.14.02.52.39 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 14 Mar 2024 02:52:39 -0700 (PDT) From: epirat07@gmail.com To: FFmpeg development discussions and patches Date: Thu, 14 Mar 2024 10:52:38 +0100 X-Mailer: MailMate (1.14r6022) Message-ID: In-Reply-To: References: MIME-Version: 1.0 Subject: Re: [FFmpeg-devel] [PATCH] avformat: enable UDP IPv6 multicast interface selection 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-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: CgpPbiAxNCBNYXIgMjAyNCwgYXQgMTA6MjIsIElnbmphdG92acSHLCBMYXphciB3cm90ZToKCj4g YXZmb3JtYXQ6IGVuYWJsZSBVRFAgSVB2NiBtdWx0aWNhc3QgaW50ZXJmYWNlIHNlbGVjdGlvbgo+ Cj4gbG9jYWxhZGRyIG9wdGlvbiBub3cgcHJvcGVybHkgd29ya3Mgd2l0aCBJUHY2IGFkZHJlc3Nl cy4gUHJvcGVybHkgcmVzb2x2ZWQKPiBpbnRlcmZhY2UgaW5kZXggaW4gcGxhY2VzIHdoZXJlIGRl ZmF1bHQgMCBpbnRlcmZhY2UgaW5kZXggaXMgdXNlZCAobWFya2VkIHdpdGgKPiBUT0RPOiB3aXRo aW4gdWRwLmMpLiBBZGRlZCBTT19CSU5EVE9ERVZJQ0UgZm9yIG1jYXN0IHNvY2tldHMgdGhhdCBh cmUgdXNlZCBmb3IKPiByZWFkaW5nIGZyb20gdGhlIG5ldHdvcmsuIE5lZWQgZm9yIHRoaXMgYXJp c2VzIGZyb20gdGhlIGZhY3QgdGhhdCBbZmZ4MTo6Kl0gYW5kCj4gW2ZmeDI6OipdIG1jYXN0IGFk ZHJlc3NlcyBuZWVkIHRvIGhhdmUgYSBkZWZpbmVkIGludGVyZmFjZSBmb3IgYmluZGluZyB0byBh dm9pZAo+IGFtYmlndWl0eSBiZXR3ZWVuIG11bHRpcGxlIGxpbmstbG9jYWwgbmV0d29ya3Mgb24g dGhlIHNhbWUgaG9zdC4gRmFpbGluZyB0byBzZXQKPiB0aGlzIG9wdGlvbiBjYXVzZXMgZXJyb3Jz IG9uIExpbnV4IHN5c3RlbXMgZm9yIGludGVyZmFjZSBhbmQgbGluay1sb2NhbCBzY29wZXMuCj4K PiBGb3IgbWNhc3QgYWRkcmVzc2VzLCBiaW5kIHRvIG1jYXN0IGFkZHJlc3MgaXMgYXR0ZW1wdGVk IGFzIGJlZm9yZS4gSW4gY2FzZQo+IHRoYXQgdGhpcyBmYWlscywgd2hpY2ggd2lsbCBoYXBwZW4g b24gV2luZG93cywgc29ja2V0IGlzIGJvdW5kIHRvCj4gSU5BRERSX0FOWS9JTjZBRERSX0FOWV9J TklUIGRlcGVuZGluZyBvbiBhZGRyZXNzIGZhbWlseS4gQWN0dWFsIGludGVyZmFjZQo+IHNlbGVj dGlvbiBpcyBwZXJmb3JtZWQgdXNpbmcgdWRwX3NldF9tdWx0aWNhc3RfaW50ZXJmYWNlIHRvIHBv aW50IHRvIHRoZQo+IGRlc2lyZWQgaW50ZXJmYWNlIGZvciBzZW5kaW5nL2xpc3RlbmluZy4KPgo+ IFV0aWxpemF0aW9uIG9mIHNpbjZfc2NvcGVfaWQgZmllbGQgZW5hYmxlcyB1c2FnZSBhbmQgYWRl cXVhdGUgcmVzb2x2aW5nIG9mCj4gSVB2NiBhZGRyZXNzZXMgdGhhdCB1dGlsaXplIHpvbmUgaW5k ZXggKGUuZy4gZmU4MDo6MWZmOmZlMjM6NDU2Nzo4OTBhJWV0aDIgKQo+IFRoaXMgaXMgbm90IGZ1 bGx5IHN1cHBvcnRlZCBvbiBXaW5kb3dzLCB0aHVzIHJlbHlpbmcgb24gdGhpcyBmaWVsZCBpcyBu b3QgZG9uZQo+IG9uIFdpbmRvd3Mgc3lzdGVtcy4KPgo+IENsb3NlczogIzM2OAo+Cj4gU2lnbmVk LW9mZi1ieTogTGF6YXIgSWduamF0b3ZpYyA8TGF6YXIuSWduamF0b3ZpY0BjdWJpYy5jb20+Cj4g LS0tCj4gIGNvbmZpZ3VyZSAgICAgICAgICAgICB8ICAzICsrCj4gIGxpYmF2Zm9ybWF0L2lwLmMg ICAgICB8IDQ1ICsrKysrKysrKysrKysrKysrKysrKysrKwo+ICBsaWJhdmZvcm1hdC9pcC5oICAg ICAgfCAgNiArKysrCj4gIGxpYmF2Zm9ybWF0L25ldHdvcmsuaCB8ICA2ICsrKysKPiAgbGliYXZm b3JtYXQvdWRwLmMgICAgIHwgODAgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KystLS0tLQo+ICA1IGZpbGVzIGNoYW5nZWQsIDEzMiBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9u cygtKQo+Cj4gZGlmZiAtLWdpdCBhL2NvbmZpZ3VyZSBiL2NvbmZpZ3VyZQo+IGluZGV4IGMzNGJk ZDEzZjUuLjc3ZjAzOTQ4Y2UgMTAwNzU1Cj4gLS0tIGEvY29uZmlndXJlCj4gKysrIGIvY29uZmln dXJlCj4gQEAgLTIyNTYsNiArMjI1Niw3IEBAIEhFQURFUlNfTElTVD0iCj4gICAgICB2YWxncmlu ZF92YWxncmluZF9oCj4gICAgICB3aW5kb3dzX2gKPiAgICAgIHdpbnNvY2syX2gKPiArICAgIGlw aGxwYXBpX2gKPiAgIgo+Cj4gIElOVFJJTlNJQ1NfTElTVD0iCj4gQEAgLTY0MDgsNiArNjQwOSw4 IEBAIGlmICEgZGlzYWJsZWQgbmV0d29yazsgdGhlbgo+ICAgICAgICAgIGNoZWNrX3N0cnVjdCB3 aW5zb2NrMi5oICJzdHJ1Y3Qgc29ja2FkZHIiIHNhX2xlbgo+ICAgICAgICAgIGNoZWNrX3R5cGUg d3MydGNwaXAuaCAic3RydWN0IHNvY2thZGRyX2luNiIKPiAgICAgICAgICBjaGVja190eXBlIHdz MnRjcGlwLmggInN0cnVjdCBzb2NrYWRkcl9zdG9yYWdlIgo+ICsgICAgICAgIGNoZWNrX2hlYWRl cnMgaXBobHBhcGkuaCAmJiBuZXR3b3JrX2V4dHJhbGlicys9IiAtbGlwaGxwYXBpIiB8fCBkaXNh YmxlIGlwaGxwYXBpX2gKPiArICAgICAgICBjaGVja19mdW5jX2hlYWRlcnMgaXBobHBhcGkuaCBH ZXRCZXN0SW50ZXJmYWNlRXgKPiAgICAgIGVsc2UKPiAgICAgICAgICBkaXNhYmxlIG5ldHdvcmsK PiAgICAgIGZpCj4gZGlmZiAtLWdpdCBhL2xpYmF2Zm9ybWF0L2lwLmMgYi9saWJhdmZvcm1hdC9p cC5jCj4gaW5kZXggYjJjN2VmMDdlNS4uNGYyZDk5OGMzNCAxMDA2NDQKPiAtLS0gYS9saWJhdmZv cm1hdC9pcC5jCj4gKysrIGIvbGliYXZmb3JtYXQvaXAuYwo+IEBAIC0xOCw2ICsxOCw5IEBACj4g ICAqIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgMDIxMTAtMTMw MSBVU0EKPiAgICovCj4KPiArI2RlZmluZSBfREVGQVVMVF9TT1VSQ0UKPiArI2RlZmluZSBfU1ZJ RF9TT1VSQ0UKPiArCj4gICNpbmNsdWRlIDxzdHJpbmcuaD4KPiAgI2luY2x1ZGUgImlwLmgiCj4g ICNpbmNsdWRlICJsaWJhdnV0aWwvYXZzdHJpbmcuaCIKPiBAQCAtMTU5LDMgKzE2Miw0NSBAQCB2 b2lkIGZmX2lwX3Jlc2V0X2ZpbHRlcnMoSVBTb3VyY2VGaWx0ZXJzICpmaWx0ZXJzKQo+ICAgICAg ZmlsdGVycy0+bmJfaW5jbHVkZV9hZGRycyA9IDA7Cj4gICAgICBmaWx0ZXJzLT5uYl9leGNsdWRl X2FkZHJzID0gMDsKPiAgfQo+ICsKPiArdW5zaWduZWQgaW50IGZmX2lwX3Jlc29sdmVfaW50ZXJm YWNlX2luZGV4KHN0cnVjdCBzb2NrYWRkcl9zdG9yYWdlICpsb2NhbF9hZGRyKQo+ICt7Cj4gKyNp ZiBIQVZFX1dJTlNPQ0syX0ggJiYgSEFWRV9JUEhMUEFQSV9ICj4gKyAgICBEV09SRCByZXR2YWw7 Cj4gKyAgICB1bnNpZ25lZCBsb25nIGlmYWNlOwo+ICsKPiArICAgIGlmIChsb2NhbF9hZGRyID09 IE5VTEwpCj4gKyAgICAgICAgcmV0dXJuIDA7Cj4gKwo+ICsgICAgcmV0dmFsID0gR2V0QmVzdElu dGVyZmFjZUV4KChzdHJ1Y3Qgc29ja2FkZHIqKWxvY2FsX2FkZHIsICZpZmFjZSk7Cj4gKyAgICBp ZiAocmV0dmFsID09IE5PX0VSUk9SKQo+ICsgICAgICAgIHJldHVybiBpZmFjZTsKPiArCj4gKyAg ICByZXR1cm4gMDsKPiArI2VsaWYgIUhBVkVfV0lOU09DSzJfSAo+ICsgICAgc3RydWN0IGlmYWRk cnMgKmlmYWRkciwgKmlmYTsKPiArCj4gKyAgICBpZiAobG9jYWxfYWRkciA9PSBOVUxMKQo+ICsg ICAgICAgIHJldHVybiAwOwo+ICsKPiArICAgIC8qIFNwZWNpYWwgY2FzZSBmb3IgbGluay1sb2Nh bCBhZGRyZXNzZXMsIHJlbGV2YW50IGludGVyZmFjZSBpcyBzdG9yZWQgaW4gc2luNl9zY29wZV9p ZCAqLwo+ICsjaWYgSEFWRV9TVFJVQ1RfU09DS0FERFJfSU42ICYmIGRlZmluZWQoSU42X0lTX0FE RFJfTElOS0xPQ0FMKQo+ICsgICAgaWYgKGxvY2FsX2FkZHItPnNzX2ZhbWlseSA9PSBBRl9JTkVU NiAmJiBJTjZfSVNfQUREUl9MSU5LTE9DQUwoJigoc3RydWN0IHNvY2thZGRyX2luNiopbG9jYWxf YWRkciktPnNpbjZfYWRkcikpIHsKPiArICAgICAgICB1bnNpZ25lZCBpbnQgaW50ZXJmYWNlOwo+ ICsgICAgICAgIGludGVyZmFjZSA9ICgoc3RydWN0IHNvY2thZGRyX2luNiopbG9jYWxfYWRkcikt PnNpbjZfc2NvcGVfaWQ7Cj4gKwo+ICsgICAgICAgIGlmIChpbnRlcmZhY2UgIT0gMCkKPiArICAg ICAgICAgICAgcmV0dXJuIGludGVyZmFjZTsKPiArICAgIH0KPiArI2VuZGlmCj4gKyAgICBpZiAo Z2V0aWZhZGRycygmaWZhZGRyKSA9PSAtMSkKPiArICAgICAgICByZXR1cm4gMDsKPiArCj4gKyAg ICBmb3IgKGlmYSA9IGlmYWRkcjsgaWZhICE9IE5VTEw7IGlmYSA9IGlmYS0+aWZhX25leHQpIHsK PiArICAgICAgICBpZiAoaWZhLT5pZmFfYWRkciAhPSBOVUxMICYmIGNvbXBhcmVfYWRkcigoc3Ry dWN0IHNvY2thZGRyX3N0b3JhZ2UqKWlmYS0+aWZhX2FkZHIsIGxvY2FsX2FkZHIpID09IDApCj4g KyAgICAgICAgICAgIHJldHVybiBpZl9uYW1ldG9pbmRleChpZmEtPmlmYV9uYW1lKTsKPiArICAg IH0KPiArCj4gKyAgICByZXR1cm4gMDsKPiArI2VuZGlmCj4gK30KPiBkaWZmIC0tZ2l0IGEvbGli YXZmb3JtYXQvaXAuaCBiL2xpYmF2Zm9ybWF0L2lwLmgKPiBpbmRleCBiNzZjZGFiOTFjLi40MDg1 ZTk2ZjA4IDEwMDY0NAo+IC0tLSBhL2xpYmF2Zm9ybWF0L2lwLmgKPiArKysgYi9saWJhdmZvcm1h dC9pcC5oCj4gQEAgLTY5LDQgKzY5LDEwIEBAIGludCBmZl9pcF9wYXJzZV9ibG9ja3Modm9pZCAq bG9nX2N0eCwgY29uc3QgY2hhciAqYnVmLCBJUFNvdXJjZUZpbHRlcnMgKmZpbHRlcnMpCj4gICAq Lwo+ICB2b2lkIGZmX2lwX3Jlc2V0X2ZpbHRlcnMoSVBTb3VyY2VGaWx0ZXJzICpmaWx0ZXJzKTsK Pgo+ICsvKioKPiArICogUmVzb2x2ZXMgSVAgYWRkcmVzcyB0byBhbiBhc3NvY2lhdGVkIGludGVy ZmFjZSBpbmRleAo+ICsgKiBAcmV0dXJuIGludGVyZmFjZSBpbmRleCwgMCBhcyBkZWZhdWx0IGlu dGVyZmFjZSB2YWx1ZSBvbiBlcnJvcgo+ICsgKi8KPiArdW5zaWduZWQgaW50IGZmX2lwX3Jlc29s dmVfaW50ZXJmYWNlX2luZGV4KHN0cnVjdCBzb2NrYWRkcl9zdG9yYWdlICpsb2NhbF9hZGRyKTsK PiArCj4gICNlbmRpZiAvKiBBVkZPUk1BVF9JUF9IICovCj4gZGlmZiAtLWdpdCBhL2xpYmF2Zm9y bWF0L25ldHdvcmsuaCBiL2xpYmF2Zm9ybWF0L25ldHdvcmsuaAo+IGluZGV4IGNhMjE0MDg3ZmMu LjI0NjFiNjUxZDQgMTAwNjQ0Cj4gLS0tIGEvbGliYXZmb3JtYXQvbmV0d29yay5oCj4gKysrIGIv bGliYXZmb3JtYXQvbmV0d29yay5oCj4gQEAgLTM4LDYgKzM4LDEwIEBACj4gICNpbmNsdWRlIDx3 aW5zb2NrMi5oPgo+ICAjaW5jbHVkZSA8d3MydGNwaXAuaD4KPgo+ICsjaWYgSEFWRV9JUEhMUEFQ SV9ICj4gKyNpbmNsdWRlIDxpcGhscGFwaS5oPgo+ICsjZW5kaWYKPiArCj4gICNpZm5kZWYgRVBS T1RPTk9TVVBQT1JUCj4gICNkZWZpbmUgRVBST1RPTk9TVVBQT1JUIFdTQUVQUk9UT05PU1VQUE9S VAo+ICAjZW5kaWYKPiBAQCAtNjQsNiArNjgsOCBAQCBpbnQgZmZfbmV0ZXJybm8odm9pZCk7Cj4g ICNpbmNsdWRlIDxuZXRpbmV0L2luLmg+Cj4gICNpbmNsdWRlIDxuZXRpbmV0L3RjcC5oPgo+ICAj aW5jbHVkZSA8bmV0ZGIuaD4KPiArI2luY2x1ZGUgPG5ldC9pZi5oPgo+ICsjaW5jbHVkZSA8aWZh ZGRycy5oPgo+Cj4gICNkZWZpbmUgZmZfbmV0ZXJybm8oKSBBVkVSUk9SKGVycm5vKQo+ICAjZW5k aWYgLyogSEFWRV9XSU5TT0NLMl9IICovCj4gZGlmZiAtLWdpdCBhL2xpYmF2Zm9ybWF0L3VkcC5j IGIvbGliYXZmb3JtYXQvdWRwLmMKPiBpbmRleCBkOTUxNGY1MDI2Li45YjhjYTc0MjgyIDEwMDY0 NAo+IC0tLSBhL2xpYmF2Zm9ybWF0L3VkcC5jCj4gKysrIGIvbGliYXZmb3JtYXQvdWRwLmMKPiBA QCAtMjIwLDggKzIyMCw3IEBAIHN0YXRpYyBpbnQgdWRwX2pvaW5fbXVsdGljYXN0X2dyb3VwKGlu dCBzb2NrZmQsIHN0cnVjdCBzb2NrYWRkciAqYWRkciwKPiAgICAgICAgICBzdHJ1Y3QgaXB2Nl9t cmVxIG1yZXE2Owo+Cj4gICAgICAgICAgbWVtY3B5KCZtcmVxNi5pcHY2bXJfbXVsdGlhZGRyLCAm KCgoc3RydWN0IHNvY2thZGRyX2luNiAqKWFkZHIpLT5zaW42X2FkZHIpLCBzaXplb2Yoc3RydWN0 IGluNl9hZGRyKSk7Cj4gLSAgICAgICAgLy9UT0RPOiBJbnRlcmZhY2UgaW5kZXggc2hvdWxkIGJl IGxvb2tlZCB1cCBmcm9tIGxvY2FsX2FkZHIKPiAtICAgICAgICBtcmVxNi5pcHY2bXJfaW50ZXJm YWNlID0gMDsKPiArICAgICAgICBtcmVxNi5pcHY2bXJfaW50ZXJmYWNlID0gZmZfaXBfcmVzb2x2 ZV9pbnRlcmZhY2VfaW5kZXgoKHN0cnVjdCBzb2NrYWRkcl9zdG9yYWdlICopbG9jYWxfYWRkcik7 Cj4gICAgICAgICAgaWYgKHNldHNvY2tvcHQoc29ja2ZkLCBJUFBST1RPX0lQVjYsIElQVjZfQURE X01FTUJFUlNISVAsICZtcmVxNiwgc2l6ZW9mKG1yZXE2KSkgPCAwKSB7Cj4gICAgICAgICAgICAg IGZmX2xvZ19uZXRfZXJyb3IobG9nY3R4LCBBVl9MT0dfRVJST1IsICJzZXRzb2Nrb3B0KElQVjZf QUREX01FTUJFUlNISVApIik7Cj4gICAgICAgICAgICAgIHJldHVybiBmZl9uZXRlcnJubygpOwo+ IEBAIC0yMzEsNiArMjMwLDM4IEBAIHN0YXRpYyBpbnQgdWRwX2pvaW5fbXVsdGljYXN0X2dyb3Vw KGludCBzb2NrZmQsIHN0cnVjdCBzb2NrYWRkciAqYWRkciwKPiAgICAgIHJldHVybiAwOwo+ICB9 Cj4KPiArc3RhdGljIGludCB1ZHBfc2V0X211bHRpY2FzdF9pbnRlcmZhY2UoaW50IHNvY2tmZCwg c3RydWN0IHNvY2thZGRyICphZGRyLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBzdHJ1Y3Qgc29ja2FkZHIgKmxvY2FsX2FkZHIsIHZvaWQgKmxvZ2N0eCkKPiArewo+ICsj aWZkZWYgSVBfTVVMVElDQVNUX0lGCj4gKyAgICBpZiAoYWRkci0+c2FfZmFtaWx5ID09IEFGX0lO RVQpIHsKPiArICAgICAgICBzdHJ1Y3QgaXBfbXJlcSBtcmVxOwo+ICsKPiArICAgICAgICBtcmVx Lmltcl9tdWx0aWFkZHIuc19hZGRyID0gKChzdHJ1Y3Qgc29ja2FkZHJfaW4gKilhZGRyKS0+c2lu X2FkZHIuc19hZGRyOwo+ICsgICAgICAgIGlmIChsb2NhbF9hZGRyKQo+ICsgICAgICAgICAgICBt cmVxLmltcl9pbnRlcmZhY2UgPSAoKHN0cnVjdCBzb2NrYWRkcl9pbiAqKWxvY2FsX2FkZHIpLT5z aW5fYWRkcjsKPiArICAgICAgICBlbHNlCj4gKyAgICAgICAgICAgIG1yZXEuaW1yX2ludGVyZmFj ZS5zX2FkZHIgPSBJTkFERFJfQU5ZOwo+ICsKPiArICAgICAgICBpZiAoc2V0c29ja29wdChzb2Nr ZmQsIElQUFJPVE9fSVAsIElQX01VTFRJQ0FTVF9JRiwgKGNvbnN0IHZvaWQgKikmbXJlcSwgc2l6 ZW9mKG1yZXEpKSA8IDApIHsKPiArICAgICAgICAgICAgZmZfbG9nX25ldF9lcnJvcihsb2djdHgs IEFWX0xPR19FUlJPUiwgInNldHNvY2tvcHQoSVBfTVVMVElDQVNUX0lGKSIpOwo+ICsgICAgICAg ICAgICByZXR1cm4gZmZfbmV0ZXJybm8oKTsKPiArICAgICAgICB9Cj4gKyAgICB9Cj4gKyNlbmRp Zgo+ICsjaWYgZGVmaW5lZChJUFY2X01VTFRJQ0FTVF9JRikgJiYgZGVmaW5lZChJUFBST1RPX0lQ VjYpCj4gKyAgICBpZiAoYWRkci0+c2FfZmFtaWx5ID09IEFGX0lORVQ2KSB7Cj4gKyAgICAgICAg dW5zaWduZWQgaW50IGlmYWNlID0gZmZfaXBfcmVzb2x2ZV9pbnRlcmZhY2VfaW5kZXgoKHN0cnVj dCBzb2NrYWRkcl9zdG9yYWdlICopbG9jYWxfYWRkcik7Cj4gKwo+ICsgICAgICAgIGlmIChzZXRz b2Nrb3B0KHNvY2tmZCwgSVBQUk9UT19JUFY2LCBJUFY2X01VTFRJQ0FTVF9JRiwgJmlmYWNlLCBz aXplb2YodW5zaWduZWQgaW50KSkgPCAwKSB7Cj4gKyAgICAgICAgICAgIGZmX2xvZ19uZXRfZXJy b3IobG9nY3R4LCBBVl9MT0dfRVJST1IsICJzZXRzb2Nrb3B0KElQVjZfTVVMVElDQVNUX0lGKSIp Owo+ICsgICAgICAgICAgICByZXR1cm4gZmZfbmV0ZXJybm8oKTsKPiArICAgICAgICB9Cj4gKyAg ICB9Cj4gKyNlbmRpZgo+ICsgICAgcmV0dXJuIDA7Cj4gK30KPiArCj4gIHN0YXRpYyBpbnQgdWRw X2xlYXZlX211bHRpY2FzdF9ncm91cChpbnQgc29ja2ZkLCBzdHJ1Y3Qgc29ja2FkZHIgKmFkZHIs Cj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3Qgc29ja2FkZHIg KmxvY2FsX2FkZHIsIHZvaWQgKmxvZ2N0eCkKPiAgewo+IEBAIC0yNTQsOCArMjg1LDcgQEAgc3Rh dGljIGludCB1ZHBfbGVhdmVfbXVsdGljYXN0X2dyb3VwKGludCBzb2NrZmQsIHN0cnVjdCBzb2Nr YWRkciAqYWRkciwKPiAgICAgICAgICBzdHJ1Y3QgaXB2Nl9tcmVxIG1yZXE2Owo+Cj4gICAgICAg ICAgbWVtY3B5KCZtcmVxNi5pcHY2bXJfbXVsdGlhZGRyLCAmKCgoc3RydWN0IHNvY2thZGRyX2lu NiAqKWFkZHIpLT5zaW42X2FkZHIpLCBzaXplb2Yoc3RydWN0IGluNl9hZGRyKSk7Cj4gLSAgICAg ICAgLy9UT0RPOiBJbnRlcmZhY2UgaW5kZXggc2hvdWxkIGJlIGxvb2tlZCB1cCBmcm9tIGxvY2Fs X2FkZHIKPiAtICAgICAgICBtcmVxNi5pcHY2bXJfaW50ZXJmYWNlID0gMDsKPiArICAgICAgICBt cmVxNi5pcHY2bXJfaW50ZXJmYWNlID0gZmZfaXBfcmVzb2x2ZV9pbnRlcmZhY2VfaW5kZXgoKHN0 cnVjdCBzb2NrYWRkcl9zdG9yYWdlICopbG9jYWxfYWRkcik7Cj4gICAgICAgICAgaWYgKHNldHNv Y2tvcHQoc29ja2ZkLCBJUFBST1RPX0lQVjYsIElQVjZfRFJPUF9NRU1CRVJTSElQLCAmbXJlcTYs IHNpemVvZihtcmVxNikpIDwgMCkgewo+ICAgICAgICAgICAgICBmZl9sb2dfbmV0X2Vycm9yKGxv Z2N0eCwgQVZfTE9HX0VSUk9SLCAic2V0c29ja29wdChJUFY2X0RST1BfTUVNQkVSU0hJUCkiKTsK PiAgICAgICAgICAgICAgcmV0dXJuIC0xOwo+IEBAIC0yODIsOCArMzEyLDcgQEAgc3RhdGljIGlu dCB1ZHBfc2V0X211bHRpY2FzdF9zb3VyY2VzKFVSTENvbnRleHQgKmgsCj4gICAgICAgICAgICAg IHN0cnVjdCBncm91cF9zb3VyY2VfcmVxIG1yZXFzOwo+ICAgICAgICAgICAgICBpbnQgbGV2ZWwg PSBhZGRyLT5zYV9mYW1pbHkgPT0gQUZfSU5FVCA/IElQUFJPVE9fSVAgOiBJUFBST1RPX0lQVjY7 Cj4KPiAtICAgICAgICAgICAgLy9UT0RPOiBJbnRlcmZhY2UgaW5kZXggc2hvdWxkIGJlIGxvb2tl ZCB1cCBmcm9tIGxvY2FsX2FkZHIKPiAtICAgICAgICAgICAgbXJlcXMuZ3NyX2ludGVyZmFjZSA9 IDA7Cj4gKyAgICAgICAgICAgIG1yZXFzLmdzcl9pbnRlcmZhY2UgPSBmZl9pcF9yZXNvbHZlX2lu dGVyZmFjZV9pbmRleChsb2NhbF9hZGRyKTsKPiAgICAgICAgICAgICAgbWVtY3B5KCZtcmVxcy5n c3JfZ3JvdXAsIGFkZHIsIGFkZHJfbGVuKTsKPiAgICAgICAgICAgICAgbWVtY3B5KCZtcmVxcy5n c3Jfc291cmNlLCAmc291cmNlc1tpXSwgc2l6ZW9mKCpzb3VyY2VzKSk7Cj4KPiBAQCAtODM5LDEw ICs4NjgsMzkgQEAgc3RhdGljIGludCB1ZHBfb3BlbihVUkxDb250ZXh0ICpoLCBjb25zdCBjaGFy ICp1cmksIGludCBmbGFncykKPiAgICAgICAqIHBvcnQuIFRoaXMgZmFpbHMgb24gd2luZG93cy4g VGhpcyBtYWtlcyBzZW5kaW5nIHRvIHRoZSBzYW1lIGFkZHJlc3MKPiAgICAgICAqIHVzaW5nIHNl bmR0bygpIGZhaWwsIHNvIG9ubHkgZG8gaXQgaWYgd2UncmUgb3BlbmVkIGluIHJlYWQtb25seSBt b2RlLiAqLwo+ICAgICAgaWYgKHMtPmlzX211bHRpY2FzdCAmJiAoaC0+ZmxhZ3MgJiBBVklPX0ZM QUdfUkVBRCkpIHsKPiArI2lmIGRlZmluZWQoU09fQklORFRPREVWSUNFKSAmJiAhSEFWRV9XSU5T T0NLMl9ICj4gKyAgICAgICAgewo+ICsgICAgICAgICAgICBzdHJ1Y3QgaWZyZXEgaWZyOwo+ICsg ICAgICAgICAgICB1bnNpZ25lZCBpbnQgaWZhY2U7Cj4gKyAgICAgICAgICAgIGlmYWNlID0gZmZf aXBfcmVzb2x2ZV9pbnRlcmZhY2VfaW5kZXgoKHN0cnVjdCBzb2NrYWRkcl9zdG9yYWdlICopJnMt PmxvY2FsX2FkZHJfc3RvcmFnZSk7Cj4gKyAgICAgICAgICAgIG1lbXNldCgmaWZyLCAwLCBzaXpl b2YoaWZyKSk7Cj4gKwo+ICsgICAgICAgICAgICBpZiAoaWZfaW5kZXh0b25hbWUoaWZhY2UsIGlm ci5pZnJfbmFtZSkpIHsKPiArICAgICAgICAgICAgICAgIGlmIChzZXRzb2Nrb3B0KHVkcF9mZCwg U09MX1NPQ0tFVCwgU09fQklORFRPREVWSUNFLCAodm9pZCAqKSZpZnIsIHNpemVvZihpZnIpKSA8 IDApIHsKPiArICAgICAgICAgICAgICAgICAgICBwZXJyb3IoInNldHNvY2tvcHQgU09fQklORFRP REVWSUNFIik7CgpUaGlzIHNob3VsZCB1c2UgdGhlIHByb3BlciBhdl9sb2cgbG9nZ2luZyBpbnN0 ZWFkLgoKPiArICAgICAgICAgICAgICAgIH0KPiArICAgICAgICAgICAgfQo+ICsgICAgICAgIH0K PiArI2VuZGlmIC8vIGRlZmluZWQoU09fQklORFRPREVWSUNFKSAmJiAhSEFWRV9XSU5TT0NLMl9I Cj4gICAgICAgICAgYmluZF9yZXQgPSBiaW5kKHVkcF9mZCwoc3RydWN0IHNvY2thZGRyICopJnMt PmRlc3RfYWRkciwgbGVuKTsKPiAgICAgIH0KPiAtICAgIC8qIGJpbmQgdG8gdGhlIGxvY2FsIGFk ZHJlc3MgaWYgbm90IG11bHRpY2FzdCBvciBpZiB0aGUgbXVsdGljYXN0Cj4gLSAgICAgKiBiaW5k IGZhaWxlZCAqLwo+ICsKPiArICAgIC8qIGJpbmQgdG8gQUREUl9BTlkgaWYgdGhlIG11bHRpY2Fz dCBiaW5kIGZhaWxlZCAqLwo+ICsgICAgaWYgKHMtPmlzX211bHRpY2FzdCAmJiBiaW5kX3JldCA8 IDApIHsKPiArICAgICAgICBzdHJ1Y3QgYWRkcmluZm8gKnJlczsKPiArCj4gKyAgICAgICAgaWYg KHMtPmRlc3RfYWRkci5zc19mYW1pbHkgPT0gQUZfSU5FVCkKPiArICAgICAgICAgICAgcmVzID0g ZmZfaXBfcmVzb2x2ZV9ob3N0KGgsICIwLjAuMC4wIiwgMCwgU09DS19ER1JBTSwgQUZfVU5TUEVD LCAwKTsKPiArICAgICAgICBlbHNlIGlmIChzLT5kZXN0X2FkZHIuc3NfZmFtaWx5ID09IEFGX0lO RVQ2KQo+ICsgICAgICAgICAgICByZXMgPSBmZl9pcF9yZXNvbHZlX2hvc3QoaCwgIjo6IiwgMCwg U09DS19ER1JBTSwgQUZfVU5TUEVDLCAwKTsKPiArCj4gKyAgICAgICAgaWYgKHJlcyAmJiByZXMt PmFpX2FkZHIpIHsKPiArICAgICAgICAgICAgYmluZF9yZXQgPSBiaW5kKHVkcF9mZCwgcmVzLT5h aV9hZGRyLCByZXMtPmFpX2FkZHJsZW4pOwo+ICsgICAgICAgIH0KPiArCj4gKyAgICAgICAgZnJl ZWFkZHJpbmZvKHJlcyk7Cj4gKyAgICB9Cj4gKwo+ICAgICAgLyogdGhlIGJpbmQgaXMgbmVlZGVk IHRvIGdpdmUgYSBwb3J0IHRvIHRoZSBzb2NrZXQgbm93ICovCj4gICAgICBpZiAoYmluZF9yZXQg PCAwICYmIGJpbmQodWRwX2ZkLChzdHJ1Y3Qgc29ja2FkZHIgKikmbXlfYWRkciwgbGVuKSA8IDAp IHsKPiAgICAgICAgICBmZl9sb2dfbmV0X2Vycm9yKGgsIEFWX0xPR19FUlJPUiwgImJpbmQgZmFp bGVkIik7Cj4gQEAgLTg1NSw2ICs5MTMsMTIgQEAgc3RhdGljIGludCB1ZHBfb3BlbihVUkxDb250 ZXh0ICpoLCBjb25zdCBjaGFyICp1cmksIGludCBmbGFncykKPiAgICAgIHMtPmxvY2FsX3BvcnQg PSB1ZHBfcG9ydCgmbXlfYWRkciwgbGVuKTsKPgo+ICAgICAgaWYgKHMtPmlzX211bHRpY2FzdCkg ewo+ICsgICAgICAgIGlmICgocmV0ID0gdWRwX3NldF9tdWx0aWNhc3RfaW50ZXJmYWNlKHVkcF9m ZCwKPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzdHJ1Y3Qgc29j a2FkZHIgKikmcy0+ZGVzdF9hZGRyLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgKHN0cnVjdCBzb2NrYWRkciAqKSZzLT5sb2NhbF9hZGRyX3N0b3JhZ2UsCj4gKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoKSkgPCAwKQo+ICsgICAgICAg ICAgICBnb3RvIGZhaWw7Cj4gKwo+ICAgICAgICAgIGlmIChoLT5mbGFncyAmIEFWSU9fRkxBR19X UklURSkgewo+ICAgICAgICAgICAgICAvKiBvdXRwdXQgKi8KPiAgICAgICAgICAgICAgaWYgKChy ZXQgPSB1ZHBfc2V0X211bHRpY2FzdF90dGwodWRwX2ZkLCBzLT50dGwsIChzdHJ1Y3Qgc29ja2Fk ZHIgKikmcy0+ZGVzdF9hZGRyLCBoKSkgPCAwKQo+IC0tCj4gMi40MS4wLndpbmRvd3MuMgo+Cj4K PiBUaGlzIG1lc3NhZ2UgaGFzIGJlZW4gbWFya2VkIGFzIFB1YmxpYyBvbiAwMy8xNC8yMDI0IDA5 OjIyWi4KPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+ IGZmbXBlZy1kZXZlbCBtYWlsaW5nIGxpc3QKPiBmZm1wZWctZGV2ZWxAZmZtcGVnLm9yZwo+IGh0 dHBzOi8vZmZtcGVnLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ZmbXBlZy1kZXZlbAo+Cj4gVG8gdW5z dWJzY3JpYmUsIHZpc2l0IGxpbmsgYWJvdmUsIG9yIGVtYWlsCj4gZmZtcGVnLWRldmVsLXJlcXVl c3RAZmZtcGVnLm9yZyB3aXRoIHN1YmplY3QgInVuc3Vic2NyaWJlIi4KX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZmZtcGVnLWRldmVsIG1haWxpbmcgbGlz dApmZm1wZWctZGV2ZWxAZmZtcGVnLm9yZwpodHRwczovL2ZmbXBlZy5vcmcvbWFpbG1hbi9saXN0 aW5mby9mZm1wZWctZGV2ZWwKClRvIHVuc3Vic2NyaWJlLCB2aXNpdCBsaW5rIGFib3ZlLCBvciBl bWFpbApmZm1wZWctZGV2ZWwtcmVxdWVzdEBmZm1wZWcub3JnIHdpdGggc3ViamVjdCAidW5zdWJz Y3JpYmUiLgo=