<?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>94653</bug_id>
          
          <creation_ts>2012-08-21 17:21:57 -0700</creation_ts>
          <short_desc>IndexedDB: tests for injection/extraction of idb keys</short_desc>
          <delta_ts>2012-08-22 18:49:37 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</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>1</everconfirmed>
          <reporter name="Alec Flett">alecflett</reporter>
          <assigned_to name="Alec Flett">alecflett</assigned_to>
          <cc>dgrogan</cc>
    
    <cc>jsbell</cc>
    
    <cc>tony</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>701356</commentid>
    <comment_count>0</comment_count>
    <who name="Alec Flett">alecflett</who>
    <bug_when>2012-08-21 17:21:57 -0700</bug_when>
    <thetext>IndexedDB: tests for injection/extraction of idb keys</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>701357</commentid>
    <comment_count>1</comment_count>
      <attachid>159813</attachid>
    <who name="Alec Flett">alecflett</who>
    <bug_when>2012-08-21 17:23:21 -0700</bug_when>
    <thetext>Created attachment 159813
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>701358</commentid>
    <comment_count>2</comment_count>
    <who name="Alec Flett">alecflett</who>
    <bug_when>2012-08-21 17:23:48 -0700</bug_when>
    <thetext>jsbell/dgrogan- these are ported over from chromium, so we can kill the chromium tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>702132</commentid>
    <comment_count>3</comment_count>
      <attachid>159813</attachid>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2012-08-22 11:53:54 -0700</bug_when>
    <thetext>Comment on attachment 159813
Patch

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

lgtm

&gt; Source/WebKit/chromium/ChangeLog:8
&gt; +        Added unit tests for key injection/extraction using 

Might want to mention that this is moving a Chromium test here now that the functionality is constrained to WebKit. Otherwise, the test is a little weird since half of it is still just testing the SSV serialization format.

&gt; Source/WebKit/chromium/tests/IDBKeyPathTest.cpp:130
&gt; +#define arraysize(x) (sizeof((x)) / sizeof((x[0])))

Use WTF_ARRAY_LENGTH macro instead?

&gt; Source/WebKit/chromium/tests/IDBKeyPathTest.cpp:171
&gt; +    ssv = SerializedScriptValue::createFromWire(String(data));

This isn&apos;t passing the length into String() - what&apos;s different here?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>702265</commentid>
    <comment_count>4</comment_count>
      <attachid>159813</attachid>
    <who name="Alec Flett">alecflett</who>
    <bug_when>2012-08-22 13:25:31 -0700</bug_when>
    <thetext>Comment on attachment 159813
Patch

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

&gt;&gt; Source/WebKit/chromium/tests/IDBKeyPathTest.cpp:130
&gt;&gt; +#define arraysize(x) (sizeof((x)) / sizeof((x[0])))
&gt; 
&gt; Use WTF_ARRAY_LENGTH macro instead?

ah! Knew there must have been something equivalent.

&gt;&gt; Source/WebKit/chromium/tests/IDBKeyPathTest.cpp:171
&gt;&gt; +    ssv = SerializedScriptValue::createFromWire(String(data));
&gt; 
&gt; This isn&apos;t passing the length into String() - what&apos;s different here?

a bug..fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>702267</commentid>
    <comment_count>5</comment_count>
      <attachid>159999</attachid>
    <who name="Alec Flett">alecflett</who>
    <bug_when>2012-08-22 13:25:39 -0700</bug_when>
    <thetext>Created attachment 159999
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>702270</commentid>
    <comment_count>6</comment_count>
    <who name="Alec Flett">alecflett</who>
    <bug_when>2012-08-22 13:26:25 -0700</bug_when>
    <thetext>tony@ - this is actually migration of code (chromium-&gt;webkit) for the chromium review I just asked about..</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>702447</commentid>
    <comment_count>7</comment_count>
      <attachid>159999</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2012-08-22 15:38:20 -0700</bug_when>
    <thetext>Comment on attachment 159999
Patch

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

