<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>216038</bug_id>
          
          <creation_ts>2020-09-01 08:46:15 -0700</creation_ts>
          <short_desc>[SOUP] webkit_web_view_get_https_status() broken with service workers</short_desc>
          <delta_ts>2020-10-13 11:29:46 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKitGTK</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=196182</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=206403</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Michael Catanzaro">mcatanzaro</reporter>
          <assigned_to name="Michael Catanzaro">mcatanzaro</assigned_to>
          <cc>achristensen</cc>
    
    <cc>berto</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>cgarcia</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gustavo</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>pgriffis</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1684476</commentid>
    <comment_count>0</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2020-09-01 08:46:15 -0700</bug_when>
    <thetext>Bug #206403 is probably not fixed for libsoup ports because CertificateInfo::isolated_copy is not implemented.

I don&apos;t know how to test service workers. If anybody knows of a test page to see if it works or not, that would be cool.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1684478</commentid>
    <comment_count>1</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2020-09-01 08:49:04 -0700</bug_when>
    <thetext>https://twitter.com</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1684490</commentid>
    <comment_count>2</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2020-09-01 09:18:57 -0700</bug_when>
    <thetext>OK thanks. We just got a report that was broken in https://gitlab.gnome.org/GNOME/epiphany/-/issues/1323, which is how I wound up here, although I had incorrectly assumed it was using offline web application cache rather than service workers.

I can reproduce this problem on twitter.com in WebKitGTK 2.28.4, but not in 2.29.91, which indicates it is probably fixed. HOWEVER... CertificateInfo::isolated_copy is still not implemented, so that&apos;s weird. Magic?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1684496</commentid>
    <comment_count>3</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2020-09-01 09:31:52 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #2)
&gt; I can reproduce this problem on twitter.com in WebKitGTK 2.28.4, but not in
&gt; 2.29.91, which indicates it is probably fixed. HOWEVER...
&gt; CertificateInfo::isolated_copy is still not implemented, so that&apos;s weird.
&gt; Magic?

So without having bisected it, I would guess that you (Alex) fixed it in r264724, but I don&apos;t understand how it&apos;s possible with that function unimplemented. WebKit is actually somehow loading the correct TLS certificate -- I can inspect it in Epiphany and view its properties -- whereas previously it reported that the website had no security (webkit_web_view_get_tls_info() returned NULL), indicating that the main resource was loaded via service workers. So there *should* be no way for WebKit to get the CertificateInfo if it&apos;s not properly encoded. But the encoding depends on CertificateInfo::isolated_copy, which just returns an empty struct, so ??????

I did think about how to implement CertificateInfo::isolated_copy. It&apos;s currently impossible to do without adding new GLib API, because the GTlsCertificate:private-key property is not readable. Internally to GTlsCertificate, it will be a PKCS#11 token, which is just a string that is simple to copy for use across threads. But no way to get it without new API. I&apos;ve been considering adding it anyway for an unrelated project.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1684497</commentid>
    <comment_count>4</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2020-09-01 09:33:22 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #3)
&gt; But no way to get it without new API. I&apos;ve been considering adding it anyway for an unrelated project.

(It would be: g_tls_certificate_copy().)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1695897</commentid>
    <comment_count>5</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2020-10-08 08:14:09 -0700</bug_when>
    <thetext>Definitely still broken, I can reproduce on https://twitter.com/othermaciej. We will either need to add new GLib API to allow implementing CertificateInfo::isolated_copy, or else reconsider other possible solutions (e.g. we might be able to use a partial isolated copy that doesn&apos;t copy everything).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1695898</commentid>
    <comment_count>6</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2020-10-08 08:16:33 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #5)
&gt; Definitely still broken, I can reproduce on https://twitter.com/othermaciej.

I&apos;m using 2.30.1 currently. Not sure why I wasn&apos;t able to reproduce in 2.29.91 last month.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1696761</commentid>
    <comment_count>7</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2020-10-11 18:50:43 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #6)
&gt; I&apos;m using 2.30.1 currently. Not sure why I wasn&apos;t able to reproduce in
&gt; 2.29.91 last month.

I probably didn&apos;t refresh the page.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1696763</commentid>
    <comment_count>8</comment_count>
      <attachid>411087</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2020-10-11 19:09:56 -0700</bug_when>
    <thetext>Created attachment 411087
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1696768</commentid>
    <comment_count>9</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2020-10-11 19:15:54 -0700</bug_when>
    <thetext>Reference: https://discourse.gnome.org/t/epiphany-gnome-web-says-this-site-insecure/4443/8</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1696770</commentid>
    <comment_count>10</comment_count>
      <attachid>411088</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2020-10-11 19:18:27 -0700</bug_when>
    <thetext>Created attachment 411088
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1697195</commentid>
    <comment_count>11</comment_count>
      <attachid>411088</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2020-10-13 01:07:45 -0700</bug_when>
    <thetext>Comment on attachment 411088
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=411088&amp;action=review

&gt; Source/WebCore/platform/network/soup/CertificateInfoSoup.cpp:73
&gt; +    RELEASE_ASSERT(!error);

