<?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>83259</bug_id>
          
          <creation_ts>2012-04-05 02:21:33 -0700</creation_ts>
          <short_desc>[BlackBerry] Networking - Assertion failed when it store FTP credentials</short_desc>
          <delta_ts>2012-04-11 09:21:16 -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>Platform</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>INVALID</resolution>
          
          
          <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>0</everconfirmed>
          <reporter name="Sean Wang">xuewen.ok</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ap</cc>
    
    <cc>beidson</cc>
    
    <cc>charles.wei</cc>
    
    <cc>jasonliuwebkit</cc>
    
    <cc>rwlbuis</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>596415</commentid>
    <comment_count>0</comment_count>
    <who name="Sean Wang">xuewen.ok</who>
    <bug_when>2012-04-05 02:21:33 -0700</bug_when>
    <thetext>For blackberry porting, When access a FTP site with basic authentication, after input credential and click the OK button, it assertion fails at CredentialStorage::set(). It is asserting that ASSERT(protectionSpace.isProxy() || url.protocolInHTTPFamily()). But blackberry porting is saving FTP credential using this function. We should support for FTP to store its credentials.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>597171</commentid>
    <comment_count>1</comment_count>
      <attachid>135975</attachid>
    <who name="Sean Wang">xuewen.ok</who>
    <bug_when>2012-04-05 20:21:17 -0700</bug_when>
    <thetext>Created attachment 135975
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>599432</commentid>
    <comment_count>2</comment_count>
      <attachid>135975</attachid>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2012-04-10 11:13:31 -0700</bug_when>
    <thetext>Comment on attachment 135975
Patch

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

&gt; Source/WebCore/ChangeLog:13
&gt; +        passed else it is failed.

You should not give the steps to reproduce in the ChangeLog, the bug report itself should contain this information. Is it possible to add an auto/manual test for this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>599441</commentid>
    <comment_count>3</comment_count>
      <attachid>135975</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-04-10 11:25:35 -0700</bug_when>
    <thetext>Comment on attachment 135975
Patch

I think that the correct answer is to not use HTTP credential storage code for ftp. It&apos;s specifically tailored for HTTP credential semantics.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>600182</commentid>
    <comment_count>4</comment_count>
    <who name="Sean Wang">xuewen.ok</who>
    <bug_when>2012-04-11 03:33:53 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 135975 [details])
&gt; I think that the correct answer is to not use HTTP credential storage code for ftp. It&apos;s specifically tailored for HTTP credential semantics.

Currently, only the CF and BlackBerry porting are using the CredentialStorage as I grepped CredentialStorage::set. There are 3 type browsers which support FTP credential storage. They are Firefox 11.0, Chromium 18.0 and IE 8 as I tested. So I think storing the FTP credentials makes sense.

As the credentials are stored in class ProtectionSpace, and it supports many protocols in its ProtectionSpaceServerType and it supports ServerType comparing in its &quot;operator ==&quot;,  So storing other protocol&apos;s credentials should work with the current implementations.

What is your concern?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>600190</commentid>
    <comment_count>5</comment_count>
      <attachid>136655</attachid>
    <who name="Sean Wang">xuewen.ok</who>
    <bug_when>2012-04-11 04:02:30 -0700</bug_when>
    <thetext>Created attachment 136655
Patch 2

I changed the comments of &quot;No new test&quot; section. It can&apos;t write a auto-test case, since it needs a FTP server to setup the test case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>600307</commentid>
    <comment_count>6</comment_count>
      <attachid>136655</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-04-11 09:08:27 -0700</bug_when>
    <thetext>Comment on attachment 136655
Patch 2

Again, this class is not designed to keep ftp credentials. You should find a different place for those.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>600314</commentid>
    <comment_count>7</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2012-04-11 09:19:01 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt;There are 3 type browsers which support FTP credential storage. They are Firefox 11.0, Chromium 18.0 and IE 8 as I tested. So I think storing the FTP credentials makes sense.

