<?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>197164</bug_id>
          
          <creation_ts>2019-04-22 10:31:32 -0700</creation_ts>
          <short_desc>webkitpy auto installer should download packages using `curl` instead of python&apos;s urllib.</short_desc>
          <delta_ts>2019-04-22 15:08:28 -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>Tools / Tests</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=197046</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Dean Johnson">dean_johnson</reporter>
          <assigned_to name="Dean Johnson">dean_johnson</assigned_to>
          <cc>ap</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>jbedard</cc>
    
    <cc>lforschler</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1529285</commentid>
    <comment_count>0</comment_count>
    <who name="Dean Johnson">dean_johnson</who>
    <bug_when>2019-04-22 10:31:32 -0700</bug_when>
    <thetext>I think webkitpy&apos;s auto installer should use `curl` to download packages instead of Python&apos;s urllib2 library. There are many reasons for this:
1. urllib2 can fail with obscure messages due to failures to TLS versions[1] or permissions on certs[2]. These messages could be communicated back to the user, but they generally do not have clear solutions to them.
2. Hashes for expected packages are already stored in Tools/Scripts/webkitpy/thirdparty/__init__.py.

So using `curl`, we could get around TLS version issues and cert permission issues using --no-verify, but also still guarantee we&apos;re getting the package we expect by checking the hashes of the downloaded packages against what they are known to be.

I&apos;m not sure if this should be done for Windows as well, but would err on the side of caution and say to use the default behavior on Windows until someone was able to verify the same codepath worked.