Since you are using the GError just to assert it should never fail, why not just pass nullptr and assert cert is not nullptr?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1697248</commentid>
    <comment_count>12</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2020-10-13 07:37:13 -0700</bug_when>
    <thetext>(In reply to Carlos Garcia Campos from comment #11)
&gt; Since you are using the GError just to assert it should never fail, why not
&gt; just pass nullptr and assert cert is not nullptr?

Good idea.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1697262</commentid>
    <comment_count>13</comment_count>
      <attachid>411220</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2020-10-13 08:11:05 -0700</bug_when>
    <thetext>Created attachment 411220
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1697264</commentid>
    <comment_count>14</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-10-13 08:39:04 -0700</bug_when>
    <thetext>Committed r268394: &lt;https://trac.webkit.org/changeset/268394&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 411220.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1697308</commentid>
    <comment_count>15</comment_count>
      <attachid>411220</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2020-10-13 11:23:41 -0700</bug_when>
    <thetext>Comment on attachment 411220
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=411220&amp;action=review

&gt; Source/WebCore/platform/network/soup/CertificateInfoSoup.cpp:81
&gt; +    // certificate. So be careful?

CertificateInfo::isolatedCopy should only be used for server certificates.  We need better abstractions.

&gt; Source/WebCore/platform/network/soup/CertificateInfoSoup.cpp:83
&gt; +    // We should add g_tls_certificate_copy() to GLib so that we can copy the private portion too.

I wonder how you would handle the case where the private key is on a USB device that does not allow access to the private key.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1697311</commentid>
    <comment_count>16</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2020-10-13 11:29:46 -0700</bug_when>
    <thetext>(In reply to Alex Christensen from comment #15)
&gt; &gt; Source/WebCore/platform/network/soup/CertificateInfoSoup.cpp:83
&gt; &gt; +    // We should add g_tls_certificate_copy() to GLib so that we can copy the private portion too.
&gt; 
&gt; I wonder how you would handle the case where the private key is on a USB
&gt; device that does not allow access to the private key.

That&apos;s no problem for GLib, because GTlsCertificate knows its PKCS#11 URI. (Actually, that is already going to be public API in GLib 2.68, since https://gitlab.gnome.org/GNOME/glib/-/issues/1809.) But that doesn&apos;t help WebKit, since if it&apos;s not a PKCS#11 certificate, then we really do need to copy the private key to copy the entire certificate, but the private-key property cannot ever be made readable (because then it would be impossible for PKCS#11-backed certificates to implement the API).</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>411087</attachid>
            <date>2020-10-11 19:09:56 -0700</date>
            <delta_ts>2020-10-11 19:18:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-216038-20201011210955.patch</filename>
            <type>text/plain</type>
            <size>7024</size>
            <attacher name="Michael Catanzaro">mcatanzaro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4MzMwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmY0MjNhMGJiMTZmZWNj
OTBjNmEyMzg0MGVmMTkxYjM1YTk2Y2Y1Ni4uNDM1YmJmYWJlZWY0ODg0ZjQwNmQzY2QzMzQ3YWQy
MzFiNzZkYmM2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUxIEBACisyMDIwLTEwLTExICBNaWNo
YWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25vbWUub3JnPgorCisgICAgICAgIFtTT1VQXSB3
ZWJraXRfd2ViX3ZpZXdfZ2V0X2h0dHBzX3N0YXR1cygpIGJyb2tlbiB3aXRoIHNlcnZpY2Ugd29y
a2VycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE2
MDM4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhp
cyBpbXBsZW1lbnRzIENlcnRpZmljYXRlSW5mbzo6aXNvbGF0ZWRDb3B5IGZvciBsaWJzb3VwIHBv
cnRzLiBUaGlzIGlzIGltcG9zc2libGUgdG8gZG8KKyAgICAgICAgY29tcGxldGVseSwgYmVjYXVz
ZSB3ZSBjYW5ub3QgY29weSB0aGUgcHJpdmF0ZSBrZXkgcG9ydGlvbiBvZiB0aGUgR1Rsc0NlcnRp
ZmljYXRlLCBiZWNhdXNlCisgICAgICAgIGl0IGlzIGEgd3JpdGUtb25seSBwcm9wZXJ0eSwgYmVj
YXVzZSBpdCBtaWdodCBiZSBiYWNrZWQgYnkgYSBoYXJkd2FyZSB0b2tlbiBhbmQgdGhlcmVmb3Jl
CisgICAgICAgIHJlYWxseSBpbXBvc3NpYmxlIHRvIHdyaXRlIHNvZnR3YXJlIHRvIGdldCBpdC4g
SWYgd2Ugd2VyZSB0byBpbXBsZW1lbnQgZ190bHNfY2VydGlmaWNhdGVfY29weSgpCisgICAgICAg
IGluIEdMaWIgLS0gd2hpY2ggSSB3aWxsIHByb2JhYmx5IGRvIGV2ZW50dWFsbHksIGJlY2F1c2Ug
SSBuZWVkIHRoaXMgb3V0c2lkZSBXZWJLaXQgYXMgd2VsbCAtLQorICAgICAgICB0aGVuIEdUbHND
ZXJ0aWZpY2F0ZSBpbXBsZW1lbnRhdGlvbnMgY291bGQgY29weSB0aGUgcHJpdmF0ZSBrZXkgb3Ig
UEtDUyMxMSBoYW5kbGUgb3IKKyAgICAgICAgd2hhdGV2ZXIuCisKKyAgICAgICAgQnV0IGFueXdh
eSwgbGV0IG5vdCBwZXJmZWN0IGJlIHRoZSBlbmVteSBvZiB0aGUgZ29vZC4gV2Ugb25seSBuZWVk
IHRoaXMgZm9yIHNlcnZpY2Ugd29ya2VycworICAgICAgICBjdXJyZW50bHkuIChQcm9iYWJseSB0
aGF0J3MgYWxsIHdlJ2xsICpldmVyKiBuZWVkIGl0IGZvci4pIFNvIHdlIGFyZSBvbmx5IHdvcmtp
bmcgd2l0aAorICAgICAgICBzZXJ2ZXIgY2VydGlmaWNhdGVzLCBhbmQgdGhlIHByaXZhdGUgcG9y
dGlvbiBvZiB0aGUgY2VydGlmaWNhdGUgaXMgZ3VhcmFudGVlZCB0byBub3QgZXhpc3QKKyAgICAg
ICAgKGJlY2F1c2Ugc2VydmVycyBkb24ndCBzZW5kIHVzIHRoZWlyIHByaXZhdGUga2V5cyksIGFu
ZCB3ZSBjYW4ganVzdCBmb3JnZXQgYWJvdXQgaXQuIEFzCisgICAgICAgIGxvbmcgYXMgbm9ib2R5
IHRyaWVzIHRvIGNvcHkgYSBjbGllbnQgY2VydGlmaWNhdGUgaW4gdGhlIGZ1dHVyZSAtLSB3aGVy
ZSB3ZSByZWFsbHkgd291bGQKKyAgICAgICAgbmVlZCB0aGUgcHJpdmF0ZSBrZXkgcG9ydGlvbiBv
ZiB0aGUgY2VydGlmaWNhdGUgLS0gdGhpcyB3aWxsIGJlIHBlcmZlY3RseSBmaW5lLgorCisgICAg
ICAgIEFjdHVhbGx5IGNvcHlpbmcgdGhlIGNlcnRpZmljYXRlIGlzIGtpbmQgb2YgYW5ub3lpbmcs
IGJlY2F1c2UgYSBjaGFpbiBvZiBjZXJ0aWZpY2F0ZXMgaXMKKyAgICAgICAgcmVwcmVzZW50ZWQg
YnkgaGF2aW5nIHRoZSBtYWluIChzZXJ2ZXIpIGNlcnRpZmljYXRlIGtlZXAgYSByZWZlcmVuY2Ug
dG8gaXRzIGlzc3Vlciwgd2hpY2ggaXMKKyAgICAgICAgbm90IHJlZmVyZW5jZWQgYW55d2hlcmUg
ZWxzZSwgc28gd2UgaGF2ZSB0byByZWNvbnN0cnVjdCB0aGUgY2hhaW4gaW4gcmV2ZXJzZSBvcmRl
ciBzdGFydGluZworICAgICAgICBmcm9tIHRoZSBmaW5hbCBjZXJ0aWZpY2F0ZSwgd29ya2luZyBi
YWNrIHRvd2FyZHMgdGhlIHNlcnZlciBjZXJ0LiBGdW4uIExldCdzIGFsc28gYmUKKyAgICAgICAg
Y2FyZWZ1bCB0byBjb25zdHJ1Y3QgYSBjb21wbGV0ZWx5IG5ldyBHQnl0ZUFycmF5IHJhdGhlciB0
aGFuIGV4cGVjdGluZyB0aGUgR1Rsc0NlcnRpZmljYXRlCisgICAgICAgIGltcGxlbWVudGF0aW9u
IHRvIGNvcHkgaXQgZm9yIHVzLiBCZWNhdXNlIEdUbHNDZXJ0aWZpY2F0ZSBpcyBpbXBsZW1lbnRl
ZCBieSBhbiBleHRlbnNpb24KKyAgICAgICAgcG9pbnQgYW5kIGFwcGxpY2F0aW9ucyBhbmQgc3lz
dGVtIGFkbWluaXN0cmF0b3JzIGNhbiAtLSBhbmQgZG8gLS0gaW1wbGVtZW50IHRoZWlyIG93biwK
KyAgICAgICAgaW1wbGVtZW50YXRpb25zIGNvdWxkIGRvIGFueXRoaW5nLCBpbmNsdWRpbmcga2Vl
cCBhIHJlZmVyZW5jZSB0byB0aGUgR0J5dGVBcnJheSB0aGF0IHdlCisgICAgICAgIHBhc3MgaW4u
CisKKyAgICAgICAgQmV3YXJlIHRoYXQgc2luY2UgdGhlIENlcnRpZmljYXRlSW5mbyBpcyBlbmNv
ZGVkIGluIHRoZSBzZXJ2aWNlIHdvcmtlciByZWdpc3RyYXRpb24KKyAgICAgICAgZGF0YWJhc2Us
IHNvIHRoaXMgd29uJ3Qgd29yayBpZiB0aGUgY2VydGlmaWNhdGUgaXMgYWxyZWFkeSBtaXNzaW5n
IGZyb20gb2xkZXIgYnVpbGRzIG9mCisgICAgICAgIFdlYktpdC4gSSBkb24ndCBhdHRlbXB0IHRv
IGZpeCB0aGlzLCBzaW5jZSBJIHRoaW5rIGFsbCB3ZSBjYW4gZG8gaXMgZGVsZXRlIGFuZCByZWNy
ZWF0ZSB0aGUKKyAgICAgICAgcmVnaXN0cmF0aW9uIGRhdGFiYXNlLgorCisgICAgICAgIEl0IHdv
dWxkIGJlIG5pY2UgdG8gaGF2ZSBhIHRlc3QgZm9yIHRoaXMsIGJ1dCB3cml0aW5nIHRlc3RzIGlz
IGhhcmQuIEFsc28sIEkgZG9uJ3QgcmVhbGx5CisgICAgICAgIHdhbnQgdG8gbGVhcm4gd2hhdCBz
ZXJ2aWNlIHdvcmtlcnMgYXJlLiA6KQorCisgICAgICAgIERyaXZlLWJ5IGZpeDogYWxzbyByZW1v
dmUgZXhwbGljaXQgZnJvbSBhIGNvbnN0cnVjdG9yIHRoYXQgZG9lc24ndCBuZWVkIGl0LgorCisg
ICAgICAgICogcGxhdGZvcm0vbmV0d29yay9zb3VwL0NlcnRpZmljYXRlSW5mby5oOgorICAgICAg
ICAoV2ViQ29yZTo6Q2VydGlmaWNhdGVJbmZvOjppc29sYXRlZENvcHkgY29uc3QpOgorICAgICAg
ICAqIHBsYXRmb3JtL25ldHdvcmsvc291cC9DZXJ0aWZpY2F0ZUluZm9Tb3VwLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OmNyZWF0ZUNlcnRpZmljYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkNlcnRp
ZmljYXRlSW5mbzo6aXNvbGF0ZWRDb3B5IGNvbnN0KToKKwogMjAyMC0xMC0xMSAgTHVtaW5nIFlp
biAgPGx1bWluZ195aW5AYXBwbGUuY29tPgogCiAgICAgICAgIFN0cmlwIHBhdGNoIHZlcnNpb24g
ZnJvbSBUQVJHRVRfTUFDX09TX1hfVkVSU0lPTl9NQUpPUiB3aGVuIGJ1aWxkaW5nIGZvciBtYWNP
UyBCaWcgU3VyIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9z
b3VwL0NlcnRpZmljYXRlSW5mby5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9z
b3VwL0NlcnRpZmljYXRlSW5mby5oCmluZGV4IGE5YmNjNmQ5ODI4ZDJhZTg3ODJjNGY4Mjc5ZDc0
M2I4ODdhODQ2NTEuLmM0NGIwYWMzYTI3NGU2YjIyYzhlMTVlNjRmMGEyOWU3NDUwYWIyYjMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291cC9DZXJ0aWZpY2F0
ZUluZm8uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQ2VydGlm
aWNhdGVJbmZvLmgKQEAgLTQ1LDEwICs0NSwxMCBAQCBwdWJsaWM6CiAgICAgQ2VydGlmaWNhdGVJ
bmZvKCk7CiAgICAgZXhwbGljaXQgQ2VydGlmaWNhdGVJbmZvKGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlUmVzcG9uc2UmKTsKICAgICBleHBsaWNpdCBDZXJ0aWZpY2F0ZUluZm8oY29uc3QgV2ViQ29y
ZTo6UmVzb3VyY2VFcnJvciYpOwotICAgIGV4cGxpY2l0IENlcnRpZmljYXRlSW5mbyhHVGxzQ2Vy
dGlmaWNhdGUqLCBHVGxzQ2VydGlmaWNhdGVGbGFncyk7CisgICAgQ2VydGlmaWNhdGVJbmZvKEdU
bHNDZXJ0aWZpY2F0ZSosIEdUbHNDZXJ0aWZpY2F0ZUZsYWdzKTsKICAgICBXRUJDT1JFX0VYUE9S
VCB+Q2VydGlmaWNhdGVJbmZvKCk7CiAKLSAgICBDZXJ0aWZpY2F0ZUluZm8gaXNvbGF0ZWRDb3B5
KCkgY29uc3QgeyBub3RJbXBsZW1lbnRlZCgpOyByZXR1cm4geyB9OyB9CisgICAgQ2VydGlmaWNh
dGVJbmZvIGlzb2xhdGVkQ29weSgpIGNvbnN0OwogCiAgICAgR1Rsc0NlcnRpZmljYXRlKiBjZXJ0
aWZpY2F0ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2VydGlmaWNhdGUuZ2V0KCk7IH0KICAgICB2b2lk
IHNldENlcnRpZmljYXRlKEdUbHNDZXJ0aWZpY2F0ZSogY2VydGlmaWNhdGUpIHsgbV9jZXJ0aWZp
Y2F0ZSA9IGNlcnRpZmljYXRlOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9uZXR3b3JrL3NvdXAvQ2VydGlmaWNhdGVJbmZvU291cC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9uZXR3b3JrL3NvdXAvQ2VydGlmaWNhdGVJbmZvU291cC5jcHAKaW5kZXggY2VmYWIx
ZmRmM2Y0Y2M5NmJmNTdlMTQ5MDg0MTU2MDNlM2RkNGE1Yi4uNmUwMTJlZWY4YzRiMDk2ODM5ZTMy
ODhmZWUzN2ZjMDU5YmY4MzNjZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bmV0d29yay9zb3VwL0NlcnRpZmljYXRlSW5mb1NvdXAuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvc291cC9DZXJ0aWZpY2F0ZUluZm9Tb3VwLmNwcApAQCAtMzIsNiAr
MzIsOCBAQAogI2luY2x1ZGUgPFJlc291cmNlRXJyb3IuaD4KICNpbmNsdWRlIDxSZXNvdXJjZVJl
c3BvbnNlLmg+CiAjaW5jbHVkZSA8bGlic291cC9zb3VwLmg+CisjaW5jbHVkZSA8d3RmL2dsaWIv
R1JlZlB0ci5oPgorI2luY2x1ZGUgPHd0Zi9nbGliL0dVbmlxdWVQdHIuaD4KIAogbmFtZXNwYWNl
IFdlYkNvcmUgewogCkBAIC02MCw2ICs2Miw0OCBAQCBDZXJ0aWZpY2F0ZUluZm86OkNlcnRpZmlj
YXRlSW5mbyhHVGxzQ2VydGlmaWNhdGUqIGNlcnRpZmljYXRlLCBHVGxzQ2VydGlmaWNhdGVGbAog
CiBDZXJ0aWZpY2F0ZUluZm86On5DZXJ0aWZpY2F0ZUluZm8oKSA9IGRlZmF1bHQ7CiAKK3N0YXRp
YyBHUmVmUHRyPEdUbHNDZXJ0aWZpY2F0ZT4gY3JlYXRlQ2VydGlmaWNhdGUoR0J5dGVBcnJheSog
Ynl0ZXMsIEdUbHNDZXJ0aWZpY2F0ZSogaXNzdWVyKQoreworICAgIEdVbmlxdWVPdXRQdHI8R0Vy
cm9yPiBlcnJvcjsKKyAgICBncG9pbnRlciBjZXJ0ID0gZ19pbml0YWJsZV9uZXcoZ190bHNfYmFj
a2VuZF9nZXRfY2VydGlmaWNhdGVfdHlwZShnX3Rsc19iYWNrZW5kX2dldF9kZWZhdWx0KCkpLAor
ICAgICAgICBudWxscHRyLCAmZXJyb3Iub3V0UHRyKCksCisgICAgICAgICJjZXJ0aWZpY2F0ZSIs
IGJ5dGVzLAorICAgICAgICAiaXNzdWVyIiwgaXNzdWVyLAorICAgICAgICBudWxscHRyKTsKKyAg
ICBSRUxFQVNFX0FTU0VSVCghZXJyb3IpOworICAgIHJldHVybiBhZG9wdEdSZWYoR19UTFNfQ0VS
VElGSUNBVEUoY2VydCkpOworfQorCitDZXJ0aWZpY2F0ZUluZm8gQ2VydGlmaWNhdGVJbmZvOjpp
c29sYXRlZENvcHkoKSBjb25zdAoreworICAgIC8vIFdlIGNhbiBvbmx5IGNvcHkgdGhlIHB1Ymxp
YyBwb3J0aW9ucywgc28gdGhpcyBjYW4gb25seSBiZSB1c2VkIGZvciBzZXJ2ZXIgY2VydGlmaWNh
dGVzLCBub3QKKyAgICAvLyBmb3IgY2xpZW50IGNlcnRpZmljYXRlcy4gU2FkbHksIG90aGVyIHBv
cnRzIGRvbid0IGhhdmUgdGhpcyByZXN0cmljdGlvbiwgYW5kIHRoZXJlIGlzIG5vIHdheQorICAg
IC8vIHRvIGFzc2VydCB0aGF0IHdlIGFyZSBub3QgbWVzc2luZyB1cCBoZXJlIGJlY2F1c2Ugd2Ug
Y2FuJ3Qga25vdyBob3cgY2FsbGVycyBhcmUgdXNpbmcgdGhlCisgICAgLy8gY2VydGlmaWNhdGUu
IFNvIGJlIGNhcmVmdWw/CisgICAgLy8KKyAgICAvLyBXZSBzaG91bGQgYWRkIGdfdGxzX2NlcnRp
ZmljYXRlX2NvcHkoKSB0byBHTGliIHNvIHRoYXQgd2UgY2FuIGNvcHkgdGhlIHByaXZhdGUgcG9y
dGlvbiB0b28uCisKKyAgICBWZWN0b3I8R1JlZlB0cjxHQnl0ZUFycmF5Pj4gY2VydGlmaWNhdGVC
eXRlczsKKyAgICBHVGxzQ2VydGlmaWNhdGUqIGNlcnQgPSBtX2NlcnRpZmljYXRlLmdldCgpOwor
ICAgIGlmICghY2VydCkKKyAgICAgICAgcmV0dXJuIENlcnRpZmljYXRlSW5mbygpOworCisgICAg
ZG8geworICAgICAgICBHUmVmUHRyPEdCeXRlQXJyYXk+IGRlcjsKKyAgICAgICAgZ19vYmplY3Rf
Z2V0KGNlcnQsICJjZXJ0aWZpY2F0ZSIsICZkZXIub3V0UHRyKCksIG51bGxwdHIpOworCisgICAg
ICAgIEdSZWZQdHI8R0J5dGVBcnJheT4gY29weSA9IGFkb3B0R1JlZihnX2J5dGVfYXJyYXlfbmV3
KCkpOworICAgICAgICBnX2J5dGVfYXJyYXlfYXBwZW5kKGNvcHkuZ2V0KCksIGRlci0+ZGF0YSwg
ZGVyLT5sZW4pOworICAgICAgICBjZXJ0aWZpY2F0ZUJ5dGVzLmFwcGVuZChXVEZNb3ZlKGNvcHkp
KTsKKyAgICB9IHdoaWxlICgoY2VydCA9IGdfdGxzX2NlcnRpZmljYXRlX2dldF9pc3N1ZXIoY2Vy
dCkpKTsKKworICAgIGF1dG8gZmluYWxDZXJ0aWZpY2F0ZUluZGV4ID0gY2VydGlmaWNhdGVCeXRl
cy5zaXplKCkgLSAxOworICAgIEdSZWZQdHI8R1Rsc0NlcnRpZmljYXRlPiBjb3B5ID0gY3JlYXRl
Q2VydGlmaWNhdGUoY2VydGlmaWNhdGVCeXRlc1tmaW5hbENlcnRpZmljYXRlSW5kZXhdLmdldCgp
LCBudWxscHRyKTsKKyAgICBmb3IgKHNzaXplX3QgaSA9IGZpbmFsQ2VydGlmaWNhdGVJbmRleCAt
IDE7IGkgPj0gMDsgaS0tKQorICAgICAgICBjb3B5ID0gY3JlYXRlQ2VydGlmaWNhdGUoY2VydGlm
aWNhdGVCeXRlc1tpXS5nZXQoKSwgY29weS5nZXQoKSk7CisgICAgcmV0dXJuIENlcnRpZmljYXRl
SW5mbyhjb3B5LmdldCgpLCBtX3Rsc0Vycm9ycyk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKIAogI2VuZGlmCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>411088</attachid>
            <date>2020-10-11 19:18:27 -0700</date>
            <delta_ts>2020-10-13 08:11:03 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-216038-20201011211826.patch</filename>
            <type>text/plain</type>
            <size>6699</size>
            <attacher name="Michael Catanzaro">mcatanzaro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4MzMwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmY0MjNhMGJiMTZmZWNj
OTBjNmEyMzg0MGVmMTkxYjM1YTk2Y2Y1Ni4uMDg1NDY4N2RhNmQxNmYwZGRiNWE3Zjc1NWNkNmEw
OTYyZDE4MzRiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDIwLTEwLTExICBNaWNo
YWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25vbWUub3JnPgorCisgICAgICAgIFtTT1VQXSB3
ZWJraXRfd2ViX3ZpZXdfZ2V0X2h0dHBzX3N0YXR1cygpIGJyb2tlbiB3aXRoIHNlcnZpY2Ugd29y
a2VycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE2
MDM4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhp
cyBpbXBsZW1lbnRzIENlcnRpZmljYXRlSW5mbzo6aXNvbGF0ZWRDb3B5IGZvciBsaWJzb3VwIHBv
cnRzLiBUaGlzIGlzIGltcG9zc2libGUgdG8gZG8KKyAgICAgICAgY29tcGxldGVseSwgYmVjYXVz
ZSB3ZSBjYW5ub3QgY29weSB0aGUgcHJpdmF0ZSBrZXkgcG9ydGlvbiBvZiB0aGUgR1Rsc0NlcnRp
ZmljYXRlLCBiZWNhdXNlCisgICAgICAgIGl0IGlzIGEgd3JpdGUtb25seSBwcm9wZXJ0eSwgYmVj
YXVzZSBpdCBtaWdodCBiZSBiYWNrZWQgYnkgYSBoYXJkd2FyZSB0b2tlbiBhbmQgdGhlcmVmb3Jl
CisgICAgICAgIHJlYWxseSBpbXBvc3NpYmxlIHRvIHdyaXRlIHNvZnR3YXJlIHRvIGdldCBpdC4g
SWYgd2Ugd2VyZSB0byBpbXBsZW1lbnQgZ190bHNfY2VydGlmaWNhdGVfY29weSgpCisgICAgICAg
IGluIEdMaWIgLS0gd2hpY2ggSSB3aWxsIHByb2JhYmx5IGRvIGV2ZW50dWFsbHksIGJlY2F1c2Ug
SSBuZWVkIHRoaXMgb3V0c2lkZSBXZWJLaXQgYXMgd2VsbCAtLQorICAgICAgICB0aGVuIEdUbHND
ZXJ0aWZpY2F0ZSBpbXBsZW1lbnRhdGlvbnMgY291bGQgY29weSB0aGUgcHJpdmF0ZSBrZXkgb3Ig
UEtDUyMxMSBoYW5kbGUgb3IKKyAgICAgICAgd2hhdGV2ZXIuCisKKyAgICAgICAgQnV0IGFueXdh
eSwgbGV0IG5vdCBwZXJmZWN0IGJlIHRoZSBlbmVteSBvZiB0aGUgZ29vZC4gV2Ugb25seSBuZWVk
IHRoaXMgZm9yIHNlcnZpY2Ugd29ya2VycworICAgICAgICBjdXJyZW50bHkuIChQcm9iYWJseSB0
aGF0J3MgYWxsIHdlJ2xsICpldmVyKiBuZWVkIGl0IGZvci4pIFNvIHdlIGFyZSBvbmx5IHdvcmtp
bmcgd2l0aAorICAgICAgICBzZXJ2ZXIgY2VydGlmaWNhdGVzLCBhbmQgdGhlIHByaXZhdGUgcG9y
dGlvbiBvZiB0aGUgY2VydGlmaWNhdGUgaXMgZ3VhcmFudGVlZCB0byBub3QgZXhpc3QKKyAgICAg
ICAgKGJlY2F1c2Ugc2VydmVycyBkb24ndCBzZW5kIHVzIHRoZWlyIHByaXZhdGUga2V5cyksIGFu
ZCB3ZSBjYW4ganVzdCBmb3JnZXQgYWJvdXQgaXQuIEFzCisgICAgICAgIGxvbmcgYXMgbm9ib2R5
IHRyaWVzIHRvIGNvcHkgYSBjbGllbnQgY2VydGlmaWNhdGUgaW4gdGhlIGZ1dHVyZSAtLSB3aGVy
ZSB3ZSByZWFsbHkgd291bGQKKyAgICAgICAgbmVlZCB0aGUgcHJpdmF0ZSBrZXkgcG9ydGlvbiBv
ZiB0aGUgY2VydGlmaWNhdGUgLS0gdGhpcyB3aWxsIGJlIHBlcmZlY3RseSBmaW5lLgorCisgICAg
ICAgIEFjdHVhbGx5IGNvcHlpbmcgdGhlIGNlcnRpZmljYXRlIGlzIGtpbmQgb2YgYW5ub3lpbmcs
IGJlY2F1c2UgYSBjaGFpbiBvZiBjZXJ0aWZpY2F0ZXMgaXMKKyAgICAgICAgcmVwcmVzZW50ZWQg
YnkgaGF2aW5nIHRoZSBtYWluIChzZXJ2ZXIpIGNlcnRpZmljYXRlIGtlZXAgYSByZWZlcmVuY2Ug
dG8gaXRzIGlzc3Vlciwgd2hpY2ggaXMKKyAgICAgICAgbm90IHJlZmVyZW5jZWQgYW55d2hlcmUg
ZWxzZSwgc28gd2UgaGF2ZSB0byByZWNvbnN0cnVjdCB0aGUgY2hhaW4gaW4gcmV2ZXJzZSBvcmRl
ciBzdGFydGluZworICAgICAgICBmcm9tIHRoZSBmaW5hbCBjZXJ0aWZpY2F0ZSwgd29ya2luZyBi
YWNrIHRvd2FyZHMgdGhlIHNlcnZlciBjZXJ0LiBGdW4uIExldCdzIGFsc28gYmUKKyAgICAgICAg
Y2FyZWZ1bCB0byBjb25zdHJ1Y3QgYSBjb21wbGV0ZWx5IG5ldyBHQnl0ZUFycmF5IHJhdGhlciB0
aGFuIGV4cGVjdGluZyB0aGUgR1Rsc0NlcnRpZmljYXRlCisgICAgICAgIGltcGxlbWVudGF0aW9u
IHRvIGNvcHkgaXQgZm9yIHVzLiBCZWNhdXNlIEdUbHNDZXJ0aWZpY2F0ZSBpcyBpbXBsZW1lbnRl
ZCBieSBhbiBleHRlbnNpb24KKyAgICAgICAgcG9pbnQgYW5kIGFwcGxpY2F0aW9ucyBhbmQgc3lz
dGVtIGFkbWluaXN0cmF0b3JzIGNhbiAtLSBhbmQgZG8gLS0gaW1wbGVtZW50IHRoZWlyIG93biwK
KyAgICAgICAgaW1wbGVtZW50YXRpb25zIGNvdWxkIGRvIGFueXRoaW5nLCBpbmNsdWRpbmcga2Vl
cCBhIHJlZmVyZW5jZSB0byB0aGUgR0J5dGVBcnJheSB0aGF0IHdlCisgICAgICAgIHBhc3MgaW4u
CisKKyAgICAgICAgSXQgd291bGQgYmUgbmljZSB0byBoYXZlIGEgdGVzdCBmb3IgdGhpcywgYnV0
IHdyaXRpbmcgdGVzdHMgaXMgaGFyZC4gQWxzbywgSSBkb24ndCByZWFsbHkKKyAgICAgICAgd2Fu
dCB0byBsZWFybiB3aGF0IHNlcnZpY2Ugd29ya2VycyBhcmUuIDopCisKKyAgICAgICAgRHJpdmUt
YnkgZml4OiBhbHNvIHJlbW92ZSBleHBsaWNpdCBmcm9tIGEgY29uc3RydWN0b3IgdGhhdCBkb2Vz
bid0IG5lZWQgaXQuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQ2VydGlmaWNh
dGVJbmZvLmg6CisgICAgICAgIChXZWJDb3JlOjpDZXJ0aWZpY2F0ZUluZm86Omlzb2xhdGVkQ29w
eSBjb25zdCk6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9zb3VwL0NlcnRpZmljYXRlSW5m
b1NvdXAuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlQ2VydGlmaWNhdGUpOgorICAgICAg
ICAoV2ViQ29yZTo6Q2VydGlmaWNhdGVJbmZvOjppc29sYXRlZENvcHkgY29uc3QpOgorCiAyMDIw
LTEwLTExICBMdW1pbmcgWWluICA8bHVtaW5nX3lpbkBhcHBsZS5jb20+CiAKICAgICAgICAgU3Ry
aXAgcGF0Y2ggdmVyc2lvbiBmcm9tIFRBUkdFVF9NQUNfT1NfWF9WRVJTSU9OX01BSk9SIHdoZW4g
YnVpbGRpbmcgZm9yIG1hY09TIEJpZyBTdXIgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9uZXR3b3JrL3NvdXAvQ2VydGlmaWNhdGVJbmZvLmggYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9uZXR3b3JrL3NvdXAvQ2VydGlmaWNhdGVJbmZvLmgKaW5kZXggYTliY2M2ZDk4Mjhk
MmFlODc4MmM0ZjgyNzlkNzQzYjg4N2E4NDY1MS4uYzQ0YjBhYzNhMjc0ZTZiMjJjOGUxNWU2NGYw
YTI5ZTc0NTBhYjJiMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9zb3VwL0NlcnRpZmljYXRlSW5mby5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvc291cC9DZXJ0aWZpY2F0ZUluZm8uaApAQCAtNDUsMTAgKzQ1LDEwIEBAIHB1YmxpYzoK
ICAgICBDZXJ0aWZpY2F0ZUluZm8oKTsKICAgICBleHBsaWNpdCBDZXJ0aWZpY2F0ZUluZm8oY29u
c3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpOwogICAgIGV4cGxpY2l0IENlcnRpZmljYXRl
SW5mbyhjb25zdCBXZWJDb3JlOjpSZXNvdXJjZUVycm9yJik7Ci0gICAgZXhwbGljaXQgQ2VydGlm
aWNhdGVJbmZvKEdUbHNDZXJ0aWZpY2F0ZSosIEdUbHNDZXJ0aWZpY2F0ZUZsYWdzKTsKKyAgICBD
ZXJ0aWZpY2F0ZUluZm8oR1Rsc0NlcnRpZmljYXRlKiwgR1Rsc0NlcnRpZmljYXRlRmxhZ3MpOwog
ICAgIFdFQkNPUkVfRVhQT1JUIH5DZXJ0aWZpY2F0ZUluZm8oKTsKIAotICAgIENlcnRpZmljYXRl
SW5mbyBpc29sYXRlZENvcHkoKSBjb25zdCB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVybiB7IH07
IH0KKyAgICBDZXJ0aWZpY2F0ZUluZm8gaXNvbGF0ZWRDb3B5KCkgY29uc3Q7CiAKICAgICBHVGxz
Q2VydGlmaWNhdGUqIGNlcnRpZmljYXRlKCkgY29uc3QgeyByZXR1cm4gbV9jZXJ0aWZpY2F0ZS5n
ZXQoKTsgfQogICAgIHZvaWQgc2V0Q2VydGlmaWNhdGUoR1Rsc0NlcnRpZmljYXRlKiBjZXJ0aWZp
Y2F0ZSkgeyBtX2NlcnRpZmljYXRlID0gY2VydGlmaWNhdGU7IH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291cC9DZXJ0aWZpY2F0ZUluZm9Tb3VwLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291cC9DZXJ0aWZpY2F0ZUluZm9Tb3Vw
LmNwcAppbmRleCBjZWZhYjFmZGYzZjRjYzk2YmY1N2UxNDkwODQxNTYwM2UzZGQ0YTViLi42ZTAx
MmVlZjhjNGIwOTY4MzllMzI4OGZlZTM3ZmMwNTliZjgzM2NlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQ2VydGlmaWNhdGVJbmZvU291cC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL0NlcnRpZmljYXRlSW5mb1Nv
dXAuY3BwCkBAIC0zMiw2ICszMiw4IEBACiAjaW5jbHVkZSA8UmVzb3VyY2VFcnJvci5oPgogI2lu
Y2x1ZGUgPFJlc291cmNlUmVzcG9uc2UuaD4KICNpbmNsdWRlIDxsaWJzb3VwL3NvdXAuaD4KKyNp
bmNsdWRlIDx3dGYvZ2xpYi9HUmVmUHRyLmg+CisjaW5jbHVkZSA8d3RmL2dsaWIvR1VuaXF1ZVB0
ci5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTYwLDYgKzYyLDQ4IEBAIENlcnRpZmlj
YXRlSW5mbzo6Q2VydGlmaWNhdGVJbmZvKEdUbHNDZXJ0aWZpY2F0ZSogY2VydGlmaWNhdGUsIEdU
bHNDZXJ0aWZpY2F0ZUZsCiAKIENlcnRpZmljYXRlSW5mbzo6fkNlcnRpZmljYXRlSW5mbygpID0g
ZGVmYXVsdDsKIAorc3RhdGljIEdSZWZQdHI8R1Rsc0NlcnRpZmljYXRlPiBjcmVhdGVDZXJ0aWZp
Y2F0ZShHQnl0ZUFycmF5KiBieXRlcywgR1Rsc0NlcnRpZmljYXRlKiBpc3N1ZXIpCit7CisgICAg
R1VuaXF1ZU91dFB0cjxHRXJyb3I+IGVycm9yOworICAgIGdwb2ludGVyIGNlcnQgPSBnX2luaXRh
YmxlX25ldyhnX3Rsc19iYWNrZW5kX2dldF9jZXJ0aWZpY2F0ZV90eXBlKGdfdGxzX2JhY2tlbmRf
Z2V0X2RlZmF1bHQoKSksCisgICAgICAgIG51bGxwdHIsICZlcnJvci5vdXRQdHIoKSwKKyAgICAg
ICAgImNlcnRpZmljYXRlIiwgYnl0ZXMsCisgICAgICAgICJpc3N1ZXIiLCBpc3N1ZXIsCisgICAg
ICAgIG51bGxwdHIpOworICAgIFJFTEVBU0VfQVNTRVJUKCFlcnJvcik7CisgICAgcmV0dXJuIGFk
b3B0R1JlZihHX1RMU19DRVJUSUZJQ0FURShjZXJ0KSk7Cit9CisKK0NlcnRpZmljYXRlSW5mbyBD
ZXJ0aWZpY2F0ZUluZm86Omlzb2xhdGVkQ29weSgpIGNvbnN0Cit7CisgICAgLy8gV2UgY2FuIG9u
bHkgY29weSB0aGUgcHVibGljIHBvcnRpb25zLCBzbyB0aGlzIGNhbiBvbmx5IGJlIHVzZWQgZm9y
IHNlcnZlciBjZXJ0aWZpY2F0ZXMsIG5vdAorICAgIC8vIGZvciBjbGllbnQgY2VydGlmaWNhdGVz
LiBTYWRseSwgb3RoZXIgcG9ydHMgZG9uJ3QgaGF2ZSB0aGlzIHJlc3RyaWN0aW9uLCBhbmQgdGhl
cmUgaXMgbm8gd2F5CisgICAgLy8gdG8gYXNzZXJ0IHRoYXQgd2UgYXJlIG5vdCBtZXNzaW5nIHVw
IGhlcmUgYmVjYXVzZSB3ZSBjYW4ndCBrbm93IGhvdyBjYWxsZXJzIGFyZSB1c2luZyB0aGUKKyAg
ICAvLyBjZXJ0aWZpY2F0ZS4gU28gYmUgY2FyZWZ1bD8KKyAgICAvLworICAgIC8vIFdlIHNob3Vs
ZCBhZGQgZ190bHNfY2VydGlmaWNhdGVfY29weSgpIHRvIEdMaWIgc28gdGhhdCB3ZSBjYW4gY29w
eSB0aGUgcHJpdmF0ZSBwb3J0aW9uIHRvby4KKworICAgIFZlY3RvcjxHUmVmUHRyPEdCeXRlQXJy
YXk+PiBjZXJ0aWZpY2F0ZUJ5dGVzOworICAgIEdUbHNDZXJ0aWZpY2F0ZSogY2VydCA9IG1fY2Vy
dGlmaWNhdGUuZ2V0KCk7CisgICAgaWYgKCFjZXJ0KQorICAgICAgICByZXR1cm4gQ2VydGlmaWNh
dGVJbmZvKCk7CisKKyAgICBkbyB7CisgICAgICAgIEdSZWZQdHI8R0J5dGVBcnJheT4gZGVyOwor
ICAgICAgICBnX29iamVjdF9nZXQoY2VydCwgImNlcnRpZmljYXRlIiwgJmRlci5vdXRQdHIoKSwg
bnVsbHB0cik7CisKKyAgICAgICAgR1JlZlB0cjxHQnl0ZUFycmF5PiBjb3B5ID0gYWRvcHRHUmVm
KGdfYnl0ZV9hcnJheV9uZXcoKSk7CisgICAgICAgIGdfYnl0ZV9hcnJheV9hcHBlbmQoY29weS5n
ZXQoKSwgZGVyLT5kYXRhLCBkZXItPmxlbik7CisgICAgICAgIGNlcnRpZmljYXRlQnl0ZXMuYXBw
ZW5kKFdURk1vdmUoY29weSkpOworICAgIH0gd2hpbGUgKChjZXJ0ID0gZ190bHNfY2VydGlmaWNh
dGVfZ2V0X2lzc3VlcihjZXJ0KSkpOworCisgICAgYXV0byBmaW5hbENlcnRpZmljYXRlSW5kZXgg
PSBjZXJ0aWZpY2F0ZUJ5dGVzLnNpemUoKSAtIDE7CisgICAgR1JlZlB0cjxHVGxzQ2VydGlmaWNh
dGU+IGNvcHkgPSBjcmVhdGVDZXJ0aWZpY2F0ZShjZXJ0aWZpY2F0ZUJ5dGVzW2ZpbmFsQ2VydGlm
aWNhdGVJbmRleF0uZ2V0KCksIG51bGxwdHIpOworICAgIGZvciAoc3NpemVfdCBpID0gZmluYWxD
ZXJ0aWZpY2F0ZUluZGV4IC0gMTsgaSA+PSAwOyBpLS0pCisgICAgICAgIGNvcHkgPSBjcmVhdGVD
ZXJ0aWZpY2F0ZShjZXJ0aWZpY2F0ZUJ5dGVzW2ldLmdldCgpLCBjb3B5LmdldCgpKTsKKyAgICBy
ZXR1cm4gQ2VydGlmaWNhdGVJbmZvKGNvcHkuZ2V0KCksIG1fdGxzRXJyb3JzKTsKK30KKwogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>411220</attachid>
            <date>2020-10-13 08:11:05 -0700</date>
            <delta_ts>2020-10-13 10:53:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-216038-20201013101104.patch</filename>
            <type>text/plain</type>
            <size>6617</size>
            <attacher name="Michael Catanzaro">mcatanzaro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4MzkzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWMwYzNjY2UxYWQyZDQ0
MDlhZjVkZDU4NmI1ZWQ0ODI2NmU1NDAxMy4uODJhYmZjZmYxZmMwZWNhOTUyNDBlZDBhNTkyNzU3
M2MwMGM2M2FjMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDIwLTEwLTEzICBNaWNo
YWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25vbWUub3JnPgorCisgICAgICAgIFtTT1VQXSB3
ZWJraXRfd2ViX3ZpZXdfZ2V0X2h0dHBzX3N0YXR1cygpIGJyb2tlbiB3aXRoIHNlcnZpY2Ugd29y
a2VycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE2
MDM4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQ2FybG9zIEdhcmNpYSBDYW1wb3MuCisKKyAgICAg
ICAgVGhpcyBpbXBsZW1lbnRzIENlcnRpZmljYXRlSW5mbzo6aXNvbGF0ZWRDb3B5IGZvciBsaWJz
b3VwIHBvcnRzLiBUaGlzIGlzIGltcG9zc2libGUgdG8gZG8KKyAgICAgICAgY29tcGxldGVseSwg
YmVjYXVzZSB3ZSBjYW5ub3QgY29weSB0aGUgcHJpdmF0ZSBrZXkgcG9ydGlvbiBvZiB0aGUgR1Rs
c0NlcnRpZmljYXRlLCBiZWNhdXNlCisgICAgICAgIGl0IGlzIGEgd3JpdGUtb25seSBwcm9wZXJ0
eSwgYmVjYXVzZSBpdCBtaWdodCBiZSBiYWNrZWQgYnkgYSBoYXJkd2FyZSB0b2tlbiBhbmQgdGhl
cmVmb3JlCisgICAgICAgIHJlYWxseSBpbXBvc3NpYmxlIHRvIHdyaXRlIHNvZnR3YXJlIHRvIGdl
dCBpdC4gSWYgd2Ugd2VyZSB0byBpbXBsZW1lbnQgZ190bHNfY2VydGlmaWNhdGVfY29weSgpCisg
ICAgICAgIGluIEdMaWIgLS0gd2hpY2ggSSB3aWxsIHByb2JhYmx5IGRvIGV2ZW50dWFsbHksIGJl
Y2F1c2UgSSBuZWVkIHRoaXMgb3V0c2lkZSBXZWJLaXQgYXMgd2VsbCAtLQorICAgICAgICB0aGVu
IEdUbHNDZXJ0aWZpY2F0ZSBpbXBsZW1lbnRhdGlvbnMgY291bGQgY29weSB0aGUgcHJpdmF0ZSBr
ZXkgb3IgUEtDUyMxMSBoYW5kbGUgb3IKKyAgICAgICAgd2hhdGV2ZXIuCisKKyAgICAgICAgQnV0
IGFueXdheSwgbGV0IG5vdCBwZXJmZWN0IGJlIHRoZSBlbmVteSBvZiB0aGUgZ29vZC4gV2Ugb25s
eSBuZWVkIHRoaXMgZm9yIHNlcnZpY2Ugd29ya2VycworICAgICAgICBjdXJyZW50bHkuIChQcm9i
YWJseSB0aGF0J3MgYWxsIHdlJ2xsICpldmVyKiBuZWVkIGl0IGZvci4pIFNvIHdlIGFyZSBvbmx5
IHdvcmtpbmcgd2l0aAorICAgICAgICBzZXJ2ZXIgY2VydGlmaWNhdGVzLCBhbmQgdGhlIHByaXZh
dGUgcG9ydGlvbiBvZiB0aGUgY2VydGlmaWNhdGUgaXMgZ3VhcmFudGVlZCB0byBub3QgZXhpc3QK
KyAgICAgICAgKGJlY2F1c2Ugc2VydmVycyBkb24ndCBzZW5kIHVzIHRoZWlyIHByaXZhdGUga2V5
cyksIGFuZCB3ZSBjYW4ganVzdCBmb3JnZXQgYWJvdXQgaXQuIEFzCisgICAgICAgIGxvbmcgYXMg
bm9ib2R5IHRyaWVzIHRvIGNvcHkgYSBjbGllbnQgY2VydGlmaWNhdGUgaW4gdGhlIGZ1dHVyZSAt
LSB3aGVyZSB3ZSByZWFsbHkgd291bGQKKyAgICAgICAgbmVlZCB0aGUgcHJpdmF0ZSBrZXkgcG9y
dGlvbiBvZiB0aGUgY2VydGlmaWNhdGUgLS0gdGhpcyB3aWxsIGJlIHBlcmZlY3RseSBmaW5lLgor
CisgICAgICAgIEFjdHVhbGx5IGNvcHlpbmcgdGhlIGNlcnRpZmljYXRlIGlzIGtpbmQgb2YgYW5u
b3lpbmcsIGJlY2F1c2UgYSBjaGFpbiBvZiBjZXJ0aWZpY2F0ZXMgaXMKKyAgICAgICAgcmVwcmVz
ZW50ZWQgYnkgaGF2aW5nIHRoZSBtYWluIChzZXJ2ZXIpIGNlcnRpZmljYXRlIGtlZXAgYSByZWZl
cmVuY2UgdG8gaXRzIGlzc3Vlciwgd2hpY2ggaXMKKyAgICAgICAgbm90IHJlZmVyZW5jZWQgYW55
d2hlcmUgZWxzZSwgc28gd2UgaGF2ZSB0byByZWNvbnN0cnVjdCB0aGUgY2hhaW4gaW4gcmV2ZXJz
ZSBvcmRlciBzdGFydGluZworICAgICAgICBmcm9tIHRoZSBmaW5hbCBjZXJ0aWZpY2F0ZSwgd29y
a2luZyBiYWNrIHRvd2FyZHMgdGhlIHNlcnZlciBjZXJ0LiBGdW4uIExldCdzIGFsc28gYmUKKyAg
ICAgICAgY2FyZWZ1bCB0byBjb25zdHJ1Y3QgYSBjb21wbGV0ZWx5IG5ldyBHQnl0ZUFycmF5IHJh
dGhlciB0aGFuIGV4cGVjdGluZyB0aGUgR1Rsc0NlcnRpZmljYXRlCisgICAgICAgIGltcGxlbWVu
dGF0aW9uIHRvIGNvcHkgaXQgZm9yIHVzLiBCZWNhdXNlIEdUbHNDZXJ0aWZpY2F0ZSBpcyBpbXBs
ZW1lbnRlZCBieSBhbiBleHRlbnNpb24KKyAgICAgICAgcG9pbnQgYW5kIGFwcGxpY2F0aW9ucyBh
bmQgc3lzdGVtIGFkbWluaXN0cmF0b3JzIGNhbiAtLSBhbmQgZG8gLS0gaW1wbGVtZW50IHRoZWly
IG93biwKKyAgICAgICAgaW1wbGVtZW50YXRpb25zIGNvdWxkIGRvIGFueXRoaW5nLCBpbmNsdWRp
bmcga2VlcCBhIHJlZmVyZW5jZSB0byB0aGUgR0J5dGVBcnJheSB0aGF0IHdlCisgICAgICAgIHBh
c3MgaW4uCisKKyAgICAgICAgSXQgd291bGQgYmUgbmljZSB0byBoYXZlIGEgdGVzdCBmb3IgdGhp
cywgYnV0IHdyaXRpbmcgdGVzdHMgaXMgaGFyZC4gQWxzbywgSSBkb24ndCByZWFsbHkKKyAgICAg
ICAgd2FudCB0byBsZWFybiB3aGF0IHNlcnZpY2Ugd29ya2VycyBhcmUuIDopCisKKyAgICAgICAg
RHJpdmUtYnkgZml4OiBhbHNvIHJlbW92ZSBleHBsaWNpdCBmcm9tIGEgY29uc3RydWN0b3IgdGhh
dCBkb2Vzbid0IG5lZWQgaXQuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQ2Vy
dGlmaWNhdGVJbmZvLmg6CisgICAgICAgIChXZWJDb3JlOjpDZXJ0aWZpY2F0ZUluZm86Omlzb2xh
dGVkQ29weSBjb25zdCk6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9zb3VwL0NlcnRpZmlj
YXRlSW5mb1NvdXAuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlQ2VydGlmaWNhdGUpOgor
ICAgICAgICAoV2ViQ29yZTo6Q2VydGlmaWNhdGVJbmZvOjppc29sYXRlZENvcHkgY29uc3QpOgor
CiAyMDIwLTEwLTEzICBaYWxhbiBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CiAKICAgICAgICAg
W0xGQ11bSUZDXSBSZW1vdmUgZnVsbHkgY29sbGFwc2VkIHRyYWlsaW5nIHJ1bgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL0NlcnRpZmljYXRlSW5mby5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL0NlcnRpZmljYXRlSW5mby5o
CmluZGV4IGE5YmNjNmQ5ODI4ZDJhZTg3ODJjNGY4Mjc5ZDc0M2I4ODdhODQ2NTEuLmM0NGIwYWMz
YTI3NGU2YjIyYzhlMTVlNjRmMGEyOWU3NDUwYWIyYjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL25ldHdvcmsvc291cC9DZXJ0aWZpY2F0ZUluZm8uaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQ2VydGlmaWNhdGVJbmZvLmgKQEAgLTQ1LDEw
ICs0NSwxMCBAQCBwdWJsaWM6CiAgICAgQ2VydGlmaWNhdGVJbmZvKCk7CiAgICAgZXhwbGljaXQg
Q2VydGlmaWNhdGVJbmZvKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKTsKICAgICBl
eHBsaWNpdCBDZXJ0aWZpY2F0ZUluZm8oY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciYpOwot
ICAgIGV4cGxpY2l0IENlcnRpZmljYXRlSW5mbyhHVGxzQ2VydGlmaWNhdGUqLCBHVGxzQ2VydGlm
aWNhdGVGbGFncyk7CisgICAgQ2VydGlmaWNhdGVJbmZvKEdUbHNDZXJ0aWZpY2F0ZSosIEdUbHND
ZXJ0aWZpY2F0ZUZsYWdzKTsKICAgICBXRUJDT1JFX0VYUE9SVCB+Q2VydGlmaWNhdGVJbmZvKCk7
CiAKLSAgICBDZXJ0aWZpY2F0ZUluZm8gaXNvbGF0ZWRDb3B5KCkgY29uc3QgeyBub3RJbXBsZW1l
bnRlZCgpOyByZXR1cm4geyB9OyB9CisgICAgQ2VydGlmaWNhdGVJbmZvIGlzb2xhdGVkQ29weSgp
IGNvbnN0OwogCiAgICAgR1Rsc0NlcnRpZmljYXRlKiBjZXJ0aWZpY2F0ZSgpIGNvbnN0IHsgcmV0
dXJuIG1fY2VydGlmaWNhdGUuZ2V0KCk7IH0KICAgICB2b2lkIHNldENlcnRpZmljYXRlKEdUbHND
ZXJ0aWZpY2F0ZSogY2VydGlmaWNhdGUpIHsgbV9jZXJ0aWZpY2F0ZSA9IGNlcnRpZmljYXRlOyB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQ2VydGlm
aWNhdGVJbmZvU291cC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAv
Q2VydGlmaWNhdGVJbmZvU291cC5jcHAKaW5kZXggY2VmYWIxZmRmM2Y0Y2M5NmJmNTdlMTQ5MDg0
MTU2MDNlM2RkNGE1Yi4uZDdiODg5YzlhMDJkYmYwYTZkODE0NzE1MDc1OWViNDlkN2VlODAzOSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL0NlcnRpZmlj
YXRlSW5mb1NvdXAuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291
cC9DZXJ0aWZpY2F0ZUluZm9Tb3VwLmNwcApAQCAtMzIsNiArMzIsOCBAQAogI2luY2x1ZGUgPFJl
c291cmNlRXJyb3IuaD4KICNpbmNsdWRlIDxSZXNvdXJjZVJlc3BvbnNlLmg+CiAjaW5jbHVkZSA8
bGlic291cC9zb3VwLmg+CisjaW5jbHVkZSA8d3RmL2dsaWIvR1JlZlB0ci5oPgorI2luY2x1ZGUg
PHd0Zi9nbGliL0dVbmlxdWVQdHIuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC02MCw2
ICs2Miw0NyBAQCBDZXJ0aWZpY2F0ZUluZm86OkNlcnRpZmljYXRlSW5mbyhHVGxzQ2VydGlmaWNh
dGUqIGNlcnRpZmljYXRlLCBHVGxzQ2VydGlmaWNhdGVGbAogCiBDZXJ0aWZpY2F0ZUluZm86On5D
ZXJ0aWZpY2F0ZUluZm8oKSA9IGRlZmF1bHQ7CiAKK3N0YXRpYyBHUmVmUHRyPEdUbHNDZXJ0aWZp
Y2F0ZT4gY3JlYXRlQ2VydGlmaWNhdGUoR0J5dGVBcnJheSogYnl0ZXMsIEdUbHNDZXJ0aWZpY2F0
ZSogaXNzdWVyKQoreworICAgIGdwb2ludGVyIGNlcnQgPSBnX2luaXRhYmxlX25ldyhnX3Rsc19i
YWNrZW5kX2dldF9jZXJ0aWZpY2F0ZV90eXBlKGdfdGxzX2JhY2tlbmRfZ2V0X2RlZmF1bHQoKSks
CisgICAgICAgIG51bGxwdHIsIG51bGxwdHIsCisgICAgICAgICJjZXJ0aWZpY2F0ZSIsIGJ5dGVz
LAorICAgICAgICAiaXNzdWVyIiwgaXNzdWVyLAorICAgICAgICBudWxscHRyKTsKKyAgICBSRUxF
QVNFX0FTU0VSVChjZXJ0KTsKKyAgICByZXR1cm4gYWRvcHRHUmVmKEdfVExTX0NFUlRJRklDQVRF
KGNlcnQpKTsKK30KKworQ2VydGlmaWNhdGVJbmZvIENlcnRpZmljYXRlSW5mbzo6aXNvbGF0ZWRD
b3B5KCkgY29uc3QKK3sKKyAgICAvLyBXZSBjYW4gb25seSBjb3B5IHRoZSBwdWJsaWMgcG9ydGlv
bnMsIHNvIHRoaXMgY2FuIG9ubHkgYmUgdXNlZCBmb3Igc2VydmVyIGNlcnRpZmljYXRlcywgbm90
CisgICAgLy8gZm9yIGNsaWVudCBjZXJ0aWZpY2F0ZXMuIFNhZGx5LCBvdGhlciBwb3J0cyBkb24n
dCBoYXZlIHRoaXMgcmVzdHJpY3Rpb24sIGFuZCB0aGVyZSBpcyBubyB3YXkKKyAgICAvLyB0byBh
c3NlcnQgdGhhdCB3ZSBhcmUgbm90IG1lc3NpbmcgdXAgaGVyZSBiZWNhdXNlIHdlIGNhbid0IGtu
b3cgaG93IGNhbGxlcnMgYXJlIHVzaW5nIHRoZQorICAgIC8vIGNlcnRpZmljYXRlLiBTbyBiZSBj
YXJlZnVsPworICAgIC8vCisgICAgLy8gV2Ugc2hvdWxkIGFkZCBnX3Rsc19jZXJ0aWZpY2F0ZV9j
b3B5KCkgdG8gR0xpYiBzbyB0aGF0IHdlIGNhbiBjb3B5IHRoZSBwcml2YXRlIHBvcnRpb24gdG9v
LgorCisgICAgVmVjdG9yPEdSZWZQdHI8R0J5dGVBcnJheT4+IGNlcnRpZmljYXRlQnl0ZXM7Cisg
ICAgR1Rsc0NlcnRpZmljYXRlKiBjZXJ0ID0gbV9jZXJ0aWZpY2F0ZS5nZXQoKTsKKyAgICBpZiAo
IWNlcnQpCisgICAgICAgIHJldHVybiBDZXJ0aWZpY2F0ZUluZm8oKTsKKworICAgIGRvIHsKKyAg
ICAgICAgR1JlZlB0cjxHQnl0ZUFycmF5PiBkZXI7CisgICAgICAgIGdfb2JqZWN0X2dldChjZXJ0
LCAiY2VydGlmaWNhdGUiLCAmZGVyLm91dFB0cigpLCBudWxscHRyKTsKKworICAgICAgICBHUmVm
UHRyPEdCeXRlQXJyYXk+IGNvcHkgPSBhZG9wdEdSZWYoZ19ieXRlX2FycmF5X25ldygpKTsKKyAg
ICAgICAgZ19ieXRlX2FycmF5X2FwcGVuZChjb3B5LmdldCgpLCBkZXItPmRhdGEsIGRlci0+bGVu
KTsKKyAgICAgICAgY2VydGlmaWNhdGVCeXRlcy5hcHBlbmQoV1RGTW92ZShjb3B5KSk7CisgICAg
fSB3aGlsZSAoKGNlcnQgPSBnX3Rsc19jZXJ0aWZpY2F0ZV9nZXRfaXNzdWVyKGNlcnQpKSk7CisK
KyAgICBhdXRvIGZpbmFsQ2VydGlmaWNhdGVJbmRleCA9IGNlcnRpZmljYXRlQnl0ZXMuc2l6ZSgp
IC0gMTsKKyAgICBHUmVmUHRyPEdUbHNDZXJ0aWZpY2F0ZT4gY29weSA9IGNyZWF0ZUNlcnRpZmlj
YXRlKGNlcnRpZmljYXRlQnl0ZXNbZmluYWxDZXJ0aWZpY2F0ZUluZGV4XS5nZXQoKSwgbnVsbHB0
cik7CisgICAgZm9yIChzc2l6ZV90IGkgPSBmaW5hbENlcnRpZmljYXRlSW5kZXggLSAxOyBpID49
IDA7IGktLSkKKyAgICAgICAgY29weSA9IGNyZWF0ZUNlcnRpZmljYXRlKGNlcnRpZmljYXRlQnl0
ZXNbaV0uZ2V0KCksIGNvcHkuZ2V0KCkpOworICAgIHJldHVybiBDZXJ0aWZpY2F0ZUluZm8oY29w
eS5nZXQoKSwgbV90bHNFcnJvcnMpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNl
bmRpZgo=
</data>
<flag name="commit-queue"
          id="427373"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
      

    </bug>

</bugzilla>