<?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>128208</bug_id>
          
          <creation_ts>2014-02-04 13:37:19 -0800</creation_ts>
          <short_desc>IDB: indexeddb/mozilla/add-twice-failure.html fails</short_desc>
          <delta_ts>2014-02-04 16:22:26 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <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>
          
          <blocked>124521</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Brady Eidson">beidson</reporter>
          <assigned_to name="Brady Eidson">beidson</assigned_to>
          <cc>alecflett</cc>
    
    <cc>commit-queue</cc>
    
    <cc>jsbell</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>976492</commentid>
    <comment_count>0</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2014-02-04 13:37:19 -0800</bug_when>
    <thetext>IDB: indexeddb/mozilla/add-twice-failure.html fails

This is because:
-Adding a record with an already stored key succeeds, when it should fail.
-That failure error should propagate back to the request with the appropriate error code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>976493</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2014-02-04 13:37:38 -0800</bug_when>
    <thetext>&lt;rdar://problem/15982569&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>976521</commentid>
    <comment_count>2</comment_count>
      <attachid>223165</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2014-02-04 15:13:39 -0800</bug_when>
    <thetext>Created attachment 223165
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>976573</commentid>
    <comment_count>3</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2014-02-04 16:22:26 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/163417</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>223165</attachid>
            <date>2014-02-04 15:13:39 -0800</date>
            <delta_ts>2014-02-04 15:46:08 -0800</delta_ts>
            <desc>Patch v1</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>19403</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBjZDZhMWM1Li42MDEwNGZmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIwMTQtMDIt
MDQgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgorCisgICAgICAgIElEQjogaW5k
ZXhlZGRiL21vemlsbGEvYWRkLXR3aWNlLWZhaWx1cmUuaHRtbCBmYWlscworICAgICAgICA8cmRh
cjovL3Byb2JsZW0vMTU5ODI1Njk+IGFuZCBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTI4MjA4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiBwbGF0Zm9ybS9tYWMtd2syL1Rlc3RFeHBlY3RhdGlvbnM6IFJlZW5hYmxlIHRo
aXMgdGVzdCBmb3IgV0syCisKIDIwMTQtMDItMDMgIE1hcmsgTGFtICA8bWFyay5sYW1AYXBwbGUu
Y29tPgogCiAgICAgICAgIE5lZWQgcmVncmVzc2lvbiB0ZXN0IGZvciB0aGUgZGVidWdnZXIgbW9k
aWZ5aW5nIGxvY2FscyBpbiBhIERGRyBmcmFtZS4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy13azIvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy13azIvVGVzdEV4cGVjdGF0aW9ucwppbmRleCBlNmMzYjY4Li45Yzc5NDhkIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2syL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9UZXN0RXhwZWN0YXRpb25zCkBAIC00NjQsNiArNDY0
LDEwIEBAIGZhc3QvZm9ybXMvY29sb3IvaW5wdXQtY29sb3Itb25jaGFuZ2UtZXZlbnQuaHRtbCBb
IFBhc3MgXQogIyBUaGlzIHRlc3QgdGltZXMgb3V0IGluIFdlYktpdDEgb25seS4KIGZ1bGxzY3Jl
ZW4vYW5vbnltb3VzLWJsb2NrLW1lcmdlLWNyYXNoLmh0bWwgWyBQYXNzIF0KIAorIyBBbGwgSW5k
ZXhlZERCIHRlc3RzIGFyZSBza2lwcGVkIGluIFdLMS4KKyMgUmVlbmFibGUgaW5kaXZpZHVhbCB0
ZXN0cyBoZXJlIHRoYXQgYXJlIGtub3duIHRvIHBhc3MsIHdpdGggdGhlIGV2ZW50dWFsIGdvYWwg
b2YgcmUtZW5hYmxpbmcgdGhlIGVudGlyZSBkaXJlY3RvcnkuCitzdG9yYWdlL2luZGV4ZWRkYi9t
b3ppbGxhL2FkZC10d2ljZS1mYWlsdXJlLmh0bWwgWyBQYXNzIF0KKwogIyMjIEVORCBPRiAoNSkg
RmVhdHVyZXMgdGhhdCBhcmUgbm90IHN1cHBvcnRlZCBpbiBXZWJLaXQxLCBzbyBza2lwcGVkIGlu
IG1hYy9UZXN0RXhwZWN0YXRpb25zIHRoZW4gcmUtZW5hYmxlZCBoZXJlCiAjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA1M2YzMzQ5Li40ZTcw
NTIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
YkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTQtMDItMDQgIEJyYWR5IEVpZHNv
biAgPGJlaWRzb25AYXBwbGUuY29tPgorCisgICAgICAgIElEQjogaW5kZXhlZGRiL21vemlsbGEv
YWRkLXR3aWNlLWZhaWx1cmUuaHRtbCBmYWlscworICAgICAgICA8cmRhcjovL3Byb2JsZW0vMTU5
ODI1Njk+IGFuZCBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI4MjA4
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ292ZXJl
ZCBzcGVjaWZpY2FsbHkgYnkgaW5kZXhlZGRiL21vemlsbGEvYWRkLXR3aWNlLWZhaWx1cmUuaHRt
bCBhbmQgYSBoYW5kZnVsIG9mIG90aGVycy4KKworICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRi
L0lEQlJlcXVlc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SURCUmVxdWVzdDo6b25FcnJvcik6
IEltcHJvdmUgbG9nZ2luZy4KKworICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5z
YWN0aW9uQmFja2VuZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJREJUcmFuc2FjdGlvbkJhY2tl
bmQ6OmFib3J0KTogSW1wcm92ZSBsb2dnaW5nLgorCisgICAgICAgICogTW9kdWxlcy9pbmRleGVk
ZGIvSURCVHJhbnNhY3Rpb25CYWNrZW5kT3BlcmF0aW9ucy5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpQdXRPcGVyYXRpb246OnBlcmZvcm0pOiBEb27igJl0IGFib3J0IHRoZSB0cmFuc2FjdGlvbiB3
aGVuIGFuIGVycm9yIG9jY3VycmVkLgorCisgICAgICAgICogV2ViQ29yZS5leHAuaW46CisKIDIw
MTQtMDItMDMgIEFuZHJlYXMgS2xpbmcgIDxha2xpbmdAYXBwbGUuY29tPgogCiAgICAgICAgIFJl
bW92ZSBzdHJheSB2ZXN0aWdlIGZyb20gOjotd2Via2l0LWRpc3RyaWJ1dGVkIHNlbGVjdG9yLgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCUmVxdWVzdC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJSZXF1ZXN0LmNwcAppbmRl
eCA4ZGE4NGNiLi41YjJlYWQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9JREJSZXF1ZXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9JREJSZXF1ZXN0LmNwcApAQCAtMjQ5LDcgKzI0OSw3IEBAIGJvb2wgSURCUmVxdWVzdDo6
c2hvdWxkRW5xdWV1ZUV2ZW50KCkgY29uc3QKIAogdm9pZCBJREJSZXF1ZXN0OjpvbkVycm9yKFBh
c3NSZWZQdHI8SURCRGF0YWJhc2VFcnJvcj4gZXJyb3IpCiB7Ci0gICAgTE9HKFN0b3JhZ2VBUEks
ICJJREJSZXF1ZXN0OjpvbkVycm9yKCkiKTsKKyAgICBMT0coU3RvcmFnZUFQSSwgIklEQlJlcXVl
c3Q6Om9uRXJyb3IoKSAoJXMpICclcyciLCBlcnJvci0+bmFtZSgpLnV0ZjgoKS5kYXRhKCksIGVy
cm9yLT5tZXNzYWdlKCkudXRmOCgpLmRhdGEoKSk7CiAgICAgaWYgKCFzaG91bGRFbnF1ZXVlRXZl
bnQoKSkKICAgICAgICAgcmV0dXJuOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2luZGV4ZWRkYi9JREJUcmFuc2FjdGlvbkJhY2tlbmQuY3BwIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9pbmRleGVkZGIvSURCVHJhbnNhY3Rpb25CYWNrZW5kLmNwcAppbmRleCBiZmI4MDg4
Li4wZmQ4ZDczIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9J
REJUcmFuc2FjdGlvbkJhY2tlbmQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0lEQlRyYW5zYWN0aW9uQmFja2VuZC5jcHAKQEAgLTExNiw3ICsxMTYsMTMgQEAgdm9p
ZCBJREJUcmFuc2FjdGlvbkJhY2tlbmQ6OmFib3J0KCkKIAogdm9pZCBJREJUcmFuc2FjdGlvbkJh
Y2tlbmQ6OmFib3J0KFBhc3NSZWZQdHI8SURCRGF0YWJhc2VFcnJvcj4gZXJyb3IpCiB7Ci0gICAg
TE9HKFN0b3JhZ2VBUEksICJJREJUcmFuc2FjdGlvbkJhY2tlbmQ6OmFib3J0Iik7CisjaWZuZGVm
IE5ERUJVRworICAgIGlmIChlcnJvcikKKyAgICAgICAgTE9HKFN0b3JhZ2VBUEksICJJREJUcmFu
c2FjdGlvbkJhY2tlbmQ6OmFib3J0IC0gKCVzKSAlcyIsIGVycm9yLT5uYW1lKCkudXRmOCgpLmRh
dGEoKSwgZXJyb3ItPm1lc3NhZ2UoKS51dGY4KCkuZGF0YSgpKTsKKyAgICBlbHNlCisgICAgICAg
IExPRyhTdG9yYWdlQVBJLCAiSURCVHJhbnNhY3Rpb25CYWNrZW5kOjphYm9ydCAobm8gZXJyb3Ip
Iik7CisjZW5kaWYKKwogICAgIGlmIChtX3N0YXRlID09IEZpbmlzaGVkKQogICAgICAgICByZXR1
cm47CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRy
YW5zYWN0aW9uQmFja2VuZE9wZXJhdGlvbnMuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvSURCVHJhbnNhY3Rpb25CYWNrZW5kT3BlcmF0aW9ucy5jcHAKaW5kZXggOGQ5MjA5
Ny4uODZiN2MyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
SURCVHJhbnNhY3Rpb25CYWNrZW5kT3BlcmF0aW9ucy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9pbmRleGVkZGIvSURCVHJhbnNhY3Rpb25CYWNrZW5kT3BlcmF0aW9ucy5jcHAKQEAg
LTEyMywxMCArMTIzLDcgQEAgdm9pZCBQdXRPcGVyYXRpb246OnBlcmZvcm0oc3RkOjpmdW5jdGlv
bjx2b2lkKCk+IGNvbXBsZXRpb25DYWxsYmFjaykKICAgICBBU1NFUlQobV90cmFuc2FjdGlvbi0+
bW9kZSgpICE9IEluZGV4ZWREQjo6VHJhbnNhY3Rpb25Nb2RlOjpSZWFkT25seSk7CiAgICAgQVNT
RVJUKG1faW5kZXhJRHMuc2l6ZSgpID09IG1faW5kZXhLZXlzLnNpemUoKSk7CiAKLSAgICBSZWZQ
dHI8UHV0T3BlcmF0aW9uPiBvcGVyYXRpb24odGhpcyk7Ci0gICAgU1RBTkRBUkRfREFUQUJBU0Vf
RVJST1JfQ0FMTEJBQ0s7Ci0KLSAgICBtX3RyYW5zYWN0aW9uLT5kYXRhYmFzZSgpLnNlcnZlckNv
bm5lY3Rpb24oKS5wdXQoKm1fdHJhbnNhY3Rpb24sICp0aGlzLCBbdGhpcywgb3BlcmF0aW9uLCBv
cGVyYXRpb25DYWxsYmFja10oUGFzc1JlZlB0cjxJREJLZXk+IGtleSwgUGFzc1JlZlB0cjxJREJE
YXRhYmFzZUVycm9yPiBwcnBFcnJvcikgeworICAgIG1fdHJhbnNhY3Rpb24tPmRhdGFiYXNlKCku
c2VydmVyQ29ubmVjdGlvbigpLnB1dCgqbV90cmFuc2FjdGlvbiwgKnRoaXMsIFt0aGlzLCBjb21w
bGV0aW9uQ2FsbGJhY2tdKFBhc3NSZWZQdHI8SURCS2V5PiBrZXksIFBhc3NSZWZQdHI8SURCRGF0
YWJhc2VFcnJvcj4gcHJwRXJyb3IpIHsKICAgICAgICAgUmVmUHRyPElEQkRhdGFiYXNlRXJyb3I+
IGVycm9yID0gcHJwRXJyb3I7CiAgICAgICAgIGlmIChrZXkpIHsKICAgICAgICAgICAgIEFTU0VS
VCghZXJyb3IpOwpAQCAtMTM1LDcgKzEzMiw3IEBAIHZvaWQgUHV0T3BlcmF0aW9uOjpwZXJmb3Jt
KHN0ZDo6ZnVuY3Rpb248dm9pZCgpPiBjb21wbGV0aW9uQ2FsbGJhY2spCiAgICAgICAgICAgICBB
U1NFUlQoZXJyb3IpOwogICAgICAgICAgICAgbV9jYWxsYmFja3MtPm9uRXJyb3IoZXJyb3IpOwog
ICAgICAgICB9Ci0gICAgICAgIG9wZXJhdGlvbkNhbGxiYWNrKGVycm9yLnJlbGVhc2UoKSk7Cisg
ICAgICAgIGNvbXBsZXRpb25DYWxsYmFjaygpOwogICAgIH0pOwogfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhw
LmluCmluZGV4IGRmY2FmNTUuLjUzNzUzNjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUuZXhwLmluCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCkBAIC03NzIs
NiArNzcyLDcgQEAgX19aTjdXZWJDb3JlMTlSZXNvdXJjZVJlcXVlc3RCYXNlNnNldFVSTEVSS05T
XzNVUkxFCiBfX1pON1dlYkNvcmUxOVBsYXRmb3JtQ0FBbmltYXRpb242Y3JlYXRlRVAxOUNBUHJv
cGVydHlBbmltYXRpb24KIF9fWk43V2ViQ29yZTE5UGxhdGZvcm1DQUFuaW1hdGlvbjEwc2V0VG9W
YWx1ZUVSS05TXzIwVHJhbnNmb3JtYXRpb25NYXRyaXhFCiBfX1pON1dlYkNvcmUxOVBsYXRmb3Jt
Q0FBbmltYXRpb25EMUV2CitfX1pON1dlYkNvcmUxOVNRTFJlc3VsdENvbnN0cmFpbnRFCiBfX1pO
N1dlYkNvcmUxOVRleHRSZXNvdXJjZURlY29kZXI1Zmx1c2hFdgogX19aTjdXZWJDb3JlMTlUZXh0
UmVzb3VyY2VEZWNvZGVyNmRlY29kZUVQS2NtCiBfX1pON1dlYkNvcmUxOVRleHRSZXNvdXJjZURl
Y29kZXJDMUVSS04zV1RGNlN0cmluZ0VSS05TXzEyVGV4dEVuY29kaW5nRWIKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRl
eCBlNTRhYjQ0Li5iMzNkNjM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cK
KysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjggQEAKKzIwMTQtMDIt
MDQgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgorCisgICAgICAgIElEQjogaW5k
ZXhlZGRiL21vemlsbGEvYWRkLXR3aWNlLWZhaWx1cmUuaHRtbCBmYWlscworICAgICAgICA8cmRh
cjovL3Byb2JsZW0vMTU5ODI1Njk+IGFuZCBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTI4MjA4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgTm90ZSB0aGF0IGJlc2lkZXMgbWFraW5nIGluZGV4ZWRkYi9tb3ppbGxhL2FkZC10
d2ljZS1mYWlsdXJlLmh0bWwgcGFzcyB0aGlzIGFsc28gbWFrZXMgc29tZSBvdGhlciB0ZXN0cwor
ICAgICAgICBwYXNzIGFuZCBhbHNvIGltcHJvdmVzIHRoZSBmYWlsdXJlIG1vZGVzIG9mIG90aGVy
cy4KKworICAgICAgICBBIGZ1bGwgYWNjb3VudGluZyBvZiB3aGljaCB0ZXN0cyBwYXNzIGlzIGNv
bWluZyBzb29uLgorCisgICAgICAgICogRGF0YWJhc2VQcm9jZXNzL0luZGV4ZWREQi9VbmlxdWVJ
REJEYXRhYmFzZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OlVuaXF1ZUlEQkRhdGFiYXNlOjpwdXRS
ZWNvcmRJbkJhY2tpbmdTdG9yZSk6IEFmdGVyIGNoZWNraW5nIGZvciBleGlzdGVuY2Ugb2YgdGhl
IGtleSBhbmQgYmVmb3JlCisgICAgICAgICAgYWRkaW5nIHRoZSByZWNvcmQsIHJlbW92ZSBhbnkg
cHJldmlvdXMgcmVjb3JkLiAoRGVmaW5lZCBieSB0aGUgc3BlYywgZm91bmQgZXhwbG9yaW5nIHRo
aXMgdGVzdCkuCisKKyAgICAgICAgKiBEYXRhYmFzZVByb2Nlc3MvSW5kZXhlZERCL1VuaXF1ZUlE
QkRhdGFiYXNlQmFja2luZ1N0b3JlLmg6CisgICAgICAgICogRGF0YWJhc2VQcm9jZXNzL0luZGV4
ZWREQi9zcWxpdGUvVW5pcXVlSURCRGF0YWJhc2VCYWNraW5nU3RvcmVTUUxpdGUuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpVbmlxdWVJREJEYXRhYmFzZUJhY2tpbmdTdG9yZVNRTGl0ZTo6a2V5RXhp
c3RzSW5PYmplY3RTdG9yZSk6IEltcGxlbWVudCB0aGlzLgorICAgICAgICAoV2ViS2l0OjpVbmlx
dWVJREJEYXRhYmFzZUJhY2tpbmdTdG9yZVNRTGl0ZTo6ZGVsZXRlUmVjb3JkKTogQWRkIGEgZm9y
bSB0byBiZSB1c2VkIGFzIG1lbnRpb25lZCBhYm92ZSBpbgorICAgICAgICAgIFVuaXF1ZUlEQkRh
dGFiYXNlOjpwdXRSZWNvcmRJbkJhY2tpbmdTdG9yZS4KKyAgICAgICAgKFdlYktpdDo6VW5pcXVl
SURCRGF0YWJhc2VCYWNraW5nU3RvcmVTUUxpdGU6OmdldEtleVJlY29yZEZyb21PYmplY3RTdG9y
ZSk6IENBU1QgdGhlIGtleSBhcmd1bWVudCBwcm9wZXJseS4KKyAgICAgICAgKFdlYktpdDo6VW5p
cXVlSURCRGF0YWJhc2VCYWNraW5nU3RvcmVTUUxpdGU6OmdldEtleVJhbmdlUmVjb3JkRnJvbU9i
amVjdFN0b3JlKTogRGl0dG8uCisgICAgICAgICogRGF0YWJhc2VQcm9jZXNzL0luZGV4ZWREQi9z
cWxpdGUvVW5pcXVlSURCRGF0YWJhc2VCYWNraW5nU3RvcmVTUUxpdGUuaDoKKwogMjAxNC0wMi0w
MyAgQnJhZHkgRWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdl
ZCBidWlsZCBmaXggYWZ0ZXIgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMTYzMzY0
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVByb2Nlc3MvSW5kZXhlZERCL1Vu
aXF1ZUlEQkRhdGFiYXNlLmNwcCBiL1NvdXJjZS9XZWJLaXQyL0RhdGFiYXNlUHJvY2Vzcy9JbmRl
eGVkREIvVW5pcXVlSURCRGF0YWJhc2UuY3BwCmluZGV4IGZmNjg1ODMuLmNhZGZiOTIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0RhdGFiYXNlUHJvY2Vzcy9JbmRleGVkREIvVW5pcXVlSURC
RGF0YWJhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL0RhdGFiYXNlUHJvY2Vzcy9JbmRleGVk
REIvVW5pcXVlSURCRGF0YWJhc2UuY3BwCkBAIC04MzcsNyArODM3LDcgQEAgdm9pZCBVbmlxdWVJ
REJEYXRhYmFzZTo6cHV0UmVjb3JkSW5CYWNraW5nU3RvcmUodWludDY0X3QgcmVxdWVzdElELCBj
b25zdCBJREJJZGUKIAogICAgIGlmIChwdXRNb2RlID09IElEQkRhdGFiYXNlQmFja2VuZDo6QWRk
T25seSkgewogICAgICAgICBib29sIGtleUV4aXN0czsKLSAgICAgICAgaWYgKCFtX2JhY2tpbmdT
dG9yZS0+a2V5RXhpc3RzSW5PYmplY3RTdG9yZSh0cmFuc2FjdGlvbiwgb2JqZWN0U3RvcmVNZXRh
ZGF0YS5pZCwgKmtleSwga2V5RXhpc3RzKSkgeworICAgICAgICBpZiAoIW1fYmFja2luZ1N0b3Jl
LT5rZXlFeGlzdHNJbk9iamVjdFN0b3JlKHRyYW5zYWN0aW9uLCBvYmplY3RTdG9yZU1ldGFkYXRh
LmlkLCBrZXlEYXRhLCBrZXlFeGlzdHMpKSB7CiAgICAgICAgICAgICBwb3N0TWFpblRocmVhZFRh
c2soY3JlYXRlQXN5bmNUYXNrKCp0aGlzLCAmVW5pcXVlSURCRGF0YWJhc2U6OmRpZFB1dFJlY29y
ZEluQmFja2luZ1N0b3JlLCByZXF1ZXN0SUQsIElEQktleURhdGEoKSwgSURCRGF0YWJhc2VFeGNl
cHRpb246OlVua25vd25FcnJvciwgQVNDSUlMaXRlcmFsKCJJbnRlcm5hbCBiYWNraW5nIHN0b3Jl
IGVycm9yIGNoZWNraW5nIGZvciBrZXkgZXhpc3RlbmNlIikpKTsKICAgICAgICAgICAgIHJldHVy
bjsKICAgICAgICAgfQpAQCAtODQ3LDYgKzg0NywxMyBAQCB2b2lkIFVuaXF1ZUlEQkRhdGFiYXNl
OjpwdXRSZWNvcmRJbkJhY2tpbmdTdG9yZSh1aW50NjRfdCByZXF1ZXN0SUQsIGNvbnN0IElEQklk
ZQogICAgICAgICB9CiAgICAgfQogCisgICAgLy8gVGhlIHNwZWMgc2F5cyB0aGF0IGV2ZW4gaWYg
d2UncmUgYWJvdXQgdG8gb3ZlcndyaXRlIHRoZSByZWNvcmQsIHBlcmZvcm0gdGhlIHN0ZXBzIHRv
IGRlbGV0ZSBpdCBmaXJzdC4KKyAgICAvLyBUaGlzIGlzIGltcG9ydGFudCBiZWNhdXNlIGZvcm1h
bGx5IGRlbGV0aW5nIGl0IGZyb20gZnJvbSB0aGUgb2JqZWN0IHN0b3JlIGFsc28gcmVtb3ZlcyBp
dCBmcm9tIHRoZSBhcHByb3ByaWF0ZSBpbmRleGVzLgorICAgIGlmICghbV9iYWNraW5nU3RvcmUt
PmRlbGV0ZVJlY29yZCh0cmFuc2FjdGlvbiwgb2JqZWN0U3RvcmVNZXRhZGF0YS5pZCwga2V5RGF0
YSkpIHsKKyAgICAgICAgcG9zdE1haW5UaHJlYWRUYXNrKGNyZWF0ZUFzeW5jVGFzaygqdGhpcywg
JlVuaXF1ZUlEQkRhdGFiYXNlOjpkaWRQdXRSZWNvcmRJbkJhY2tpbmdTdG9yZSwgcmVxdWVzdElE
LCBJREJLZXlEYXRhKCksIElEQkRhdGFiYXNlRXhjZXB0aW9uOjpVbmtub3duRXJyb3IsIEFTQ0lJ
TGl0ZXJhbCgiUmVwbGFjaW5nIGFuIGV4aXN0aW5nIGtleSBpbiBiYWNraW5nIHN0b3JlLCB1bmFi
bGUgdG8gZGVsZXRlIHByZXZpb3VzIHJlY29yZC4iKSkpOworICAgICAgICByZXR1cm47CisgICAg
fQorCiAgICAgaWYgKCFtX2JhY2tpbmdTdG9yZS0+cHV0UmVjb3JkKHRyYW5zYWN0aW9uLCBvYmpl
Y3RTdG9yZU1ldGFkYXRhLmlkLCAqa2V5LCB2YWx1ZS5kYXRhKCksIHZhbHVlLnNpemUoKSkpIHsK
ICAgICAgICAgcG9zdE1haW5UaHJlYWRUYXNrKGNyZWF0ZUFzeW5jVGFzaygqdGhpcywgJlVuaXF1
ZUlEQkRhdGFiYXNlOjpkaWRQdXRSZWNvcmRJbkJhY2tpbmdTdG9yZSwgcmVxdWVzdElELCBJREJL
ZXlEYXRhKCksIElEQkRhdGFiYXNlRXhjZXB0aW9uOjpVbmtub3duRXJyb3IsIEFTQ0lJTGl0ZXJh
bCgiSW50ZXJuYWwgYmFja2luZyBzdG9yZSBlcnJvciBwdXR0aW5nIGEgcmVjb3JkIikpKTsKICAg
ICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNz
L0luZGV4ZWREQi9VbmlxdWVJREJEYXRhYmFzZUJhY2tpbmdTdG9yZS5oIGIvU291cmNlL1dlYktp
dDIvRGF0YWJhc2VQcm9jZXNzL0luZGV4ZWREQi9VbmlxdWVJREJEYXRhYmFzZUJhY2tpbmdTdG9y
ZS5oCmluZGV4IGQxYTkzYjguLjRiNzU5ZGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0Rh
dGFiYXNlUHJvY2Vzcy9JbmRleGVkREIvVW5pcXVlSURCRGF0YWJhc2VCYWNraW5nU3RvcmUuaAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVByb2Nlc3MvSW5kZXhlZERCL1VuaXF1ZUlEQkRh
dGFiYXNlQmFja2luZ1N0b3JlLmgKQEAgLTM3LDYgKzM3LDcgQEAgY2xhc3MgSURCS2V5UmFuZ2U7
CiBjbGFzcyBTaGFyZWRCdWZmZXI7CiAKIHN0cnVjdCBJREJEYXRhYmFzZU1ldGFkYXRhOworc3Ry
dWN0IElEQktleURhdGE7CiBzdHJ1Y3QgSURCT2JqZWN0U3RvcmVNZXRhZGF0YTsKIH0KIApAQCAt
NjYsMTEgKzY3LDEyIEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIGJvb2wgZ2VuZXJhdGVLZXlOdW1i
ZXIoY29uc3QgSURCSWRlbnRpZmllciYgdHJhbnNhY3Rpb25JZGVudGlmaWVyLCBpbnQ2NF90IG9i
amVjdFN0b3JlSUQsIGludDY0X3QmIGdlbmVyYXRlZEtleSkgPSAwOwogICAgIHZpcnR1YWwgYm9v
bCB1cGRhdGVLZXlHZW5lcmF0b3JOdW1iZXIoY29uc3QgSURCSWRlbnRpZmllciYgdHJhbnNhY3Rp
b25JZGVudGlmaWVyLCBpbnQ2NF90IG9iamVjdFN0b3JlSWQsIGludDY0X3Qga2V5TnVtYmVyLCBi
b29sIGNoZWNrQ3VycmVudCkgPSAwOwogCi0gICAgdmlydHVhbCBib29sIGtleUV4aXN0c0luT2Jq
ZWN0U3RvcmUoY29uc3QgSURCSWRlbnRpZmllciYgdHJhbnNhY3Rpb25JZGVudGlmaWVyLCBpbnQ2
NF90IG9iamVjdFN0b3JlSUQsIGNvbnN0IFdlYkNvcmU6OklEQktleSYsIGJvb2wmIGtleUV4aXN0
cykgPSAwOworICAgIHZpcnR1YWwgYm9vbCBrZXlFeGlzdHNJbk9iamVjdFN0b3JlKGNvbnN0IElE
QklkZW50aWZpZXImIHRyYW5zYWN0aW9uSWRlbnRpZmllciwgaW50NjRfdCBvYmplY3RTdG9yZUlE
LCBjb25zdCBXZWJDb3JlOjpJREJLZXlEYXRhJiwgYm9vbCYga2V5RXhpc3RzKSA9IDA7CiAgICAg
dmlydHVhbCBib29sIHB1dFJlY29yZChjb25zdCBJREJJZGVudGlmaWVyJiB0cmFuc2FjdGlvbklk
ZW50aWZpZXIsIGludDY0X3Qgb2JqZWN0U3RvcmVJRCwgY29uc3QgV2ViQ29yZTo6SURCS2V5Jiwg
Y29uc3QgdWludDhfdCogdmFsdWVCdWZmZXIsIHNpemVfdCB2YWx1ZVNpemUpID0gMDsKICAgICB2
aXJ0dWFsIGJvb2wgcHV0SW5kZXhSZWNvcmQoY29uc3QgSURCSWRlbnRpZmllciYgdHJhbnNhY3Rp
b25JZGVudGlmaWVyLCBpbnQ2NF90IG9iamVjdFN0b3JlSUQsIGludDY0X3QgaW5kZXhJRCwgY29u
c3QgV2ViQ29yZTo6SURCS2V5RGF0YSYsIGNvbnN0IFdlYkNvcmU6OklEQktleURhdGEmIGluZGV4
S2V5KSA9IDA7CiAgICAgdmlydHVhbCBib29sIGdldEluZGV4UmVjb3JkKGNvbnN0IElEQklkZW50
aWZpZXImIHRyYW5zYWN0aW9uSWRlbnRpZmllciwgaW50NjRfdCBvYmplY3RTdG9yZUlELCBpbnQ2
NF90IGluZGV4SUQsIGNvbnN0IFdlYkNvcmU6OklEQktleVJhbmdlRGF0YSYsIFJlZlB0cjxXZWJD
b3JlOjpTaGFyZWRCdWZmZXI+JiByZXN1bHQpID0gMDsKICAgICB2aXJ0dWFsIGJvb2wgZGVsZXRl
UmFuZ2UoY29uc3QgSURCSWRlbnRpZmllciYgdHJhbnNhY3Rpb25JZGVudGlmaWVyLCBpbnQ2NF90
IG9iamVjdFN0b3JlSUQsIGNvbnN0IFdlYkNvcmU6OklEQktleVJhbmdlRGF0YSYpID0gMDsKKyAg
ICB2aXJ0dWFsIGJvb2wgZGVsZXRlUmVjb3JkKGNvbnN0IElEQklkZW50aWZpZXImIHRyYW5zYWN0
aW9uSWRlbnRpZmllciwgaW50NjRfdCBvYmplY3RTdG9yZUlELCBjb25zdCBXZWJDb3JlOjpJREJL
ZXlEYXRhJikgPSAwOwogCiAgICAgdmlydHVhbCBib29sIGdldEtleVJlY29yZEZyb21PYmplY3RT
dG9yZShjb25zdCBJREJJZGVudGlmaWVyJiB0cmFuc2FjdGlvbklkZW50aWZpZXIsIGludDY0X3Qg
b2JqZWN0U3RvcmVJRCwgY29uc3QgV2ViQ29yZTo6SURCS2V5JiwgUmVmUHRyPFdlYkNvcmU6OlNo
YXJlZEJ1ZmZlcj4mIHJlc3VsdCkgPSAwOwogICAgIHZpcnR1YWwgYm9vbCBnZXRLZXlSYW5nZVJl
Y29yZEZyb21PYmplY3RTdG9yZShjb25zdCBJREJJZGVudGlmaWVyJiB0cmFuc2FjdGlvbklkZW50
aWZpZXIsIGludDY0X3Qgb2JqZWN0U3RvcmVJRCwgY29uc3QgV2ViQ29yZTo6SURCS2V5UmFuZ2Um
LCBSZWZQdHI8V2ViQ29yZTo6U2hhcmVkQnVmZmVyPiYgcmVzdWx0LCBSZWZQdHI8V2ViQ29yZTo6
SURCS2V5PiYgcmVzdWx0S2V5KSA9IDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9EYXRh
YmFzZVByb2Nlc3MvSW5kZXhlZERCL3NxbGl0ZS9VbmlxdWVJREJEYXRhYmFzZUJhY2tpbmdTdG9y
ZVNRTGl0ZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVByb2Nlc3MvSW5kZXhlZERCL3Nx
bGl0ZS9VbmlxdWVJREJEYXRhYmFzZUJhY2tpbmdTdG9yZVNRTGl0ZS5jcHAKaW5kZXggZmMwMzkz
Mi4uNjM2MjgwOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL0lu
ZGV4ZWREQi9zcWxpdGUvVW5pcXVlSURCRGF0YWJhc2VCYWNraW5nU3RvcmVTUUxpdGUuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQyL0RhdGFiYXNlUHJvY2Vzcy9JbmRleGVkREIvc3FsaXRlL1VuaXF1
ZUlEQkRhdGFiYXNlQmFja2luZ1N0b3JlU1FMaXRlLmNwcApAQCAtNzI4LDEwICs3MjgsNDggQEAg
Ym9vbCBVbmlxdWVJREJEYXRhYmFzZUJhY2tpbmdTdG9yZVNRTGl0ZTo6dXBkYXRlS2V5R2VuZXJh
dG9yTnVtYmVyKGNvbnN0IElEQklkZW4KICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotYm9vbCBVbmlx
dWVJREJEYXRhYmFzZUJhY2tpbmdTdG9yZVNRTGl0ZTo6a2V5RXhpc3RzSW5PYmplY3RTdG9yZShj
b25zdCBJREJJZGVudGlmaWVyJiB0cmFuc2FjdGlvbklkZW50aWZpZXIsIGludDY0X3Qgb2JqZWN0
U3RvcmVJRCwgY29uc3QgSURCS2V5JiwgYm9vbCYga2V5RXhpc3RzKQorYm9vbCBVbmlxdWVJREJE
YXRhYmFzZUJhY2tpbmdTdG9yZVNRTGl0ZTo6a2V5RXhpc3RzSW5PYmplY3RTdG9yZShjb25zdCBJ
REJJZGVudGlmaWVyJiB0cmFuc2FjdGlvbklkZW50aWZpZXIsIGludDY0X3Qgb2JqZWN0U3RvcmVJ
RCwgY29uc3QgSURCS2V5RGF0YSYga2V5RGF0YSwgYm9vbCYga2V5RXhpc3RzKQogewotICAgIC8v
IEZJWE1FOiBXaGVuIEdldCBzdXBwb3J0IGlzIGltcGxlbWVudGVkLCB3ZSBuZWVkIHRvIGltcGxl
bWVudCB0aGlzIGFsc28gKDxyZGFyOi8vcHJvYmxlbS8xNTc3OTY0ND4pCi0gICAgcmV0dXJuIGZh
bHNlOworICAgIEFTU0VSVCghaXNNYWluVGhyZWFkKCkpOworICAgIEFTU0VSVChtX3NxbGl0ZURC
KTsKKyAgICBBU1NFUlQobV9zcWxpdGVEQi0+aXNPcGVuKCkpOworCisgICAga2V5RXhpc3RzID0g
ZmFsc2U7CisKKyAgICBTUUxpdGVJREJUcmFuc2FjdGlvbiogdHJhbnNhY3Rpb24gPSBtX3RyYW5z
YWN0aW9ucy5nZXQodHJhbnNhY3Rpb25JZGVudGlmaWVyKTsKKyAgICBpZiAoIXRyYW5zYWN0aW9u
IHx8ICF0cmFuc2FjdGlvbi0+aW5Qcm9ncmVzcygpKSB7CisgICAgICAgIExPR19FUlJPUigiQXR0
ZW1wdCB0byBzZWUgaWYga2V5IGV4aXN0cyBpbiBvYmplY3RzdG9yZSB3aXRob3V0IGVzdGFibGlz
aGVkLCBpbi1wcm9ncmVzcyB0cmFuc2FjdGlvbiIpOworICAgICAgICByZXR1cm4gZmFsc2U7Cisg
ICAgfQorCisgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4ga2V5QnVmZmVyID0gc2VyaWFsaXplSURC
S2V5RGF0YShrZXlEYXRhKTsKKyAgICBpZiAoIWtleUJ1ZmZlcikgeworICAgICAgICBMT0dfRVJS
T1IoIlVuYWJsZSB0byBzZXJpYWxpemUgSURCS2V5IHRvIGNoZWNrIGZvciBleGlzdGVuY2UiKTsK
KyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIFNRTGl0ZVN0YXRlbWVudCBzcWwo
Km1fc3FsaXRlREIsIEFTQ0lJTGl0ZXJhbCgiU0VMRUNUIGtleSBGUk9NIFJlY29yZHMgV0hFUkUg
b2JqZWN0U3RvcmVJRCA9ID8gQU5EIGtleSA9IENBU1QoPyBBUyBURVhUKSBMSU1JVCAxOyIpKTsK
KyAgICBpZiAoc3FsLnByZXBhcmUoKSAhPSBTUUxSZXN1bHRPaworICAgICAgICB8fCBzcWwuYmlu
ZEludDY0KDEsIG9iamVjdFN0b3JlSUQpICE9IFNRTFJlc3VsdE9rCisgICAgICAgIHx8IHNxbC5i
aW5kQmxvYigyLCBrZXlCdWZmZXItPmRhdGEoKSwga2V5QnVmZmVyLT5zaXplKCkpICE9IFNRTFJl
c3VsdE9rKSB7CisgICAgICAgIExPR19FUlJPUigiQ291bGQgbm90IGdldCByZWNvcmQgZnJvbSBv
YmplY3Qgc3RvcmUgJWxsaSBmcm9tIFJlY29yZHMgdGFibGUgKCVpKSAtICVzIiwgb2JqZWN0U3Rv
cmVJRCwgbV9zcWxpdGVEQi0+bGFzdEVycm9yKCksIG1fc3FsaXRlREItPmxhc3RFcnJvck1zZygp
KTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIGludCBzcWxSZXN1bHQgPSBz
cWwuc3RlcCgpOworICAgIGlmIChzcWxSZXN1bHQgPT0gU1FMUmVzdWx0T2sgfHwgc3FsUmVzdWx0
ID09IFNRTFJlc3VsdERvbmUpIHsKKyAgICAgICAga2V5RXhpc3RzID0gZmFsc2U7CisgICAgICAg
IHJldHVybiB0cnVlOworICAgIH0KKworICAgIGlmIChzcWxSZXN1bHQgIT0gU1FMUmVzdWx0Um93
KSB7CisgICAgICAgIC8vIFRoZXJlIHdhcyBhbiBlcnJvciBmZXRjaGluZyB0aGUgcmVjb3JkIGZy
b20gdGhlIGRhdGFiYXNlLgorICAgICAgICBMT0dfRVJST1IoIkNvdWxkIG5vdCBjaGVjayBpZiBr
ZXkgZXhpc3RzIGluIG9iamVjdCBzdG9yZSAoJWkpIC0gJXMiLCBtX3NxbGl0ZURCLT5sYXN0RXJy
b3IoKSwgbV9zcWxpdGVEQi0+bGFzdEVycm9yTXNnKCkpOworICAgICAgICByZXR1cm4gZmFsc2U7
CisgICAgfQorCisgICAga2V5RXhpc3RzID0gdHJ1ZTsKKyAgICByZXR1cm4gdHJ1ZTsKIH0KIAog
Ym9vbCBVbmlxdWVJREJEYXRhYmFzZUJhY2tpbmdTdG9yZVNRTGl0ZTo6cHV0UmVjb3JkKGNvbnN0
IElEQklkZW50aWZpZXImIHRyYW5zYWN0aW9uSWRlbnRpZmllciwgaW50NjRfdCBvYmplY3RTdG9y
ZUlELCBjb25zdCBJREJLZXkmIGtleSwgY29uc3QgdWludDhfdCogdmFsdWVCdWZmZXIsIHNpemVf
dCB2YWx1ZVNpemUpCkBAIC04NDMsNiArODgxLDI2IEBAIGJvb2wgVW5pcXVlSURCRGF0YWJhc2VC
YWNraW5nU3RvcmVTUUxpdGU6OmdldEluZGV4UmVjb3JkKGNvbnN0IElEQklkZW50aWZpZXImIHRy
CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKK2Jvb2wgVW5pcXVlSURCRGF0YWJhc2VCYWNraW5nU3Rv
cmVTUUxpdGU6OmRlbGV0ZVJlY29yZChjb25zdCBJREJJZGVudGlmaWVyJiB0cmFuc2FjdGlvbklk
ZW50aWZpZXIsIGludDY0X3Qgb2JqZWN0U3RvcmVJRCwgY29uc3QgV2ViQ29yZTo6SURCS2V5RGF0
YSYga2V5RGF0YSkKK3sKKyAgICBBU1NFUlQoIWlzTWFpblRocmVhZCgpKTsKKyAgICBBU1NFUlQo
bV9zcWxpdGVEQik7CisgICAgQVNTRVJUKG1fc3FsaXRlREItPmlzT3BlbigpKTsKKworICAgIFNR
TGl0ZUlEQlRyYW5zYWN0aW9uKiB0cmFuc2FjdGlvbiA9IG1fdHJhbnNhY3Rpb25zLmdldCh0cmFu
c2FjdGlvbklkZW50aWZpZXIpOworICAgIGlmICghdHJhbnNhY3Rpb24gfHwgIXRyYW5zYWN0aW9u
LT5pblByb2dyZXNzKCkpIHsKKyAgICAgICAgTE9HX0VSUk9SKCJBdHRlbXB0IHRvIGdldCBjb3Vu
dCBmcm9tIGRhdGFiYXNlIHdpdGhvdXQgYW4gZXN0YWJsaXNoZWQsIGluLXByb2dyZXNzIHRyYW5z
YWN0aW9uIik7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBpZiAodHJhbnNh
Y3Rpb24tPm1vZGUoKSA9PSBJbmRleGVkREI6OlRyYW5zYWN0aW9uTW9kZTo6UmVhZE9ubHkpIHsK
KyAgICAgICAgTE9HX0VSUk9SKCJBdHRlbXB0IHRvIGRlbGV0ZSByYW5nZSBmcm9tIGEgcmVhZC1v
bmx5IHRyYW5zYWN0aW9uIik7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBy
ZXR1cm4gZGVsZXRlUmVjb3JkKCp0cmFuc2FjdGlvbiwgb2JqZWN0U3RvcmVJRCwga2V5RGF0YSk7
Cit9CisKIGJvb2wgVW5pcXVlSURCRGF0YWJhc2VCYWNraW5nU3RvcmVTUUxpdGU6OmRlbGV0ZVJh
bmdlKGNvbnN0IElEQklkZW50aWZpZXImIHRyYW5zYWN0aW9uSWRlbnRpZmllciwgaW50NjRfdCBv
YmplY3RTdG9yZUlELCBjb25zdCBJREJLZXlSYW5nZURhdGEmIGtleVJhbmdlRGF0YSkKIHsKICAg
ICBBU1NFUlQoIWlzTWFpblRocmVhZCgpKTsKQEAgLTk2NCw3ICsxMDIyLDcgQEAgYm9vbCBVbmlx
dWVJREJEYXRhYmFzZUJhY2tpbmdTdG9yZVNRTGl0ZTo6Z2V0S2V5UmVjb3JkRnJvbU9iamVjdFN0
b3JlKGNvbnN0IElEQkkKICAgICB9CiAKICAgICB7Ci0gICAgICAgIFNRTGl0ZVN0YXRlbWVudCBz
cWwoKm1fc3FsaXRlREIsIEFTQ0lJTGl0ZXJhbCgiU0VMRUNUIHZhbHVlIEZST00gUmVjb3JkcyBX
SEVSRSBvYmplY3RTdG9yZUlEID0gPyBBTkQga2V5ID0gPzsiKSk7CisgICAgICAgIFNRTGl0ZVN0
YXRlbWVudCBzcWwoKm1fc3FsaXRlREIsIEFTQ0lJTGl0ZXJhbCgiU0VMRUNUIHZhbHVlIEZST00g
UmVjb3JkcyBXSEVSRSBvYmplY3RTdG9yZUlEID0gPyBBTkQga2V5ID0gQ0FTVCg/IEFTIFRFWFQp
OyIpKTsKICAgICAgICAgaWYgKHNxbC5wcmVwYXJlKCkgIT0gU1FMUmVzdWx0T2sKICAgICAgICAg
ICAgIHx8IHNxbC5iaW5kSW50NjQoMSwgb2JqZWN0U3RvcmVJRCkgIT0gU1FMUmVzdWx0T2sKICAg
ICAgICAgICAgIHx8IHNxbC5iaW5kQmxvYigyLCBrZXlCdWZmZXItPmRhdGEoKSwga2V5QnVmZmVy
LT5zaXplKCkpICE9IFNRTFJlc3VsdE9rKSB7CkBAIC0xMDE2LDcgKzEwNzQsNyBAQCBib29sIFVu
aXF1ZUlEQkRhdGFiYXNlQmFja2luZ1N0b3JlU1FMaXRlOjpnZXRLZXlSYW5nZVJlY29yZEZyb21P
YmplY3RTdG9yZShjb25zdAogICAgIH0KIAogICAgIHsKLSAgICAgICAgU1FMaXRlU3RhdGVtZW50
IHNxbCgqbV9zcWxpdGVEQiwgQVNDSUlMaXRlcmFsKCJTRUxFQ1QgdmFsdWUgRlJPTSBSZWNvcmRz
IFdIRVJFIG9iamVjdFN0b3JlSUQgPSA/IEFORCBrZXkgPj0gPyBBTkQga2V5IDw9ID8gT1JERVIg
Qlkga2V5OyIpKTsKKyAgICAgICAgU1FMaXRlU3RhdGVtZW50IHNxbCgqbV9zcWxpdGVEQiwgQVND
SUlMaXRlcmFsKCJTRUxFQ1QgdmFsdWUgRlJPTSBSZWNvcmRzIFdIRVJFIG9iamVjdFN0b3JlSUQg
PSA/IEFORCBrZXkgPj0gQ0FTVCg/IEFTIFRFWFQpIEFORCBrZXkgPD0gQ0FTVCg/IEFTIFRFWFQp
IE9SREVSIEJZIGtleTsiKSk7CiAgICAgICAgIGlmIChzcWwucHJlcGFyZSgpICE9IFNRTFJlc3Vs
dE9rCiAgICAgICAgICAgICB8fCBzcWwuYmluZEludDY0KDEsIG9iamVjdFN0b3JlSUQpICE9IFNR
TFJlc3VsdE9rCiAgICAgICAgICAgICB8fCBzcWwuYmluZEJsb2IoMiwgbG93ZXJCdWZmZXItPmRh
dGEoKSwgbG93ZXJCdWZmZXItPnNpemUoKSkgIT0gU1FMUmVzdWx0T2sKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL0RhdGFiYXNlUHJvY2Vzcy9JbmRleGVkREIvc3FsaXRlL1VuaXF1ZUlEQkRh
dGFiYXNlQmFja2luZ1N0b3JlU1FMaXRlLmggYi9Tb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVByb2Nl
c3MvSW5kZXhlZERCL3NxbGl0ZS9VbmlxdWVJREJEYXRhYmFzZUJhY2tpbmdTdG9yZVNRTGl0ZS5o
CmluZGV4IDY3ZDc5MGUuLmViMTRiZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0RhdGFi
YXNlUHJvY2Vzcy9JbmRleGVkREIvc3FsaXRlL1VuaXF1ZUlEQkRhdGFiYXNlQmFja2luZ1N0b3Jl
U1FMaXRlLmgKKysrIGIvU291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL0luZGV4ZWREQi9z
cWxpdGUvVW5pcXVlSURCRGF0YWJhc2VCYWNraW5nU3RvcmVTUUxpdGUuaApAQCAtNzEsMTEgKzcx
LDEyIEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIGJvb2wgZ2VuZXJhdGVLZXlOdW1iZXIoY29uc3Qg
SURCSWRlbnRpZmllciYgdHJhbnNhY3Rpb25JZGVudGlmaWVyLCBpbnQ2NF90IG9iamVjdFN0b3Jl
SUQsIGludDY0X3QmIGdlbmVyYXRlZEtleSkgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCBib29sIHVw
ZGF0ZUtleUdlbmVyYXRvck51bWJlcihjb25zdCBJREJJZGVudGlmaWVyJiB0cmFuc2FjdGlvbklk
ZW50aWZpZXIsIGludDY0X3Qgb2JqZWN0U3RvcmVJZCwgaW50NjRfdCBrZXlOdW1iZXIsIGJvb2wg
Y2hlY2tDdXJyZW50KSBvdmVycmlkZTsKIAotICAgIHZpcnR1YWwgYm9vbCBrZXlFeGlzdHNJbk9i
amVjdFN0b3JlKGNvbnN0IElEQklkZW50aWZpZXImIHRyYW5zYWN0aW9uSWRlbnRpZmllciwgaW50
NjRfdCBvYmplY3RTdG9yZUlELCBjb25zdCBXZWJDb3JlOjpJREJLZXkmLCBib29sJiBrZXlFeGlz
dHMpIG92ZXJyaWRlOworICAgIHZpcnR1YWwgYm9vbCBrZXlFeGlzdHNJbk9iamVjdFN0b3JlKGNv
bnN0IElEQklkZW50aWZpZXImIHRyYW5zYWN0aW9uSWRlbnRpZmllciwgaW50NjRfdCBvYmplY3RT
dG9yZUlELCBjb25zdCBXZWJDb3JlOjpJREJLZXlEYXRhJiwgYm9vbCYga2V5RXhpc3RzKSBvdmVy
cmlkZTsKICAgICB2aXJ0dWFsIGJvb2wgcHV0UmVjb3JkKGNvbnN0IElEQklkZW50aWZpZXImIHRy
YW5zYWN0aW9uSWRlbnRpZmllciwgaW50NjRfdCBvYmplY3RTdG9yZUlELCBjb25zdCBXZWJDb3Jl
OjpJREJLZXkmLCBjb25zdCB1aW50OF90KiB2YWx1ZUJ1ZmZlciwgc2l6ZV90IHZhbHVlU2l6ZSkg
b3ZlcnJpZGU7CiAgICAgdmlydHVhbCBib29sIHB1dEluZGV4UmVjb3JkKGNvbnN0IElEQklkZW50
aWZpZXImIHRyYW5zYWN0aW9uSWRlbnRpZmllciwgaW50NjRfdCBvYmplY3RTdG9yZUlELCBpbnQ2
NF90IGluZGV4SUQsIGNvbnN0IFdlYkNvcmU6OklEQktleURhdGEmIGtleVZhbHVlLCBjb25zdCBX
ZWJDb3JlOjpJREJLZXlEYXRhJiBpbmRleEtleSkgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCBib29s
IGdldEluZGV4UmVjb3JkKGNvbnN0IElEQklkZW50aWZpZXImIHRyYW5zYWN0aW9uSWRlbnRpZmll
ciwgaW50NjRfdCBvYmplY3RTdG9yZUlELCBpbnQ2NF90IGluZGV4SUQsIGNvbnN0IFdlYkNvcmU6
OklEQktleVJhbmdlRGF0YSYsIFJlZlB0cjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+JiByZXN1bHQp
IG92ZXJyaWRlOwogICAgIHZpcnR1YWwgYm9vbCBkZWxldGVSYW5nZShjb25zdCBJREJJZGVudGlm
aWVyJiB0cmFuc2FjdGlvbklkZW50aWZpZXIsIGludDY0X3Qgb2JqZWN0U3RvcmVJRCwgY29uc3Qg
V2ViQ29yZTo6SURCS2V5UmFuZ2VEYXRhJikgb3ZlcnJpZGU7CisgICAgdmlydHVhbCBib29sIGRl
bGV0ZVJlY29yZChjb25zdCBJREJJZGVudGlmaWVyJiB0cmFuc2FjdGlvbklkZW50aWZpZXIsIGlu
dDY0X3Qgb2JqZWN0U3RvcmVJRCwgY29uc3QgV2ViQ29yZTo6SURCS2V5RGF0YSYpIG92ZXJyaWRl
OwogCiAgICAgdmlydHVhbCBib29sIGdldEtleVJlY29yZEZyb21PYmplY3RTdG9yZShjb25zdCBJ
REJJZGVudGlmaWVyJiB0cmFuc2FjdGlvbklkZW50aWZpZXIsIGludDY0X3Qgb2JqZWN0U3RvcmVJ
RCwgY29uc3QgV2ViQ29yZTo6SURCS2V5JiwgUmVmUHRyPFdlYkNvcmU6OlNoYXJlZEJ1ZmZlcj4m
IHJlc3VsdCkgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCBib29sIGdldEtleVJhbmdlUmVjb3JkRnJv
bU9iamVjdFN0b3JlKGNvbnN0IElEQklkZW50aWZpZXImIHRyYW5zYWN0aW9uSWRlbnRpZmllciwg
aW50NjRfdCBvYmplY3RTdG9yZUlELCBjb25zdCBXZWJDb3JlOjpJREJLZXlSYW5nZSYsIFJlZlB0
cjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+JiByZXN1bHQsIFJlZlB0cjxXZWJDb3JlOjpJREJLZXk+
JiByZXN1bHRLZXkpIG92ZXJyaWRlOwo=
</data>
<flag name="review"
          id="247174"
          type_id="1"
          status="+"
          setter="thorton"
    />
          </attachment>
      

    </bug>

</bugzilla>