[1] via https://bugs.webkit.org/show_bug.cgi?id=197046 - &lt;urlopen error [SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:590)&gt;
[2] via https://bugs.webkit.org/show_bug.cgi?id=197046 - &lt;urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:727)&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1529296</commentid>
    <comment_count>1</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2019-04-22 10:40:55 -0700</bug_when>
    <thetext>(In reply to Dean Johnson from comment #0)
&gt; I think webkitpy&apos;s auto installer should use `curl` to download packages
&gt; instead of Python&apos;s urllib2 library. There are many reasons for this:
&gt; 1. urllib2 can fail with obscure messages due to failures to TLS versions[1]
&gt; or permissions on certs[2]. These messages could be communicated back to the
&gt; user, but they generally do not have clear solutions to them.
&gt; 2. Hashes for expected packages are already stored in
&gt; Tools/Scripts/webkitpy/thirdparty/__init__.py.
&gt; 
&gt; So using `curl`, we could get around TLS version issues and cert permission
&gt; issues using --no-verify, but also still guarantee we&apos;re getting the package
&gt; we expect by checking the hashes of the downloaded packages against what
&gt; they are known to be.
&gt; 
&gt; I&apos;m not sure if this should be done for Windows as well, but would err on
&gt; the side of caution and say to use the default behavior on Windows until
&gt; someone was able to verify the same codepath worked.
&gt; 
&gt; [1] via https://bugs.webkit.org/show_bug.cgi?id=197046 - &lt;urlopen error
&gt; [SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version
&gt; (_ssl.c:590)&gt;
&gt; [2] via https://bugs.webkit.org/show_bug.cgi?id=197046 - &lt;urlopen error
&gt; [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:727)&gt;

I don&apos;t know that we&apos;d get the SSL error with curl anyways, since curl definitely relies on the system certs, where Python&apos;s libraries are far less consistent in that regard.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1529348</commentid>
    <comment_count>2</comment_count>
    <who name="Dean Johnson">dean_johnson</who>
    <bug_when>2019-04-22 13:04:05 -0700</bug_when>
    <thetext>It looks like I was mis-remembering. webkitpy/common/system/autoinstall.py does not appear to have any notion of checking for the hash of the tarball that was downloaded.

So we can&apos;t use --no-verify to curl, but according to local testing it looks like even TLS version issues seen using `urllib2` are not a problem using `curl`.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1529349</commentid>
    <comment_count>3</comment_count>
    <who name="Dean Johnson">dean_johnson</who>
    <bug_when>2019-04-22 13:05:32 -0700</bug_when>
    <thetext>Submitted comment too early.

...are not a problem using `curl` *even when --no-verify is omitted*.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1529358</commentid>
    <comment_count>4</comment_count>
      <attachid>367967</attachid>
    <who name="Dean Johnson">dean_johnson</who>
    <bug_when>2019-04-22 13:39:11 -0700</bug_when>
    <thetext>Created attachment 367967
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1529368</commentid>
    <comment_count>5</comment_count>
      <attachid>367967</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2019-04-22 13:55:12 -0700</bug_when>
    <thetext>Comment on attachment 367967
Patch

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

&gt; Tools/ChangeLog:11
&gt; +        * Scripts/webkitpy/common/system/autoinstall.py:
&gt; +        (AutoInstaller._download): Use curl to download packages necessary for webkitpy/thirdparty/autoinstalled
&gt; +        since Python2&apos;s urllib2 module sometimes spews useless error messages about TLS versions or certificate access
&gt; +        even if invoking a command to do the same thing with `curl` would work without issue.

No elegant way to quiet the messages?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1529381</commentid>
    <comment_count>6</comment_count>
    <who name="Dean Johnson">dean_johnson</who>
    <bug_when>2019-04-22 14:18:36 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #5)
&gt; Comment on attachment 367967 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=367967&amp;action=review
&gt; 
&gt; &gt; Tools/ChangeLog:11
&gt; &gt; +        * Scripts/webkitpy/common/system/autoinstall.py:
&gt; &gt; +        (AutoInstaller._download): Use curl to download packages necessary for webkitpy/thirdparty/autoinstalled
&gt; &gt; +        since Python2&apos;s urllib2 module sometimes spews useless error messages about TLS versions or certificate access
&gt; &gt; +        even if invoking a command to do the same thing with `curl` would work without issue.
&gt; 
&gt; No elegant way to quiet the messages?

Thanks for the review.

I&apos;ll update the ChangeLog to make it more clear, but the issue being addressed is not the spewing of error messages, but rather that using Python2&apos;s urllib2 module for this download results in a variety of errors that don&apos;t give a clear indication of how they can be fixed. They also are errors that only seem to be shown by urllib2, since curl(1) does the package download without any issues.

This bug was primarily initiated based on the detailed bug report by yevseytsev in https://bugs.webkit.org/show_bug.cgi?id=197046, where the only way he was able to run our tests (after deleting the previous local admin user on macOS *2 years* ago) was to do a complete re-installation of his system.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1529382</commentid>
    <comment_count>7</comment_count>
      <attachid>367973</attachid>
    <who name="Dean Johnson">dean_johnson</who>
    <bug_when>2019-04-22 14:25:28 -0700</bug_when>
    <thetext>Created attachment 367973
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1529383</commentid>
    <comment_count>8</comment_count>
      <attachid>367974</attachid>
    <who name="Dean Johnson">dean_johnson</who>
    <bug_when>2019-04-22 14:27:02 -0700</bug_when>
    <thetext>Created attachment 367974
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1529417</commentid>
    <comment_count>9</comment_count>
      <attachid>367974</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-04-22 15:07:53 -0700</bug_when>
    <thetext>Comment on attachment 367974
Patch

Clearing flags on attachment: 367974

Committed r244513: &lt;https://trac.webkit.org/changeset/244513&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1529418</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-04-22 15:07:55 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1529420</commentid>
    <comment_count>11</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-04-22 15:08:28 -0700</bug_when>
    <thetext>&lt;rdar://problem/50109280&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>367967</attachid>
            <date>2019-04-22 13:39:11 -0700</date>
            <delta_ts>2019-04-22 14:25:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-197164-20190422133911.patch</filename>
            <type>text/plain</type>
            <size>2427</size>
            <attacher name="Dean Johnson">dean_johnson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ0NTA3CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNzUwNzc3OTdlY2ZiM2I2ZTU5MTExNjQ1ZDRmNDQ3M2I5
MThkNTE4NS4uZGM4ZTg3NWJhN2EwZmMyYzNhYWUwNmU3NzA2ZjE3NzNhZGZkODI0ZSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1
IEBACisyMDE5LTA0LTIyICBEZWFuIEpvaG5zb24gIDxkZWFuX2pvaG5zb25AYXBwbGUuY29tPgor
CisgICAgICAgIFVzZSBjdXJsIHRvIGRvd25sb2FkIHBhY2thZ2VzIGZvciB3ZWJraXRweSBhdXRv
aW5zdGFsbGVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xOTcxNjQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL3N5c3RlbS9hdXRvaW5zdGFsbC5weToKKyAgICAg
ICAgKEF1dG9JbnN0YWxsZXIuX2Rvd25sb2FkKTogVXNlIGN1cmwgdG8gZG93bmxvYWQgcGFja2Fn
ZXMgbmVjZXNzYXJ5IGZvciB3ZWJraXRweS90aGlyZHBhcnR5L2F1dG9pbnN0YWxsZWQKKyAgICAg
ICAgc2luY2UgUHl0aG9uMidzIHVybGxpYjIgbW9kdWxlIHNvbWV0aW1lcyBzcGV3cyB1c2VsZXNz
IGVycm9yIG1lc3NhZ2VzIGFib3V0IFRMUyB2ZXJzaW9ucyBvciBjZXJ0aWZpY2F0ZSBhY2Nlc3MK
KyAgICAgICAgZXZlbiBpZiBpbnZva2luZyBhIGNvbW1hbmQgdG8gZG8gdGhlIHNhbWUgdGhpbmcg
d2l0aCBgY3VybGAgd291bGQgd29yayB3aXRob3V0IGlzc3VlLgorCiAyMDE5LTA0LTIyICBBYWth
c2ggSmFpbiAgPGFha2FzaF9qYWluQGFwcGxlLmNvbT4KIAogICAgICAgICBbZXdzLWJ1aWxkXSBV
c2Ugc2luZ3VsYXIgdmVyYiBpbiBmYWlsdXJlIGRlc2NyaXB0aW9uIGluIGNhc2Ugb2Ygc2luZ2xl
IGFwaSB0ZXN0IGZhaWx1cmUKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29t
bW9uL3N5c3RlbS9hdXRvaW5zdGFsbC5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9u
L3N5c3RlbS9hdXRvaW5zdGFsbC5weQppbmRleCA1YTk0MjNiNzk2Zjg5ZjhhOGY0YjkxZWRiNjdj
N2JhODg0YThmZWM3Li4zZTZkODhlNzdjMjg1ZGYzZTcyYzJjN2NiNjc3ZWFiYmM4YmIzZjY5IDEw
MDY0NAotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9zeXN0ZW0vYXV0b2luc3Rh
bGwucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vc3lzdGVtL2F1dG9pbnN0
YWxsLnB5CkBAIC00Niw2ICs0Niw3IEBAIGltcG9ydCByZQogZnJvbSBkaXN0dXRpbHMgaW1wb3J0
IGRpcl91dGlsCiBmcm9tIGdsb2IgaW1wb3J0IGdsb2IKIGltcG9ydCB1cmxwYXJzZQoraW1wb3J0
IHN1YnByb2Nlc3MKIAogCiBfbG9nID0gbG9nZ2luZy5nZXRMb2dnZXIoX19uYW1lX18pCkBAIC00
MTgsOCArNDE5LDE4IEBAIGNsYXNzIEF1dG9JbnN0YWxsZXIob2JqZWN0KToKICAgICAgICAgICAg
IHJldHVybiBjYWNoZQogCiAgICAgICAgIHRhcmdldF9wYXRoID0gb3MucGF0aC5qb2luKHNjcmF0
Y2hfZGlyLCB0YXJnZXRfZmlsZW5hbWUpCi0gICAgICAgIHdpdGggb3Blbih0YXJnZXRfcGF0aCwg
IndiIikgYXMgc3RyZWFtOgotICAgICAgICAgICAgc2VsZi5fZG93bmxvYWRfdG9fc3RyZWFtKHVy
bCwgc3RyZWFtKQorCisgICAgICAgIGlmIG9zLm5hbWUgPT0gJ3Bvc2l4JzoKKyAgICAgICAgICAg
IHRyeToKKyAgICAgICAgICAgICAgICBjb21tYW5kID0gWydjdXJsJywgdXJsLCAnLUwnLCAnLS1v
dXRwdXQnLCB0YXJnZXRfcGF0aF0KKyAgICAgICAgICAgICAgICB3aXRoIG9wZW4ob3MuZGV2bnVs
bCwgJ3cnKSBhcyBkZXZudWxsOgorICAgICAgICAgICAgICAgICAgICBzdWJwcm9jZXNzLmNoZWNr
X2NhbGwoY29tbWFuZCwgc3Rkb3V0PWRldm51bGwsIHN0ZGVycj1kZXZudWxsKQorICAgICAgICAg
ICAgZXhjZXB0IHN1YnByb2Nlc3MuQ2FsbGVkUHJvY2Vzc0Vycm9yIGFzIGU6CisgICAgICAgICAg
ICAgICAgX2xvZy5pbmZvKCdFcnJvcjogRmFpbGVkIHRvIGRvd25sb2FkIHt9IHRvIHt9LiBDb21t
YW5kOiB7fScuZm9ybWF0KHVybCwgdGFyZ2V0X3BhdGgsIGNvbW1hbmQpKQorICAgICAgICAgICAg
ICAgIHJhaXNlCisgICAgICAgIGVsc2U6ICAjIFdpbmRvd3MKKyAgICAgICAgICAgIHdpdGggb3Bl
bih0YXJnZXRfcGF0aCwgIndiIikgYXMgc3RyZWFtOgorICAgICAgICAgICAgICAgIHNlbGYuX2Rv
d25sb2FkX3RvX3N0cmVhbSh1cmwsIHN0cmVhbSkKIAogICAgICAgICBpZiBfQ0FDSEVfRU5WX1ZB
UiBpbiBvcy5lbnZpcm9uOgogICAgICAgICAgICAgZGlyX3V0aWwuY29weV90cmVlKHNjcmF0Y2hf
ZGlyLCBvcy5lbnZpcm9uW19DQUNIRV9FTlZfVkFSXSkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>367973</attachid>
            <date>2019-04-22 14:25:28 -0700</date>
            <delta_ts>2019-04-22 14:27:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-197164-20190422142528.patch</filename>
            <type>text/plain</type>
            <size>2339</size>
            <attacher name="Dean Johnson">dean_johnson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ0NTA3CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNzUwNzc3OTdlY2ZiM2I2ZTU5MTExNjQ1ZDRmNDQ3M2I5
MThkNTE4NS4uYjJmZjUwM2ViYWViMDU0MGEzNmQwM2U2ZTU5ODIwYzU5ODkzNGVmZiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1
IEBACisyMDE5LTA0LTIyICBEZWFuIEpvaG5zb24gIDxkZWFuX2pvaG5zb25AYXBwbGUuY29tPgor
CisgICAgICAgIFVzZSBjdXJsIHRvIGRvd25sb2FkIHBhY2thZ2VzIGZvciB3ZWJraXRweSBhdXRv
aW5zdGFsbGVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xOTcxNjQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL3N5c3RlbS9hdXRvaW5zdGFsbC5weToKKyAgICAg
ICAgKEF1dG9JbnN0YWxsZXIuX2Rvd25sb2FkKTogVXNlIGN1cmwoMSkgdG8gZG93bmxvYWQgcGFj
a2FnZXMgbmVjZXNzYXJ5IGZvcgorICAgICAgICB3ZWJraXRweS90aGlyZHBhcnR5L2F1dG9pbnN0
YWxsZWQgc2luY2UgUHl0aG9uMidzIHVybGxpYjIgbW9kdWxlIGNhbiByZXN1bHQgaW4gdW5uZWNl
c3NhcnkKKyAgICAgICAgZXJyb3JzIHdoaWNoIGFyZSBub3QgcHJlc2VudCB3aGVuIHVzaW5nIGN1
cmwoMSkuCisKIDIwMTktMDQtMjIgIEFha2FzaCBKYWluICA8YWFrYXNoX2phaW5AYXBwbGUuY29t
PgogCiAgICAgICAgIFtld3MtYnVpbGRdIFVzZSBzaW5ndWxhciB2ZXJiIGluIGZhaWx1cmUgZGVz
Y3JpcHRpb24gaW4gY2FzZSBvZiBzaW5nbGUgYXBpIHRlc3QgZmFpbHVyZQpkaWZmIC0tZ2l0IGEv
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vc3lzdGVtL2F1dG9pbnN0YWxsLnB5IGIvVG9v
bHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vc3lzdGVtL2F1dG9pbnN0YWxsLnB5CmluZGV4IDVh
OTQyM2I3OTZmODlmOGE4ZjRiOTFlZGI2N2M3YmE4ODRhOGZlYzcuLjNlNmQ4OGU3N2MyODVkZjNl
NzJjMmM3Y2I2NzdlYWJiYzhiYjNmNjkgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0
cHkvY29tbW9uL3N5c3RlbS9hdXRvaW5zdGFsbC5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtp
dHB5L2NvbW1vbi9zeXN0ZW0vYXV0b2luc3RhbGwucHkKQEAgLTQ2LDYgKzQ2LDcgQEAgaW1wb3J0
IHJlCiBmcm9tIGRpc3R1dGlscyBpbXBvcnQgZGlyX3V0aWwKIGZyb20gZ2xvYiBpbXBvcnQgZ2xv
YgogaW1wb3J0IHVybHBhcnNlCitpbXBvcnQgc3VicHJvY2VzcwogCiAKIF9sb2cgPSBsb2dnaW5n
LmdldExvZ2dlcihfX25hbWVfXykKQEAgLTQxOCw4ICs0MTksMTggQEAgY2xhc3MgQXV0b0luc3Rh
bGxlcihvYmplY3QpOgogICAgICAgICAgICAgcmV0dXJuIGNhY2hlCiAKICAgICAgICAgdGFyZ2V0
X3BhdGggPSBvcy5wYXRoLmpvaW4oc2NyYXRjaF9kaXIsIHRhcmdldF9maWxlbmFtZSkKLSAgICAg
ICAgd2l0aCBvcGVuKHRhcmdldF9wYXRoLCAid2IiKSBhcyBzdHJlYW06Ci0gICAgICAgICAgICBz
ZWxmLl9kb3dubG9hZF90b19zdHJlYW0odXJsLCBzdHJlYW0pCisKKyAgICAgICAgaWYgb3MubmFt
ZSA9PSAncG9zaXgnOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIGNvbW1hbmQg
PSBbJ2N1cmwnLCB1cmwsICctTCcsICctLW91dHB1dCcsIHRhcmdldF9wYXRoXQorICAgICAgICAg
ICAgICAgIHdpdGggb3Blbihvcy5kZXZudWxsLCAndycpIGFzIGRldm51bGw6CisgICAgICAgICAg
ICAgICAgICAgIHN1YnByb2Nlc3MuY2hlY2tfY2FsbChjb21tYW5kLCBzdGRvdXQ9ZGV2bnVsbCwg
c3RkZXJyPWRldm51bGwpCisgICAgICAgICAgICBleGNlcHQgc3VicHJvY2Vzcy5DYWxsZWRQcm9j
ZXNzRXJyb3IgYXMgZToKKyAgICAgICAgICAgICAgICBfbG9nLmluZm8oJ0Vycm9yOiBGYWlsZWQg
dG8gZG93bmxvYWQge30gdG8ge30uIENvbW1hbmQ6IHt9Jy5mb3JtYXQodXJsLCB0YXJnZXRfcGF0
aCwgY29tbWFuZCkpCisgICAgICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgZWxzZTogICMgV2lu
ZG93cworICAgICAgICAgICAgd2l0aCBvcGVuKHRhcmdldF9wYXRoLCAid2IiKSBhcyBzdHJlYW06
CisgICAgICAgICAgICAgICAgc2VsZi5fZG93bmxvYWRfdG9fc3RyZWFtKHVybCwgc3RyZWFtKQog
CiAgICAgICAgIGlmIF9DQUNIRV9FTlZfVkFSIGluIG9zLmVudmlyb246CiAgICAgICAgICAgICBk
aXJfdXRpbC5jb3B5X3RyZWUoc2NyYXRjaF9kaXIsIG9zLmVudmlyb25bX0NBQ0hFX0VOVl9WQVJd
KQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>367974</attachid>
            <date>2019-04-22 14:27:02 -0700</date>
            <delta_ts>2019-04-22 15:07:53 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-197164-20190422142701.patch</filename>
            <type>text/plain</type>
            <size>2336</size>
            <attacher name="Dean Johnson">dean_johnson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ0NTA3CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNzUwNzc3OTdlY2ZiM2I2ZTU5MTExNjQ1ZDRmNDQ3M2I5
MThkNTE4NS4uZWZmMWVjMDlmYTY0ZjMzMWZhNjRlNGQ3MjIxN2RjYjkwZDlkZGVlOCAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1
IEBACisyMDE5LTA0LTIyICBEZWFuIEpvaG5zb24gIDxkZWFuX2pvaG5zb25AYXBwbGUuY29tPgor
CisgICAgICAgIFVzZSBjdXJsIHRvIGRvd25sb2FkIHBhY2thZ2VzIGZvciB3ZWJraXRweSBhdXRv
aW5zdGFsbGVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xOTcxNjQKKworICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKworICAgICAgICAq
IFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL3N5c3RlbS9hdXRvaW5zdGFsbC5weToKKyAgICAgICAg
KEF1dG9JbnN0YWxsZXIuX2Rvd25sb2FkKTogVXNlIGN1cmwoMSkgdG8gZG93bmxvYWQgcGFja2Fn
ZXMgbmVjZXNzYXJ5IGZvcgorICAgICAgICB3ZWJraXRweS90aGlyZHBhcnR5L2F1dG9pbnN0YWxs
ZWQgc2luY2UgUHl0aG9uMidzIHVybGxpYjIgbW9kdWxlIGNhbiByZXN1bHQgaW4gdW5uZWNlc3Nh
cnkKKyAgICAgICAgZXJyb3JzIHdoaWNoIGFyZSBub3QgcHJlc2VudCB3aGVuIHVzaW5nIGN1cmwo
MSkuCisKIDIwMTktMDQtMjIgIEFha2FzaCBKYWluICA8YWFrYXNoX2phaW5AYXBwbGUuY29tPgog
CiAgICAgICAgIFtld3MtYnVpbGRdIFVzZSBzaW5ndWxhciB2ZXJiIGluIGZhaWx1cmUgZGVzY3Jp
cHRpb24gaW4gY2FzZSBvZiBzaW5nbGUgYXBpIHRlc3QgZmFpbHVyZQpkaWZmIC0tZ2l0IGEvVG9v
bHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vc3lzdGVtL2F1dG9pbnN0YWxsLnB5IGIvVG9vbHMv
U2NyaXB0cy93ZWJraXRweS9jb21tb24vc3lzdGVtL2F1dG9pbnN0YWxsLnB5CmluZGV4IDVhOTQy
M2I3OTZmODlmOGE4ZjRiOTFlZGI2N2M3YmE4ODRhOGZlYzcuLjNlNmQ4OGU3N2MyODVkZjNlNzJj
MmM3Y2I2NzdlYWJiYzhiYjNmNjkgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkv
Y29tbW9uL3N5c3RlbS9hdXRvaW5zdGFsbC5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5
L2NvbW1vbi9zeXN0ZW0vYXV0b2luc3RhbGwucHkKQEAgLTQ2LDYgKzQ2LDcgQEAgaW1wb3J0IHJl
CiBmcm9tIGRpc3R1dGlscyBpbXBvcnQgZGlyX3V0aWwKIGZyb20gZ2xvYiBpbXBvcnQgZ2xvYgog
aW1wb3J0IHVybHBhcnNlCitpbXBvcnQgc3VicHJvY2VzcwogCiAKIF9sb2cgPSBsb2dnaW5nLmdl
dExvZ2dlcihfX25hbWVfXykKQEAgLTQxOCw4ICs0MTksMTggQEAgY2xhc3MgQXV0b0luc3RhbGxl
cihvYmplY3QpOgogICAgICAgICAgICAgcmV0dXJuIGNhY2hlCiAKICAgICAgICAgdGFyZ2V0X3Bh
dGggPSBvcy5wYXRoLmpvaW4oc2NyYXRjaF9kaXIsIHRhcmdldF9maWxlbmFtZSkKLSAgICAgICAg
d2l0aCBvcGVuKHRhcmdldF9wYXRoLCAid2IiKSBhcyBzdHJlYW06Ci0gICAgICAgICAgICBzZWxm
Ll9kb3dubG9hZF90b19zdHJlYW0odXJsLCBzdHJlYW0pCisKKyAgICAgICAgaWYgb3MubmFtZSA9
PSAncG9zaXgnOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIGNvbW1hbmQgPSBb
J2N1cmwnLCB1cmwsICctTCcsICctLW91dHB1dCcsIHRhcmdldF9wYXRoXQorICAgICAgICAgICAg
ICAgIHdpdGggb3Blbihvcy5kZXZudWxsLCAndycpIGFzIGRldm51bGw6CisgICAgICAgICAgICAg
ICAgICAgIHN1YnByb2Nlc3MuY2hlY2tfY2FsbChjb21tYW5kLCBzdGRvdXQ9ZGV2bnVsbCwgc3Rk
ZXJyPWRldm51bGwpCisgICAgICAgICAgICBleGNlcHQgc3VicHJvY2Vzcy5DYWxsZWRQcm9jZXNz
RXJyb3IgYXMgZToKKyAgICAgICAgICAgICAgICBfbG9nLmluZm8oJ0Vycm9yOiBGYWlsZWQgdG8g
ZG93bmxvYWQge30gdG8ge30uIENvbW1hbmQ6IHt9Jy5mb3JtYXQodXJsLCB0YXJnZXRfcGF0aCwg
Y29tbWFuZCkpCisgICAgICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgZWxzZTogICMgV2luZG93
cworICAgICAgICAgICAgd2l0aCBvcGVuKHRhcmdldF9wYXRoLCAid2IiKSBhcyBzdHJlYW06Cisg
ICAgICAgICAgICAgICAgc2VsZi5fZG93bmxvYWRfdG9fc3RyZWFtKHVybCwgc3RyZWFtKQogCiAg
ICAgICAgIGlmIF9DQUNIRV9FTlZfVkFSIGluIG9zLmVudmlyb246CiAgICAgICAgICAgICBkaXJf
dXRpbC5jb3B5X3RyZWUoc2NyYXRjaF9kaXIsIG9zLmVudmlyb25bX0NBQ0hFX0VOVl9WQVJdKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>