Why do you think only those 3 browsers support FTP credential storage?  All Mac WebKit browsers do, for example, by virtue of using the keychain for persistent credential storage and having the networking layer and/or the browser itself try that keychain.

Also it&apos;s not clear to me based on your statement but it seems possible that you think the credential store is persistent, while it is not.

&gt; (In reply to comment #3)
&gt; &gt; (From update of attachment 135975 [details] [details])
&gt; &gt; I think that the correct answer is to not use HTTP credential storage code for ftp. It&apos;s specifically tailored for HTTP credential semantics.
&gt; 
&gt; Currently, only the CF and BlackBerry porting are using the CredentialStorage as I grepped CredentialStorage::set. 
&gt; ...
&gt; What is your concern?

Our concern - that Alexey explicitly stated - is that the CredentialStorage class is used solely for HTTP(S) credentials and has the semantics of that usage.

You&apos;re also mistaken about how &quot;limited&quot; the use is:

`grep -r &quot;CredentialStorage::set&quot; . | grep -v ChangeLog`
./WebCore/platform/network/blackberry/NetworkJob.cpp:    CredentialStorage::set(challenge.proposedCredential(), challenge.protectionSpace(), m_response.url());
./WebCore/platform/network/cf/ResourceHandleCFNet.cpp:            CredentialStorage::set(Credential(d-&gt;m_user, d-&gt;m_pass, CredentialPersistenceNone), firstRequest().url());
./WebCore/platform/network/cf/ResourceHandleCFNet.cpp:        CredentialStorage::set(core(credential.get()), challenge.protectionSpace(), urlToStore);
./WebCore/platform/network/cf/ResourceHandleCFNet.cpp:                    CredentialStorage::set(credential, challenge.protectionSpace(), challenge.failureResponse().url());
./WebCore/platform/network/cf/ResourceHandleCFNet.cpp:        CredentialStorage::set(webCredential, challenge.protectionSpace(), urlToStore);
./WebCore/platform/network/CredentialStorage.cpp:void CredentialStorage::set(const Credential&amp; credential, const ProtectionSpace&amp; protectionSpace, const KURL&amp; url)
./WebCore/platform/network/CredentialStorage.cpp:bool CredentialStorage::set(const Credential&amp; credential, const KURL&amp; url)
./WebCore/platform/network/mac/ResourceHandleMac.mm:            CredentialStorage::set(Credential(d-&gt;m_user, d-&gt;m_pass, CredentialPersistenceNone), firstRequest().url());
./WebCore/platform/network/mac/ResourceHandleMac.mm:                    CredentialStorage::set(credential, challenge.protectionSpace(), challenge.failureResponse().url());
./WebCore/platform/network/mac/ResourceHandleMac.mm:        CredentialStorage::set(webCredential, core([d-&gt;m_currentMacChallenge protectionSpace]), urlToStore);

In addition to BlackBerry it is used by Windows, Mac, and iOS ports..  In fact it was added for the mainline Apple ports.

We apologize for the confusion that this is a generic credential store when - as stated a few times - it is explicitly about HTTP credentials.  I&apos;ve filed https://bugs.webkit.org/show_bug.cgi?id=83695 to correct that so no one makes the same mistake again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>600317</commentid>
    <comment_count>8</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2012-04-11 09:21:16 -0700</bug_when>
    <thetext>Since this bug was premised on the BlackBerry port incorrectly using CredentialStorage for FTP credentials, it seems it is invalid.

I would recommend filing a new bug about adding an FTP credential store for BlackBerry&apos;s sole use.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>135975</attachid>
            <date>2012-04-05 20:21:17 -0700</date>
            <delta_ts>2012-04-11 04:02:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>0001-BlackBerry-Networking-Assertion-failed-when-it-store.patch</filename>
            <type>text/plain</type>
            <size>3762</size>
            <attacher name="Sean Wang">xuewen.ok</attacher>
            
              <data encoding="base64">RnJvbSAzNDJiNDI3NjE3N2M0MzlhZGUwZGNkNzc2MjBiODdmYzhkMmRlNzczIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBTZWFuIFdhbmcgPFh1ZXdlbi5XYW5nQHRvcmNobW9iaWxlLmNv
bS5jbj4KRGF0ZTogRnJpLCA2IEFwciAyMDEyIDExOjEwOjMyICswODAwClN1YmplY3Q6IFtQQVRD
SF0gW0JsYWNrQmVycnldIE5ldHdvcmtpbmcgLSBBc3NlcnRpb24gZmFpbGVkIHdoZW4gaXQgc3Rv
cmUgRlRQCiBjcmVkZW50aWFscyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9ODMyNTkKCkNoYW5nZSBDcmVkZW50aWFsU3RvcmFnZSB0byBzdXBwb3J0IHNhdmluZyBjcmVk
ZW50aWFscyBmb3IgRlRQIHByb3RvY29sLgoKUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCgpU
byB0ZXN0IHRoaXMgcGF0Y2gsIHlvdSBuZWVkIHRvIGJ1aWxkIHRoZSBkZWJ1ZyB2ZXJzaW9uIG9m
IHdlYmtpdCBhbmQKb3BlbiBhIEZUUCBzaXRlIHdpdGggYmFzaWMgYXV0aGVudGljYXRpb24uIEFm
dGVyIGlucHV0IGNyZWRlbnRpYWxzIGFuZApjbGljayB0aGUgIk9LIiBidXR0b24sIGlmIHRoZSBi
cm93c2VyIGRvZXNuJ3QgY3Jhc2gsIHRoZW4gdGhlIHRlc3QgaXMKcGFzc2VkIGVsc2UgaXQgaXMg
ZmFpbGVkLgoKKiBwbGF0Zm9ybS9uZXR3b3JrL0NyZWRlbnRpYWxTdG9yYWdlLmNwcDoKKFdlYkNv
cmU6OkNyZWRlbnRpYWxTdG9yYWdlOjpzZXQpOiBjaGFuZ2VkIHRoZSBhc3NlcnRpb24KKFdlYkNv
cmU6OmZpbmREZWZhdWx0UHJvdGVjdGlvblNwYWNlRm9yVVJMKTogY2hhbmdlZCB0aGUgYXNzZXJ0
aW9uCi0tLQogU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfCAgIDE4ICsrKysrKysrKysrKysrKysrKwogLi4uL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9DcmVkZW50aWFsU3RvcmFnZS5jcHAgfCAgICA2ICsrKy0tLQogMiBmaWxlcyBjaGFuZ2VkLCAy
MSBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBkYjNiOWYxLi45
ZGRhYTA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNl
L1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTItMDQtMDUgIFNlYW4gV2Fu
ZyAgPFh1ZXdlbi5XYW5nQHRvcmNobW9iaWxlLmNvbS5jbj4KKworICAgICAgICBbQmxhY2tCZXJy
eV0gTmV0d29ya2luZyAtIEFzc2VydGlvbiBmYWlsZWQgd2hlbiBpdCBzdG9yZSBGVFAgY3JlZGVu
dGlhbHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgz
MjU5CisKKyAgICAgICAgQ2hhbmdlIENyZWRlbnRpYWxTdG9yYWdlIHRvIHN1cHBvcnQgc2F2aW5n
IGNyZWRlbnRpYWxzIGZvciBGVFAgcHJvdG9jb2wuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgVG8gdGVzdCB0aGlzIHBhdGNoLCB5b3UgbmVlZCB0byBi
dWlsZCB0aGUgZGVidWcgdmVyc2lvbiBvZiB3ZWJraXQgYW5kCisgICAgICAgIG9wZW4gYSBGVFAg
c2l0ZSB3aXRoIGJhc2ljIGF1dGhlbnRpY2F0aW9uLiBBZnRlciBpbnB1dCBjcmVkZW50aWFscyBh
bmQKKyAgICAgICAgY2xpY2sgdGhlICJPSyIgYnV0dG9uLCBpZiB0aGUgYnJvd3NlciBkb2Vzbid0
IGNyYXNoLCB0aGVuIHRoZSB0ZXN0IGlzCisgICAgICAgIHBhc3NlZCBlbHNlIGl0IGlzIGZhaWxl
ZC4KKworICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvQ3JlZGVudGlhbFN0b3JhZ2UuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6Q3JlZGVudGlhbFN0b3JhZ2U6OnNldCk6IGNoYW5nZWQgdGhlIGFz
c2VydGlvbgorICAgICAgICAoV2ViQ29yZTo6ZmluZERlZmF1bHRQcm90ZWN0aW9uU3BhY2VGb3JV
UkwpOiBjaGFuZ2VkIHRoZSBhc3NlcnRpb24KKwogMjAxMi0wNC0wNSAgSGFucyBNdWxsZXIgIDxo
bXVsbGVyQGFkb2JlLmNvbT4KIAogICAgICAgICBDU1MgRXhjbHVzaW9ucyBwb2x5Z29uIHNoYXBl
IGFyZ3VtZW50cyBzaG91bGQgYmUgY29tbWEgc2VwYXJhdGVkCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0NyZWRlbnRpYWxTdG9yYWdlLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvQ3JlZGVudGlhbFN0b3JhZ2UuY3BwCmluZGV4IGYwOTg0
ZjguLmY2MTRjZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsv
Q3JlZGVudGlhbFN0b3JhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvQ3JlZGVudGlhbFN0b3JhZ2UuY3BwCkBAIC04NSw3ICs4NSw3IEBAIHN0YXRpYyBTdHJpbmcg
cHJvdGVjdGlvblNwYWNlTWFwS2V5RnJvbVVSTChjb25zdCBLVVJMJiB1cmwpCiAKIHZvaWQgQ3Jl
ZGVudGlhbFN0b3JhZ2U6OnNldChjb25zdCBDcmVkZW50aWFsJiBjcmVkZW50aWFsLCBjb25zdCBQ
cm90ZWN0aW9uU3BhY2UmIHByb3RlY3Rpb25TcGFjZSwgY29uc3QgS1VSTCYgdXJsKQogewotICAg
IEFTU0VSVChwcm90ZWN0aW9uU3BhY2UuaXNQcm94eSgpIHx8IHVybC5wcm90b2NvbElzSW5IVFRQ
RmFtaWx5KCkpOworICAgIEFTU0VSVChwcm90ZWN0aW9uU3BhY2UuaXNQcm94eSgpIHx8IHVybC5w
cm90b2NvbElzSW5IVFRQRmFtaWx5KCkgfHwgdXJsLnByb3RvY29sSXMoImZ0cCIpKTsKICAgICBB
U1NFUlQocHJvdGVjdGlvblNwYWNlLmlzUHJveHkoKSB8fCB1cmwuaXNWYWxpZCgpKTsKIAogICAg
IHByb3RlY3Rpb25TcGFjZVRvQ3JlZGVudGlhbE1hcCgpLnNldChwcm90ZWN0aW9uU3BhY2UsIGNy
ZWRlbnRpYWwpOwpAQCAtMTEyLDcgKzExMiw3IEBAIHZvaWQgQ3JlZGVudGlhbFN0b3JhZ2U6OnJl
bW92ZShjb25zdCBQcm90ZWN0aW9uU3BhY2UmIHByb3RlY3Rpb25TcGFjZSkKIAogc3RhdGljIFBh
dGhUb0RlZmF1bHRQcm90ZWN0aW9uU3BhY2VNYXA6Oml0ZXJhdG9yIGZpbmREZWZhdWx0UHJvdGVj
dGlvblNwYWNlRm9yVVJMKGNvbnN0IEtVUkwmIHVybCkKIHsKLSAgICBBU1NFUlQodXJsLnByb3Rv
Y29sSXNJbkhUVFBGYW1pbHkoKSk7CisgICAgQVNTRVJUKHVybC5wcm90b2NvbElzSW5IVFRQRmFt
aWx5KCkgfHwgdXJsLnByb3RvY29sSXMoImZ0cCIpKTsKICAgICBBU1NFUlQodXJsLmlzVmFsaWQo
KSk7CiAKICAgICBQYXRoVG9EZWZhdWx0UHJvdGVjdGlvblNwYWNlTWFwJiBtYXAgPSBwYXRoVG9E
ZWZhdWx0UHJvdGVjdGlvblNwYWNlTWFwKCk7CkBAIC0xNDEsNyArMTQxLDcgQEAgc3RhdGljIFBh
dGhUb0RlZmF1bHRQcm90ZWN0aW9uU3BhY2VNYXA6Oml0ZXJhdG9yIGZpbmREZWZhdWx0UHJvdGVj
dGlvblNwYWNlRm9yVVIKIAogYm9vbCBDcmVkZW50aWFsU3RvcmFnZTo6c2V0KGNvbnN0IENyZWRl
bnRpYWwmIGNyZWRlbnRpYWwsIGNvbnN0IEtVUkwmIHVybCkKIHsKLSAgICBBU1NFUlQodXJsLnBy
b3RvY29sSXNJbkhUVFBGYW1pbHkoKSk7CisgICAgQVNTRVJUKHVybC5wcm90b2NvbElzSW5IVFRQ
RmFtaWx5KCkgfHwgdXJsLnByb3RvY29sSXMoImZ0cCIpKTsKICAgICBBU1NFUlQodXJsLmlzVmFs
aWQoKSk7CiAgICAgUGF0aFRvRGVmYXVsdFByb3RlY3Rpb25TcGFjZU1hcDo6aXRlcmF0b3IgaXRl
ciA9IGZpbmREZWZhdWx0UHJvdGVjdGlvblNwYWNlRm9yVVJMKHVybCk7CiAgICAgaWYgKGl0ZXIg
PT0gcGF0aFRvRGVmYXVsdFByb3RlY3Rpb25TcGFjZU1hcCgpLmVuZCgpKQotLSAKMS43LjUuNAoK
</data>
<flag name="review"
          id="140623"
          type_id="1"
          status="-"
          setter="rwlbuis"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>136655</attachid>
            <date>2012-04-11 04:02:30 -0700</date>
            <delta_ts>2012-04-11 09:08:27 -0700</delta_ts>
            <desc>Patch 2</desc>
            <filename>0001-BlackBerry-Networking-Assertion-failed-when-it-store.patch</filename>
            <type>text/plain</type>
            <size>3369</size>
            <attacher name="Sean Wang">xuewen.ok</attacher>
            
              <data encoding="base64">RnJvbSBlOWYxMTg1NDliOGI0NzQ2YWYyNDE2OWM4YWI1YWVjODMyYjc2ODY3IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBTZWFuIFdhbmcgPFh1ZXdlbi5XYW5nQHRvcmNobW9iaWxlLmNv
bS5jbj4KRGF0ZTogV2VkLCAxMSBBcHIgMjAxMiAxODo1NTowNSArMDgwMApTdWJqZWN0OiBbUEFU
Q0hdIFtCbGFja0JlcnJ5XSBOZXR3b3JraW5nIC0gQXNzZXJ0aW9uIGZhaWxlZCB3aGVuIGl0IHN0
b3JlIEZUUAogY3JlZGVudGlhbHMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTgzMjU5CgpDaGFuZ2UgQ3JlZGVudGlhbFN0b3JhZ2UgdG8gc3VwcG9ydCBzYXZpbmcgY3Jl
ZGVudGlhbHMgZm9yIEZUUCBwcm90b2NvbC4KClJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoK
Tm8gbmV3IHRlc3RzLCBpdCBuZWVkIGEgRlRQIHNlcnZlciB0byB0ZXN0LgoKKiBwbGF0Zm9ybS9u
ZXR3b3JrL0NyZWRlbnRpYWxTdG9yYWdlLmNwcDoKKFdlYkNvcmU6OkNyZWRlbnRpYWxTdG9yYWdl
OjpzZXQpOiBBZGQgRlRQIHRvIHRoZSBhc3NlcnRpb24KKFdlYkNvcmU6OmZpbmREZWZhdWx0UHJv
dGVjdGlvblNwYWNlRm9yVVJMKTogQWRkaW5nIEZUUCB0byB0aGUgYXNzZXJ0aW9uCi0tLQogU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDE1ICsr
KysrKysrKysrKysrKwogLi4uL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9DcmVkZW50aWFsU3Rv
cmFnZS5jcHAgfCAgICA2ICsrKy0tLQogMiBmaWxlcyBjaGFuZ2VkLCAxOCBpbnNlcnRpb25zKCsp
LCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBi
L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA1MWNhNTVhLi5jN2QyYzk1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTItMDQtMTEgIFNlYW4gV2FuZyAgPFh1ZXdlbi5XYW5n
QHRvcmNobW9iaWxlLmNvbS5jbj4KKworICAgICAgICBbQmxhY2tCZXJyeV0gTmV0d29ya2luZyAt
IEFzc2VydGlvbiBmYWlsZWQgd2hlbiBpdCBzdG9yZSBGVFAgY3JlZGVudGlhbHMKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgzMjU5CisKKyAgICAgICAg
Q2hhbmdlIENyZWRlbnRpYWxTdG9yYWdlIHRvIHN1cHBvcnQgc2F2aW5nIGNyZWRlbnRpYWxzIGZv
ciBGVFAgcHJvdG9jb2wuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgTm8gbmV3IHRlc3RzLCBpdCBuZWVkIGEgRlRQIHNlcnZlciB0byB0ZXN0LgorCisg
ICAgICAgICogcGxhdGZvcm0vbmV0d29yay9DcmVkZW50aWFsU3RvcmFnZS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpDcmVkZW50aWFsU3RvcmFnZTo6c2V0KTogQWRkIEZUUCB0byB0aGUgYXNzZXJ0
aW9uCisgICAgICAgIChXZWJDb3JlOjpmaW5kRGVmYXVsdFByb3RlY3Rpb25TcGFjZUZvclVSTCk6
IEFkZGluZyBGVFAgdG8gdGhlIGFzc2VydGlvbgorCiAyMDEyLTA0LTExICBBbGV4YW5kZXIgUGF2
bG92ICA8YXBhdmxvdkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogW0Rl
dmljZSBNZXRyaWNzXSBJbXBsZW1lbnQgZGltZW5zaW9uIHN3YXBwaW5nCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0NyZWRlbnRpYWxTdG9yYWdlLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvQ3JlZGVudGlhbFN0b3JhZ2UuY3BwCmluZGV4
IGYwOTg0ZjguLmY2MTRjZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvQ3JlZGVudGlhbFN0b3JhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvQ3JlZGVudGlhbFN0b3JhZ2UuY3BwCkBAIC04NSw3ICs4NSw3IEBAIHN0YXRpYyBT
dHJpbmcgcHJvdGVjdGlvblNwYWNlTWFwS2V5RnJvbVVSTChjb25zdCBLVVJMJiB1cmwpCiAKIHZv
aWQgQ3JlZGVudGlhbFN0b3JhZ2U6OnNldChjb25zdCBDcmVkZW50aWFsJiBjcmVkZW50aWFsLCBj
b25zdCBQcm90ZWN0aW9uU3BhY2UmIHByb3RlY3Rpb25TcGFjZSwgY29uc3QgS1VSTCYgdXJsKQog
ewotICAgIEFTU0VSVChwcm90ZWN0aW9uU3BhY2UuaXNQcm94eSgpIHx8IHVybC5wcm90b2NvbElz
SW5IVFRQRmFtaWx5KCkpOworICAgIEFTU0VSVChwcm90ZWN0aW9uU3BhY2UuaXNQcm94eSgpIHx8
IHVybC5wcm90b2NvbElzSW5IVFRQRmFtaWx5KCkgfHwgdXJsLnByb3RvY29sSXMoImZ0cCIpKTsK
ICAgICBBU1NFUlQocHJvdGVjdGlvblNwYWNlLmlzUHJveHkoKSB8fCB1cmwuaXNWYWxpZCgpKTsK
IAogICAgIHByb3RlY3Rpb25TcGFjZVRvQ3JlZGVudGlhbE1hcCgpLnNldChwcm90ZWN0aW9uU3Bh
Y2UsIGNyZWRlbnRpYWwpOwpAQCAtMTEyLDcgKzExMiw3IEBAIHZvaWQgQ3JlZGVudGlhbFN0b3Jh
Z2U6OnJlbW92ZShjb25zdCBQcm90ZWN0aW9uU3BhY2UmIHByb3RlY3Rpb25TcGFjZSkKIAogc3Rh
dGljIFBhdGhUb0RlZmF1bHRQcm90ZWN0aW9uU3BhY2VNYXA6Oml0ZXJhdG9yIGZpbmREZWZhdWx0
UHJvdGVjdGlvblNwYWNlRm9yVVJMKGNvbnN0IEtVUkwmIHVybCkKIHsKLSAgICBBU1NFUlQodXJs
LnByb3RvY29sSXNJbkhUVFBGYW1pbHkoKSk7CisgICAgQVNTRVJUKHVybC5wcm90b2NvbElzSW5I
VFRQRmFtaWx5KCkgfHwgdXJsLnByb3RvY29sSXMoImZ0cCIpKTsKICAgICBBU1NFUlQodXJsLmlz
VmFsaWQoKSk7CiAKICAgICBQYXRoVG9EZWZhdWx0UHJvdGVjdGlvblNwYWNlTWFwJiBtYXAgPSBw
YXRoVG9EZWZhdWx0UHJvdGVjdGlvblNwYWNlTWFwKCk7CkBAIC0xNDEsNyArMTQxLDcgQEAgc3Rh
dGljIFBhdGhUb0RlZmF1bHRQcm90ZWN0aW9uU3BhY2VNYXA6Oml0ZXJhdG9yIGZpbmREZWZhdWx0
UHJvdGVjdGlvblNwYWNlRm9yVVIKIAogYm9vbCBDcmVkZW50aWFsU3RvcmFnZTo6c2V0KGNvbnN0
IENyZWRlbnRpYWwmIGNyZWRlbnRpYWwsIGNvbnN0IEtVUkwmIHVybCkKIHsKLSAgICBBU1NFUlQo
dXJsLnByb3RvY29sSXNJbkhUVFBGYW1pbHkoKSk7CisgICAgQVNTRVJUKHVybC5wcm90b2NvbElz
SW5IVFRQRmFtaWx5KCkgfHwgdXJsLnByb3RvY29sSXMoImZ0cCIpKTsKICAgICBBU1NFUlQodXJs
LmlzVmFsaWQoKSk7CiAgICAgUGF0aFRvRGVmYXVsdFByb3RlY3Rpb25TcGFjZU1hcDo6aXRlcmF0
b3IgaXRlciA9IGZpbmREZWZhdWx0UHJvdGVjdGlvblNwYWNlRm9yVVJMKHVybCk7CiAgICAgaWYg
KGl0ZXIgPT0gcGF0aFRvRGVmYXVsdFByb3RlY3Rpb25TcGFjZU1hcCgpLmVuZCgpKQotLSAKMS43
LjUuNAoK
</data>
<flag name="review"
          id="141532"
          type_id="1"
          status="-"
          setter="ap"
    />
          </attachment>
      

    </bug>

</bugzilla>