&gt; Source/WebKit/chromium/tests/IDBKeyPathTest.cpp:190
&gt; +    const UChar expectedData[] = {0x01ff, 0x003f, 0x3f6f, 0x5301, 0x6603,
&gt; +                                   0x6f6f, 0x013f, 0x0353, 0x6f7a, 0x3f6f,

Nit: Indent is weird.

&gt; Source/WebKit/chromium/tests/IDBKeyPathTest.cpp:205
&gt; +    const UChar expectedData2[] = {0x01ff, 0x003f, 0x3f6f, 0x5301, 0x6603,
&gt; +                                    0x6f6f, 0x013f, 0x0353, 0x6f7a, 0x3f6f,

Nit: ditto</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>702524</commentid>
    <comment_count>8</comment_count>
      <attachid>160037</attachid>
    <who name="Alec Flett">alecflett</who>
    <bug_when>2012-08-22 16:55:51 -0700</bug_when>
    <thetext>Created attachment 160037
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>702615</commentid>
    <comment_count>9</comment_count>
      <attachid>160037</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-08-22 18:49:34 -0700</bug_when>
    <thetext>Comment on attachment 160037
Patch for landing

Clearing flags on attachment: 160037

Committed r126381: &lt;http://trac.webkit.org/changeset/126381&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>702616</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-08-22 18:49:37 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>159813</attachid>
            <date>2012-08-21 17:23:21 -0700</date>
            <delta_ts>2012-08-22 13:25:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-94653-20120821172320.patch</filename>
            <type>text/plain</type>
            <size>5689</size>
            <attacher name="Alec Flett">alecflett</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI2MDE5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4
IGQ2YmY2NTM0YTdjZTViM2FhZTkzYWRmYjRkYTg1YmFkMDFiMzQ3NzYuLjNhNGY2MzZkOTYxOGZh
Njg5YjJiZmIzMGE4NzE3MjIzNTE2MjEyN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTcgQEAKKzIwMTItMDgtMjEgIEFsZWMgRmxldHQgIDxhbGVjZmxldHRAY2hyb21p
dW0ub3JnPgorCisgICAgICAgIEluZGV4ZWREQjogdGVzdHMgZm9yIGluamVjdGlvbi9leHRyYWN0
aW9uIG9mIGlkYiBrZXlzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD05NDY1MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEFkZGVkIHVuaXQgdGVzdHMgZm9yIGtleSBpbmplY3Rpb24vZXh0cmFjdGlvbiB1c2lu
ZyAKKyAgICAgICAgU2VyaWFsaXplZFNjcmlwdFZhbHVlLgorCisgICAgICAgICogdGVzdHMvSURC
S2V5UGF0aFRlc3QuY3BwOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjpU
RVNUKToKKwogMjAxMi0wOC0yMCAgU2FtaSBLeW9zdGlsYSAgPHNreW9zdGlsQGNocm9taXVtLm9y
Zz4KIAogICAgICAgICBbY2hyb21pdW1dIENvbnZlcnQgc2NyZWVuIHNwYWNlIHNjcm9sbCBnZXN0
dXJlcyB0byBsYXllciBzcGFjZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS90
ZXN0cy9JREJLZXlQYXRoVGVzdC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL0lE
QktleVBhdGhUZXN0LmNwcAppbmRleCA3ZDY2MmMwMDljYzg2MmU1MDA2MThkZmZkZWZlOGEyNDY1
NDM0MWE4Li45N2UxY2E2NDFiOThkNmJhMzU1MGQ1ZDIyNmRlNjA0NDNmNTczMmNkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL0lEQktleVBhdGhUZXN0LmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL0lEQktleVBhdGhUZXN0LmNwcApAQCAtMjYs
NiArMjYsMTAgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJREJLZXlQYXRoLmgi
CiAKKyNpbmNsdWRlICJJREJCaW5kaW5nVXRpbGl0aWVzLmgiCisjaW5jbHVkZSAiSURCS2V5Lmgi
CisjaW5jbHVkZSAiU2VyaWFsaXplZFNjcmlwdFZhbHVlLmgiCisKICNpbmNsdWRlIDxndGVzdC9n
dGVzdC5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KIApAQCAtMTIzLDYgKzEyNyw5NCBAQCBU
RVNUKElEQktleVBhdGhUZXN0LCBJbnZhbGlkS2V5UGF0aDUpCiAgICAgY2hlY2tLZXlQYXRoKGtl
eVBhdGgsIGV4cGVjdGVkLCAzKTsKIH0KIAorI2RlZmluZSBhcnJheXNpemUoeCkgKHNpemVvZigo
eCkpIC8gc2l6ZW9mKCh4WzBdKSkpCisKK1RFU1QoSURCS2V5UGF0aFRlc3QsIEV4dHJhY3QpCit7
CisgICAgSURCS2V5UGF0aCBrZXlQYXRoKCJmb28iKTsKKyAgICBSZWZQdHI8SURCS2V5PiBzdHJp
bmdab29LZXkoSURCS2V5OjpjcmVhdGVTdHJpbmcoInpvbyIpKTsKKyAgICBSZWZQdHI8SURCS2V5
PiBpbnZhbGlkS2V5KElEQktleTo6Y3JlYXRlSW52YWxpZCgpKTsKKyAgICBSZWZQdHI8U2VyaWFs
aXplZFNjcmlwdFZhbHVlPiBzc3Y7CisgICAgUmVmUHRyPElEQktleT4gcmVzdWx0OworCisgICAg
Ly8ga2V5cGF0aDogImZvbyIsIHZhbHVlOiB7Zm9vOiAiem9vIn0sIGV4cGVjdGVkOiAiem9vIgor
ICAgIFVDaGFyIGRhdGFGb29ab29bXSA9IHsweDAzNTMsIDB4NmY2NiwgMHg1MzZmLCAweDdhMDMs
IDB4NmY2ZiwgMHgwMTdifTsKKyAgICBzc3YgPSBTZXJpYWxpemVkU2NyaXB0VmFsdWU6OmNyZWF0
ZUZyb21XaXJlKFN0cmluZyhkYXRhRm9vWm9vLCBhcnJheXNpemUoZGF0YUZvb1pvbykpKTsKKyAg
ICByZXN1bHQgPSBjcmVhdGVJREJLZXlGcm9tU2VyaWFsaXplZFZhbHVlQW5kS2V5UGF0aChzc3Ys
IGtleVBhdGgpOworICAgIEVYUEVDVF9UUlVFKHN0cmluZ1pvb0tleS0+aXNFcXVhbChyZXN1bHQu
Z2V0KCkpKTsKKworICAgIC8vIGtleXBhdGg6ICJmb28iLCB2YWx1ZToge2ZvbzogbnVsbH0sIGV4
cGVjdGVkOiBpbnZhbGlkCisgICAgVUNoYXIgZGF0YUZvb051bGxbXSA9IHsweDAzNTMsIDB4NmY2
NiwgMHgzMDZmLCAweDAxN2J9OworICAgIHNzdiA9IFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZTo6Y3Jl
YXRlRnJvbVdpcmUoU3RyaW5nKGRhdGFGb29OdWxsLCBhcnJheXNpemUoZGF0YUZvb051bGwpKSk7
CisgICAgcmVzdWx0ID0gY3JlYXRlSURCS2V5RnJvbVNlcmlhbGl6ZWRWYWx1ZUFuZEtleVBhdGgo
c3N2LCBrZXlQYXRoKTsKKyAgICBFWFBFQ1RfRkFMU0UocmVzdWx0LT5pc1ZhbGlkKCkpOworCisg
ICAgLy8ga2V5cGF0aDogImZvbyIsIHZhbHVlOiB7fSwgZXhwZWN0ZWQ6IG51bGwKKyAgICBVQ2hh
ciBkYXRhT2JqZWN0W10gPSB7MHgwMTdifTsKKyAgICBzc3YgPSBTZXJpYWxpemVkU2NyaXB0VmFs
dWU6OmNyZWF0ZUZyb21XaXJlKFN0cmluZyhkYXRhT2JqZWN0LCBhcnJheXNpemUoZGF0YU9iamVj
dCkpKTsKKyAgICByZXN1bHQgPSBjcmVhdGVJREJLZXlGcm9tU2VyaWFsaXplZFZhbHVlQW5kS2V5
UGF0aChzc3YsIGtleVBhdGgpOworICAgIEVYUEVDVF9FUSgwLCByZXN1bHQuZ2V0KCkpOworCisg
ICAgLy8ga2V5cGF0aDogImZvbyIsIHZhbHVlOiBudWxsLCBleHBlY3RlZDogbnVsbAorICAgIHNz
diA9IFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZTo6bnVsbFZhbHVlKCk7CisgICAgcmVzdWx0ID0gY3Jl
YXRlSURCS2V5RnJvbVNlcmlhbGl6ZWRWYWx1ZUFuZEtleVBhdGgoc3N2LCBrZXlQYXRoKTsKKyAg
ICBFWFBFQ1RfRVEoMCwgcmVzdWx0LmdldCgpKTsKK30KKworVEVTVChJREJLZXlQYXRoVGVzdCwg
SURCS2V5UGF0aFByb3BlcnR5Tm90QXZhaWxhYmxlKQoreworICAgIElEQktleVBhdGgga2V5UGF0
aCgiUHJvcGVydHlOb3RBdmFpbGFibGUiKTsKKyAgICBSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZh
bHVlPiBzc3Y7CisgICAgLy8ge2ZvbzogInpvbyIsIGJhcjogbnVsbH0KKyAgICBVQ2hhciBkYXRh
W10gPSB7MHgwMzUzLCAweDZmNjYsIDB4NTM2ZiwgMHg3YTAzLCAweDZmNmYsIDB4MDM1MywgMHg2
MTYyLAorICAgICAgICAgICAgICAgICAgICAweDMwNzIsIDB4MDI3Yn07CisgICAgc3N2ID0gU2Vy
aWFsaXplZFNjcmlwdFZhbHVlOjpjcmVhdGVGcm9tV2lyZShTdHJpbmcoZGF0YSkpOworICAgIFJl
ZlB0cjxJREJLZXk+IHJlc3VsdCA9IGNyZWF0ZUlEQktleUZyb21TZXJpYWxpemVkVmFsdWVBbmRL
ZXlQYXRoKHNzdiwga2V5UGF0aCk7CisgICAgRVhQRUNUX0VRKDAsIHJlc3VsdC5nZXQoKSk7CisK
KyAgICAvLyBudWxsCisgICAgc3N2ID0gU2VyaWFsaXplZFNjcmlwdFZhbHVlOjpudWxsVmFsdWUo
KTsKKyAgICByZXN1bHQgPSBjcmVhdGVJREJLZXlGcm9tU2VyaWFsaXplZFZhbHVlQW5kS2V5UGF0
aChzc3YsIGtleVBhdGgpOworICAgIEVYUEVDVF9FUSgwLCByZXN1bHQuZ2V0KCkpOworfQorCitU
RVNUKElEQktleVBhdGhUZXN0LCBJbmplY3RJREJLZXkpCit7CisgICAgLy8ge2ZvbzogJ3pvbyd9
CisgICAgY29uc3QgVUNoYXIgaW5pdGlhbERhdGFbXSA9IHsweDAzNTMsIDB4NmY2NiwgMHg1MzZm
LCAweDdhMDMsIDB4NmY2ZiwgMHgwMTdifTsKKyAgICBSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZh
bHVlPiB2YWx1ZSA9IFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZTo6Y3JlYXRlRnJvbVdpcmUoU3RyaW5n
KGluaXRpYWxEYXRhLCBhcnJheXNpemUoaW5pdGlhbERhdGEpKSk7CisKKyAgICBSZWZQdHI8SURC
S2V5PiBrZXkgPSBJREJLZXk6OmNyZWF0ZVN0cmluZygibXlOZXdLZXkiKTsKKyAgICBJREJLZXlQ
YXRoIGtleVBhdGgoImJhciIpOworCisgICAgLy8ge2ZvbzogJ3pvbycsIGJhcjogJ215TmV3S2V5
J30KKyAgICBjb25zdCBVQ2hhciBleHBlY3RlZERhdGFbXSA9IHsweDAxZmYsIDB4MDAzZiwgMHgz
ZjZmLCAweDUzMDEsIDB4NjYwMywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
MHg2ZjZmLCAweDAxM2YsIDB4MDM1MywgMHg2ZjdhLCAweDNmNmYsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDB4NTMwMSwgMHg2MjAzLCAweDcyNjEsIDB4MDEzZiwgMHgwODUz
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDc5NmQsIDB4NjU0ZSwgMHg0
Yjc3LCAweDc5NjUsIDB4MDI3Yn07CisgICAgUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4g
ZXhwZWN0ZWRWYWx1ZSA9IAorICAgICAgICAgICAgU2VyaWFsaXplZFNjcmlwdFZhbHVlOjpjcmVh
dGVGcm9tV2lyZShTdHJpbmcoZXhwZWN0ZWREYXRhLCBhcnJheXNpemUoZXhwZWN0ZWREYXRhKSkp
OworICAgIFJlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IHJlc3VsdCA9IGluamVjdElEQktl
eUludG9TZXJpYWxpemVkVmFsdWUoa2V5LCB2YWx1ZSwga2V5UGF0aCk7CisgICAgRVhQRUNUX0VR
KGV4cGVjdGVkVmFsdWUtPnRvV2lyZVN0cmluZygpLCByZXN1bHQtPnRvV2lyZVN0cmluZygpKTsK
KworICAgIC8vIFNob3VsZCBmYWlsIC0gY2FuJ3QgYXBwbHkgcHJvcGVydGllcyB0byBzdHJpbmcg
dmFsdWUgb2Yga2V5IGZvbworICAgIGtleVBhdGggPSBJREJLZXlQYXRoKCJmb28uYmFkLnBhdGgi
KTsKKyAgICByZXN1bHQgPSBpbmplY3RJREJLZXlJbnRvU2VyaWFsaXplZFZhbHVlKGtleSwgdmFs
dWUsIGtleVBhdGgpOworICAgIEVYUEVDVF9FUSgwLCByZXN1bHQuZ2V0KCkpOworCisgICAgLy8g
e2ZvbzogJ3pvbycsIGJhcjoge2JhejogJ215TmV3S2V5J319CisgICAgY29uc3QgVUNoYXIgZXhw
ZWN0ZWREYXRhMltdID0gezB4MDFmZiwgMHgwMDNmLCAweDNmNmYsIDB4NTMwMSwgMHg2NjAzLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHg2ZjZmLCAweDAxM2YsIDB4MDM1
MywgMHg2ZjdhLCAweDNmNmYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAw
eDUzMDEsIDB4NjIwMywgMHg3MjYxLCAweDAxM2YsIDB4M2Y2ZiwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDB4NTMwMiwgMHg2MjAzLCAweDdhNjEsIDB4MDIzZiwgMHgwODUz
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHg3OTZkLCAweDY1NGUsIDB4
NGI3NywgMHg3OTY1LCAweDAxN2IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAweDAyN2J9OworICAgIFJlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IGV4cGVjdGVkVmFs
dWUyID0gU2VyaWFsaXplZFNjcmlwdFZhbHVlOjpjcmVhdGVGcm9tV2lyZShTdHJpbmcoZXhwZWN0
ZWREYXRhMiwgYXJyYXlzaXplKGV4cGVjdGVkRGF0YTIpKSk7CisgICAga2V5UGF0aCA9IElEQktl
eVBhdGgoImJhci5iYXoiKTsKKyAgICByZXN1bHQgPSBpbmplY3RJREJLZXlJbnRvU2VyaWFsaXpl
ZFZhbHVlKGtleSwgdmFsdWUsIGtleVBhdGgpOworICAgIEVYUEVDVF9FUShleHBlY3RlZFZhbHVl
Mi0+dG9XaXJlU3RyaW5nKCksIHJlc3VsdC0+dG9XaXJlU3RyaW5nKCkpOworfQorCiB9IC8vIG5h
bWVzcGFjZQogCiAjZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>159999</attachid>
            <date>2012-08-22 13:25:39 -0700</date>
            <delta_ts>2012-08-22 16:55:49 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-94653-20120822132537.patch</filename>
            <type>text/plain</type>
            <size>5756</size>
            <attacher name="Alec Flett">alecflett</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI2MjgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4
IDc4MDRlY2Q5N2YxNDliZjA4MzQ5MDMyMzBlNzdiMDAxNzI5NDEyMmYuLmQzYTcxYTI0NTU2NTkw
MzM5YmYyMDY1ZWRjZDg5OGQ4YmVmZWUwMGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTggQEAKKzIwMTItMDgtMjEgIEFsZWMgRmxldHQgIDxhbGVjZmxldHRAY2hyb21p
dW0ub3JnPgorCisgICAgICAgIEluZGV4ZWREQjogdGVzdHMgZm9yIGluamVjdGlvbi9leHRyYWN0
aW9uIG9mIGlkYiBrZXlzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD05NDY1MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEFkZGVkIHVuaXQgdGVzdHMgZm9yIGtleSBpbmplY3Rpb24vZXh0cmFjdGlvbiB1c2lu
ZworICAgICAgICBTZXJpYWxpemVkU2NyaXB0VmFsdWUuIFRoZXNlIHdlcmUgbW92ZWQgZnJvbSBj
aHJvbWl1bSwgbm93CisgICAgICAgIHRoYXQgYWxsIHVzZXMgb2YgdGhlIEFQSSBhcmUgdGhyb3Vn
aCBXZWJLaXQuCisKKyAgICAgICAgKiB0ZXN0cy9JREJLZXlQYXRoVGVzdC5jcHA6CisgICAgICAg
IChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OlRFU1QpOgorCiAyMDEyLTA4LTIyICBTaGVy
aWZmIEJvdCAgPHdlYmtpdC5yZXZpZXcuYm90QGdtYWlsLmNvbT4KIAogICAgICAgICBVbnJldmll
d2VkLiAgUm9sbGVkIERFUFMuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rl
c3RzL0lEQktleVBhdGhUZXN0LmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvSURC
S2V5UGF0aFRlc3QuY3BwCmluZGV4IDdkNjYyYzAwOWNjODYyZTUwMDYxOGRmZmRlZmU4YTI0NjU0
MzQxYTguLjAwNzc1MzUyNzIzMmZjMThjMzdlZTlkMGVjOWVhNjA5NGI3Y2Q5MzYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvSURCS2V5UGF0aFRlc3QuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvSURCS2V5UGF0aFRlc3QuY3BwCkBAIC0yNiw2
ICsyNiwxMCBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIklEQktleVBhdGguaCIK
IAorI2luY2x1ZGUgIklEQkJpbmRpbmdVdGlsaXRpZXMuaCIKKyNpbmNsdWRlICJJREJLZXkuaCIK
KyNpbmNsdWRlICJTZXJpYWxpemVkU2NyaXB0VmFsdWUuaCIKKwogI2luY2x1ZGUgPGd0ZXN0L2d0
ZXN0Lmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgogCkBAIC0xMjMsNiArMTI3LDkyIEBAIFRF
U1QoSURCS2V5UGF0aFRlc3QsIEludmFsaWRLZXlQYXRoNSkKICAgICBjaGVja0tleVBhdGgoa2V5
UGF0aCwgZXhwZWN0ZWQsIDMpOwogfQogCitURVNUKElEQktleVBhdGhUZXN0LCBFeHRyYWN0KQor
eworICAgIElEQktleVBhdGgga2V5UGF0aCgiZm9vIik7CisgICAgUmVmUHRyPElEQktleT4gc3Ry
aW5nWm9vS2V5KElEQktleTo6Y3JlYXRlU3RyaW5nKCJ6b28iKSk7CisgICAgUmVmUHRyPElEQktl
eT4gaW52YWxpZEtleShJREJLZXk6OmNyZWF0ZUludmFsaWQoKSk7CisgICAgUmVmUHRyPFNlcmlh
bGl6ZWRTY3JpcHRWYWx1ZT4gc3N2OworICAgIFJlZlB0cjxJREJLZXk+IHJlc3VsdDsKKworICAg
IC8vIGtleXBhdGg6ICJmb28iLCB2YWx1ZToge2ZvbzogInpvbyJ9LCBleHBlY3RlZDogInpvbyIK
KyAgICBVQ2hhciBkYXRhRm9vWm9vW10gPSB7MHgwMzUzLCAweDZmNjYsIDB4NTM2ZiwgMHg3YTAz
LCAweDZmNmYsIDB4MDE3Yn07CisgICAgc3N2ID0gU2VyaWFsaXplZFNjcmlwdFZhbHVlOjpjcmVh
dGVGcm9tV2lyZShTdHJpbmcoZGF0YUZvb1pvbywgV1RGX0FSUkFZX0xFTkdUSChkYXRhRm9vWm9v
KSkpOworICAgIHJlc3VsdCA9IGNyZWF0ZUlEQktleUZyb21TZXJpYWxpemVkVmFsdWVBbmRLZXlQ
YXRoKHNzdiwga2V5UGF0aCk7CisgICAgRVhQRUNUX1RSVUUoc3RyaW5nWm9vS2V5LT5pc0VxdWFs
KHJlc3VsdC5nZXQoKSkpOworCisgICAgLy8ga2V5cGF0aDogImZvbyIsIHZhbHVlOiB7Zm9vOiBu
dWxsfSwgZXhwZWN0ZWQ6IGludmFsaWQKKyAgICBVQ2hhciBkYXRhRm9vTnVsbFtdID0gezB4MDM1
MywgMHg2ZjY2LCAweDMwNmYsIDB4MDE3Yn07CisgICAgc3N2ID0gU2VyaWFsaXplZFNjcmlwdFZh
bHVlOjpjcmVhdGVGcm9tV2lyZShTdHJpbmcoZGF0YUZvb051bGwsIFdURl9BUlJBWV9MRU5HVEgo
ZGF0YUZvb051bGwpKSk7CisgICAgcmVzdWx0ID0gY3JlYXRlSURCS2V5RnJvbVNlcmlhbGl6ZWRW
YWx1ZUFuZEtleVBhdGgoc3N2LCBrZXlQYXRoKTsKKyAgICBFWFBFQ1RfRkFMU0UocmVzdWx0LT5p
c1ZhbGlkKCkpOworCisgICAgLy8ga2V5cGF0aDogImZvbyIsIHZhbHVlOiB7fSwgZXhwZWN0ZWQ6
IG51bGwKKyAgICBVQ2hhciBkYXRhT2JqZWN0W10gPSB7MHgwMTdifTsKKyAgICBzc3YgPSBTZXJp
YWxpemVkU2NyaXB0VmFsdWU6OmNyZWF0ZUZyb21XaXJlKFN0cmluZyhkYXRhT2JqZWN0LCBXVEZf
QVJSQVlfTEVOR1RIKGRhdGFPYmplY3QpKSk7CisgICAgcmVzdWx0ID0gY3JlYXRlSURCS2V5RnJv
bVNlcmlhbGl6ZWRWYWx1ZUFuZEtleVBhdGgoc3N2LCBrZXlQYXRoKTsKKyAgICBFWFBFQ1RfRVEo
MCwgcmVzdWx0LmdldCgpKTsKKworICAgIC8vIGtleXBhdGg6ICJmb28iLCB2YWx1ZTogbnVsbCwg
ZXhwZWN0ZWQ6IG51bGwKKyAgICBzc3YgPSBTZXJpYWxpemVkU2NyaXB0VmFsdWU6Om51bGxWYWx1
ZSgpOworICAgIHJlc3VsdCA9IGNyZWF0ZUlEQktleUZyb21TZXJpYWxpemVkVmFsdWVBbmRLZXlQ
YXRoKHNzdiwga2V5UGF0aCk7CisgICAgRVhQRUNUX0VRKDAsIHJlc3VsdC5nZXQoKSk7Cit9CisK
K1RFU1QoSURCS2V5UGF0aFRlc3QsIElEQktleVBhdGhQcm9wZXJ0eU5vdEF2YWlsYWJsZSkKK3sK
KyAgICBJREJLZXlQYXRoIGtleVBhdGgoIlByb3BlcnR5Tm90QXZhaWxhYmxlIik7CisgICAgUmVm
UHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gc3N2OworICAgIC8vIHtmb286ICJ6b28iLCBiYXI6
IG51bGx9CisgICAgVUNoYXIgZGF0YVtdID0gezB4MDM1MywgMHg2ZjY2LCAweDUzNmYsIDB4N2Ew
MywgMHg2ZjZmLCAweDAzNTMsIDB4NjE2MiwKKyAgICAgICAgICAgICAgICAgICAgMHgzMDcyLCAw
eDAyN2J9OworICAgIHNzdiA9IFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZTo6Y3JlYXRlRnJvbVdpcmUo
U3RyaW5nKGRhdGEsIFdURl9BUlJBWV9MRU5HVEgoZGF0YSkpKTsKKyAgICBSZWZQdHI8SURCS2V5
PiByZXN1bHQgPSBjcmVhdGVJREJLZXlGcm9tU2VyaWFsaXplZFZhbHVlQW5kS2V5UGF0aChzc3Ys
IGtleVBhdGgpOworICAgIEVYUEVDVF9FUSgwLCByZXN1bHQuZ2V0KCkpOworCisgICAgLy8gbnVs
bAorICAgIHNzdiA9IFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZTo6bnVsbFZhbHVlKCk7CisgICAgcmVz
dWx0ID0gY3JlYXRlSURCS2V5RnJvbVNlcmlhbGl6ZWRWYWx1ZUFuZEtleVBhdGgoc3N2LCBrZXlQ
YXRoKTsKKyAgICBFWFBFQ1RfRVEoMCwgcmVzdWx0LmdldCgpKTsKK30KKworVEVTVChJREJLZXlQ
YXRoVGVzdCwgSW5qZWN0SURCS2V5KQoreworICAgIC8vIHtmb286ICd6b28nfQorICAgIGNvbnN0
IFVDaGFyIGluaXRpYWxEYXRhW10gPSB7MHgwMzUzLCAweDZmNjYsIDB4NTM2ZiwgMHg3YTAzLCAw
eDZmNmYsIDB4MDE3Yn07CisgICAgUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gdmFsdWUg
PSBTZXJpYWxpemVkU2NyaXB0VmFsdWU6OmNyZWF0ZUZyb21XaXJlKFN0cmluZyhpbml0aWFsRGF0
YSwgV1RGX0FSUkFZX0xFTkdUSChpbml0aWFsRGF0YSkpKTsKKworICAgIFJlZlB0cjxJREJLZXk+
IGtleSA9IElEQktleTo6Y3JlYXRlU3RyaW5nKCJteU5ld0tleSIpOworICAgIElEQktleVBhdGgg
a2V5UGF0aCgiYmFyIik7CisKKyAgICAvLyB7Zm9vOiAnem9vJywgYmFyOiAnbXlOZXdLZXknfQor
ICAgIGNvbnN0IFVDaGFyIGV4cGVjdGVkRGF0YVtdID0gezB4MDFmZiwgMHgwMDNmLCAweDNmNmYs
IDB4NTMwMSwgMHg2NjAzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDZm
NmYsIDB4MDEzZiwgMHgwMzUzLCAweDZmN2EsIDB4M2Y2ZiwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgMHg1MzAxLCAweDYyMDMsIDB4NzI2MSwgMHgwMTNmLCAweDA4NTMsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4Nzk2ZCwgMHg2NTRlLCAweDRiNzcs
IDB4Nzk2NSwgMHgwMjdifTsKKyAgICBSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiBleHBl
Y3RlZFZhbHVlID0gCisgICAgICAgICAgICBTZXJpYWxpemVkU2NyaXB0VmFsdWU6OmNyZWF0ZUZy
b21XaXJlKFN0cmluZyhleHBlY3RlZERhdGEsIFdURl9BUlJBWV9MRU5HVEgoZXhwZWN0ZWREYXRh
KSkpOworICAgIFJlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IHJlc3VsdCA9IGluamVjdElE
QktleUludG9TZXJpYWxpemVkVmFsdWUoa2V5LCB2YWx1ZSwga2V5UGF0aCk7CisgICAgRVhQRUNU
X0VRKGV4cGVjdGVkVmFsdWUtPnRvV2lyZVN0cmluZygpLCByZXN1bHQtPnRvV2lyZVN0cmluZygp
KTsKKworICAgIC8vIFNob3VsZCBmYWlsIC0gY2FuJ3QgYXBwbHkgcHJvcGVydGllcyB0byBzdHJp
bmcgdmFsdWUgb2Yga2V5IGZvbworICAgIGtleVBhdGggPSBJREJLZXlQYXRoKCJmb28uYmFkLnBh
dGgiKTsKKyAgICByZXN1bHQgPSBpbmplY3RJREJLZXlJbnRvU2VyaWFsaXplZFZhbHVlKGtleSwg
dmFsdWUsIGtleVBhdGgpOworICAgIEVYUEVDVF9FUSgwLCByZXN1bHQuZ2V0KCkpOworCisgICAg
Ly8ge2ZvbzogJ3pvbycsIGJhcjoge2JhejogJ215TmV3S2V5J319CisgICAgY29uc3QgVUNoYXIg
ZXhwZWN0ZWREYXRhMltdID0gezB4MDFmZiwgMHgwMDNmLCAweDNmNmYsIDB4NTMwMSwgMHg2NjAz
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHg2ZjZmLCAweDAxM2YsIDB4
MDM1MywgMHg2ZjdhLCAweDNmNmYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAweDUzMDEsIDB4NjIwMywgMHg3MjYxLCAweDAxM2YsIDB4M2Y2ZiwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDB4NTMwMiwgMHg2MjAzLCAweDdhNjEsIDB4MDIzZiwgMHgw
ODUzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHg3OTZkLCAweDY1NGUs
IDB4NGI3NywgMHg3OTY1LCAweDAxN2IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAweDAyN2J9OworICAgIFJlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IGV4cGVjdGVk
VmFsdWUyID0gU2VyaWFsaXplZFNjcmlwdFZhbHVlOjpjcmVhdGVGcm9tV2lyZShTdHJpbmcoZXhw
ZWN0ZWREYXRhMiwgV1RGX0FSUkFZX0xFTkdUSChleHBlY3RlZERhdGEyKSkpOworICAgIGtleVBh
dGggPSBJREJLZXlQYXRoKCJiYXIuYmF6Iik7CisgICAgcmVzdWx0ID0gaW5qZWN0SURCS2V5SW50
b1NlcmlhbGl6ZWRWYWx1ZShrZXksIHZhbHVlLCBrZXlQYXRoKTsKKyAgICBFWFBFQ1RfRVEoZXhw
ZWN0ZWRWYWx1ZTItPnRvV2lyZVN0cmluZygpLCByZXN1bHQtPnRvV2lyZVN0cmluZygpKTsKK30K
KwogfSAvLyBuYW1lc3BhY2UKIAogI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>160037</attachid>
            <date>2012-08-22 16:55:51 -0700</date>
            <delta_ts>2012-08-22 18:49:34 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-94653-20120822165549.patch</filename>
            <type>text/plain</type>
            <size>5744</size>
            <attacher name="Alec Flett">alecflett</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI2MjgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4
IDc4MDRlY2Q5N2YxNDliZjA4MzQ5MDMyMzBlNzdiMDAxNzI5NDEyMmYuLjAzYjVkY2E2NGI0MmNk
NTQyYjBlYTVmMWU1OWU4NjU0NGNiYTY2NGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTggQEAKKzIwMTItMDgtMjEgIEFsZWMgRmxldHQgIDxhbGVjZmxldHRAY2hyb21p
dW0ub3JnPgorCisgICAgICAgIEluZGV4ZWREQjogdGVzdHMgZm9yIGluamVjdGlvbi9leHRyYWN0
aW9uIG9mIGlkYiBrZXlzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD05NDY1MworCisgICAgICAgIFJldmlld2VkIGJ5IFRvbnkgQ2hhbmcuCisKKyAgICAg
ICAgQWRkZWQgdW5pdCB0ZXN0cyBmb3Iga2V5IGluamVjdGlvbi9leHRyYWN0aW9uIHVzaW5nCisg
ICAgICAgIFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZS4gVGhlc2Ugd2VyZSBtb3ZlZCBmcm9tIGNocm9t
aXVtLCBub3cKKyAgICAgICAgdGhhdCBhbGwgdXNlcyBvZiB0aGUgQVBJIGFyZSB0aHJvdWdoIFdl
YktpdC4KKworICAgICAgICAqIHRlc3RzL0lEQktleVBhdGhUZXN0LmNwcDoKKyAgICAgICAgKFdl
YkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6VEVTVCk6CisKIDIwMTItMDgtMjIgIFNoZXJpZmYg
Qm90ICA8d2Via2l0LnJldmlldy5ib3RAZ21haWwuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQu
ICBSb2xsZWQgREVQUy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMv
SURCS2V5UGF0aFRlc3QuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9JREJLZXlQ
YXRoVGVzdC5jcHAKaW5kZXggN2Q2NjJjMDA5Y2M4NjJlNTAwNjE4ZGZmZGVmZThhMjQ2NTQzNDFh
OC4uYzNkNDdkNzg4NzgzYTVlNDYxZTJhYTViODdjMTZhYTcxZDUwZWZiOSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9JREJLZXlQYXRoVGVzdC5jcHAKKysrIGIvU291
cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9JREJLZXlQYXRoVGVzdC5jcHAKQEAgLTI2LDYgKzI2
LDEwIEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSURCS2V5UGF0aC5oIgogCisj
aW5jbHVkZSAiSURCQmluZGluZ1V0aWxpdGllcy5oIgorI2luY2x1ZGUgIklEQktleS5oIgorI2lu
Y2x1ZGUgIlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZS5oIgorCiAjaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3Qu
aD4KICNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CiAKQEAgLTEyMyw2ICsxMjcsOTIgQEAgVEVTVChJ
REJLZXlQYXRoVGVzdCwgSW52YWxpZEtleVBhdGg1KQogICAgIGNoZWNrS2V5UGF0aChrZXlQYXRo
LCBleHBlY3RlZCwgMyk7CiB9CiAKK1RFU1QoSURCS2V5UGF0aFRlc3QsIEV4dHJhY3QpCit7Cisg
ICAgSURCS2V5UGF0aCBrZXlQYXRoKCJmb28iKTsKKyAgICBSZWZQdHI8SURCS2V5PiBzdHJpbmda
b29LZXkoSURCS2V5OjpjcmVhdGVTdHJpbmcoInpvbyIpKTsKKyAgICBSZWZQdHI8SURCS2V5PiBp
bnZhbGlkS2V5KElEQktleTo6Y3JlYXRlSW52YWxpZCgpKTsKKyAgICBSZWZQdHI8U2VyaWFsaXpl
ZFNjcmlwdFZhbHVlPiBzc3Y7CisgICAgUmVmUHRyPElEQktleT4gcmVzdWx0OworCisgICAgLy8g
a2V5cGF0aDogImZvbyIsIHZhbHVlOiB7Zm9vOiAiem9vIn0sIGV4cGVjdGVkOiAiem9vIgorICAg
IFVDaGFyIGRhdGFGb29ab29bXSA9IHsweDAzNTMsIDB4NmY2NiwgMHg1MzZmLCAweDdhMDMsIDB4
NmY2ZiwgMHgwMTdifTsKKyAgICBzc3YgPSBTZXJpYWxpemVkU2NyaXB0VmFsdWU6OmNyZWF0ZUZy
b21XaXJlKFN0cmluZyhkYXRhRm9vWm9vLCBXVEZfQVJSQVlfTEVOR1RIKGRhdGFGb29ab28pKSk7
CisgICAgcmVzdWx0ID0gY3JlYXRlSURCS2V5RnJvbVNlcmlhbGl6ZWRWYWx1ZUFuZEtleVBhdGgo
c3N2LCBrZXlQYXRoKTsKKyAgICBFWFBFQ1RfVFJVRShzdHJpbmdab29LZXktPmlzRXF1YWwocmVz
dWx0LmdldCgpKSk7CisKKyAgICAvLyBrZXlwYXRoOiAiZm9vIiwgdmFsdWU6IHtmb286IG51bGx9
LCBleHBlY3RlZDogaW52YWxpZAorICAgIFVDaGFyIGRhdGFGb29OdWxsW10gPSB7MHgwMzUzLCAw
eDZmNjYsIDB4MzA2ZiwgMHgwMTdifTsKKyAgICBzc3YgPSBTZXJpYWxpemVkU2NyaXB0VmFsdWU6
OmNyZWF0ZUZyb21XaXJlKFN0cmluZyhkYXRhRm9vTnVsbCwgV1RGX0FSUkFZX0xFTkdUSChkYXRh
Rm9vTnVsbCkpKTsKKyAgICByZXN1bHQgPSBjcmVhdGVJREJLZXlGcm9tU2VyaWFsaXplZFZhbHVl
QW5kS2V5UGF0aChzc3YsIGtleVBhdGgpOworICAgIEVYUEVDVF9GQUxTRShyZXN1bHQtPmlzVmFs
aWQoKSk7CisKKyAgICAvLyBrZXlwYXRoOiAiZm9vIiwgdmFsdWU6IHt9LCBleHBlY3RlZDogbnVs
bAorICAgIFVDaGFyIGRhdGFPYmplY3RbXSA9IHsweDAxN2J9OworICAgIHNzdiA9IFNlcmlhbGl6
ZWRTY3JpcHRWYWx1ZTo6Y3JlYXRlRnJvbVdpcmUoU3RyaW5nKGRhdGFPYmplY3QsIFdURl9BUlJB
WV9MRU5HVEgoZGF0YU9iamVjdCkpKTsKKyAgICByZXN1bHQgPSBjcmVhdGVJREJLZXlGcm9tU2Vy
aWFsaXplZFZhbHVlQW5kS2V5UGF0aChzc3YsIGtleVBhdGgpOworICAgIEVYUEVDVF9FUSgwLCBy
ZXN1bHQuZ2V0KCkpOworCisgICAgLy8ga2V5cGF0aDogImZvbyIsIHZhbHVlOiBudWxsLCBleHBl
Y3RlZDogbnVsbAorICAgIHNzdiA9IFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZTo6bnVsbFZhbHVlKCk7
CisgICAgcmVzdWx0ID0gY3JlYXRlSURCS2V5RnJvbVNlcmlhbGl6ZWRWYWx1ZUFuZEtleVBhdGgo
c3N2LCBrZXlQYXRoKTsKKyAgICBFWFBFQ1RfRVEoMCwgcmVzdWx0LmdldCgpKTsKK30KKworVEVT
VChJREJLZXlQYXRoVGVzdCwgSURCS2V5UGF0aFByb3BlcnR5Tm90QXZhaWxhYmxlKQoreworICAg
IElEQktleVBhdGgga2V5UGF0aCgiUHJvcGVydHlOb3RBdmFpbGFibGUiKTsKKyAgICBSZWZQdHI8
U2VyaWFsaXplZFNjcmlwdFZhbHVlPiBzc3Y7CisgICAgLy8ge2ZvbzogInpvbyIsIGJhcjogbnVs
bH0KKyAgICBVQ2hhciBkYXRhW10gPSB7MHgwMzUzLCAweDZmNjYsIDB4NTM2ZiwgMHg3YTAzLCAw
eDZmNmYsIDB4MDM1MywgMHg2MTYyLAorICAgICAgICAgICAgICAgICAgICAweDMwNzIsIDB4MDI3
Yn07CisgICAgc3N2ID0gU2VyaWFsaXplZFNjcmlwdFZhbHVlOjpjcmVhdGVGcm9tV2lyZShTdHJp
bmcoZGF0YSwgV1RGX0FSUkFZX0xFTkdUSChkYXRhKSkpOworICAgIFJlZlB0cjxJREJLZXk+IHJl
c3VsdCA9IGNyZWF0ZUlEQktleUZyb21TZXJpYWxpemVkVmFsdWVBbmRLZXlQYXRoKHNzdiwga2V5
UGF0aCk7CisgICAgRVhQRUNUX0VRKDAsIHJlc3VsdC5nZXQoKSk7CisKKyAgICAvLyBudWxsCisg
ICAgc3N2ID0gU2VyaWFsaXplZFNjcmlwdFZhbHVlOjpudWxsVmFsdWUoKTsKKyAgICByZXN1bHQg
PSBjcmVhdGVJREJLZXlGcm9tU2VyaWFsaXplZFZhbHVlQW5kS2V5UGF0aChzc3YsIGtleVBhdGgp
OworICAgIEVYUEVDVF9FUSgwLCByZXN1bHQuZ2V0KCkpOworfQorCitURVNUKElEQktleVBhdGhU
ZXN0LCBJbmplY3RJREJLZXkpCit7CisgICAgLy8ge2ZvbzogJ3pvbyd9CisgICAgY29uc3QgVUNo
YXIgaW5pdGlhbERhdGFbXSA9IHsweDAzNTMsIDB4NmY2NiwgMHg1MzZmLCAweDdhMDMsIDB4NmY2
ZiwgMHgwMTdifTsKKyAgICBSZWZQdHI8U2VyaWFsaXplZFNjcmlwdFZhbHVlPiB2YWx1ZSA9IFNl
cmlhbGl6ZWRTY3JpcHRWYWx1ZTo6Y3JlYXRlRnJvbVdpcmUoU3RyaW5nKGluaXRpYWxEYXRhLCBX
VEZfQVJSQVlfTEVOR1RIKGluaXRpYWxEYXRhKSkpOworCisgICAgUmVmUHRyPElEQktleT4ga2V5
ID0gSURCS2V5OjpjcmVhdGVTdHJpbmcoIm15TmV3S2V5Iik7CisgICAgSURCS2V5UGF0aCBrZXlQ
YXRoKCJiYXIiKTsKKworICAgIC8vIHtmb286ICd6b28nLCBiYXI6ICdteU5ld0tleSd9CisgICAg
Y29uc3QgVUNoYXIgZXhwZWN0ZWREYXRhW10gPSB7MHgwMWZmLCAweDAwM2YsIDB4M2Y2ZiwgMHg1
MzAxLCAweDY2MDMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHg2ZjZmLCAw
eDAxM2YsIDB4MDM1MywgMHg2ZjdhLCAweDNmNmYsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgMHg1MzAxLCAweDYyMDMsIDB4NzI2MSwgMHgwMTNmLCAweDA4NTMsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgMHg3OTZkLCAweDY1NGUsIDB4NGI3NywgMHg3OTY1
LCAweDAyN2J9OworICAgIFJlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IGV4cGVjdGVkVmFs
dWUgPSAKKyAgICAgICAgICAgIFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZTo6Y3JlYXRlRnJvbVdpcmUo
U3RyaW5nKGV4cGVjdGVkRGF0YSwgV1RGX0FSUkFZX0xFTkdUSChleHBlY3RlZERhdGEpKSk7Cisg
ICAgUmVmUHRyPFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4gcmVzdWx0ID0gaW5qZWN0SURCS2V5SW50
b1NlcmlhbGl6ZWRWYWx1ZShrZXksIHZhbHVlLCBrZXlQYXRoKTsKKyAgICBFWFBFQ1RfRVEoZXhw
ZWN0ZWRWYWx1ZS0+dG9XaXJlU3RyaW5nKCksIHJlc3VsdC0+dG9XaXJlU3RyaW5nKCkpOworCisg
ICAgLy8gU2hvdWxkIGZhaWwgLSBjYW4ndCBhcHBseSBwcm9wZXJ0aWVzIHRvIHN0cmluZyB2YWx1
ZSBvZiBrZXkgZm9vCisgICAga2V5UGF0aCA9IElEQktleVBhdGgoImZvby5iYWQucGF0aCIpOwor
ICAgIHJlc3VsdCA9IGluamVjdElEQktleUludG9TZXJpYWxpemVkVmFsdWUoa2V5LCB2YWx1ZSwg
a2V5UGF0aCk7CisgICAgRVhQRUNUX0VRKDAsIHJlc3VsdC5nZXQoKSk7CisKKyAgICAvLyB7Zm9v
OiAnem9vJywgYmFyOiB7YmF6OiAnbXlOZXdLZXknfX0KKyAgICBjb25zdCBVQ2hhciBleHBlY3Rl
ZERhdGEyW10gPSB7MHgwMWZmLCAweDAwM2YsIDB4M2Y2ZiwgMHg1MzAxLCAweDY2MDMsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4NmY2ZiwgMHgwMTNmLCAweDAzNTMsIDB4
NmY3YSwgMHgzZjZmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDUzMDEs
IDB4NjIwMywgMHg3MjYxLCAweDAxM2YsIDB4M2Y2ZiwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgMHg1MzAyLCAweDYyMDMsIDB4N2E2MSwgMHgwMjNmLCAweDA4NTMsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4Nzk2ZCwgMHg2NTRlLCAweDRiNzcsIDB4
Nzk2NSwgMHgwMTdiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAyN2J9
OworICAgIFJlZlB0cjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+IGV4cGVjdGVkVmFsdWUyID0gU2Vy
aWFsaXplZFNjcmlwdFZhbHVlOjpjcmVhdGVGcm9tV2lyZShTdHJpbmcoZXhwZWN0ZWREYXRhMiwg
V1RGX0FSUkFZX0xFTkdUSChleHBlY3RlZERhdGEyKSkpOworICAgIGtleVBhdGggPSBJREJLZXlQ
YXRoKCJiYXIuYmF6Iik7CisgICAgcmVzdWx0ID0gaW5qZWN0SURCS2V5SW50b1NlcmlhbGl6ZWRW
YWx1ZShrZXksIHZhbHVlLCBrZXlQYXRoKTsKKyAgICBFWFBFQ1RfRVEoZXhwZWN0ZWRWYWx1ZTIt
PnRvV2lyZVN0cmluZygpLCByZXN1bHQtPnRvV2lyZVN0cmluZygpKTsKK30KKwogfSAvLyBuYW1l
c3BhY2UKIAogI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>