<?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>174224</bug_id>
          
          <creation_ts>2017-07-06 15:56:28 -0700</creation_ts>
          <short_desc>WKWebSiteDataStore.removeDataOfTypes should wait until disk cache files are actually removed before invoking completion handler</short_desc>
          <delta_ts>2017-07-07 00:22:17 -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>Page Loading</component>
          <version>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Antti Koivisto">koivisto</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>beidson</cc>
    
    <cc>buildbot</cc>
    
    <cc>cdumez</cc>
    
    <cc>cgarcia</cc>
    
    <cc>commit-queue</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1326222</commentid>
    <comment_count>0</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2017-07-06 15:56:28 -0700</bug_when>
    <thetext>Currently we dispatch the file deletion operations to a background queue and call completion handler without waiting for the I/O to complete.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1326223</commentid>
    <comment_count>1</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2017-07-06 15:57:11 -0700</bug_when>
    <thetext>&lt;rdar://problem/33067545&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1326230</commentid>
    <comment_count>2</comment_count>
      <attachid>314768</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2017-07-06 16:06:32 -0700</bug_when>
    <thetext>Created attachment 314768
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1326231</commentid>
    <comment_count>3</comment_count>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-07-06 16:09:18 -0700</bug_when>
    <thetext>Attachment 314768 did not pass style-queue:


ERROR: Source/WebKit2/NetworkProcess/cache/NetworkCacheStorage.cpp:563:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/NetworkProcess/cache/NetworkCacheStorage.h:71:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/NetworkProcess/cache/NetworkCache.cpp:508:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/NetworkProcess/cache/NetworkCache.h:124:  Extra space before ( in function call  [whitespace/parens] [4]
Total errors found: 4 in 6 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1326239</commentid>
    <comment_count>4</comment_count>
      <attachid>314773</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2017-07-06 16:19:24 -0700</bug_when>
    <thetext>Created attachment 314773
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1326241</commentid>
    <comment_count>5</comment_count>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-07-06 16:21:54 -0700</bug_when>
    <thetext>Attachment 314773 did not pass style-queue:


ERROR: Source/WebKit2/NetworkProcess/cache/NetworkCacheStorage.cpp:562:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/NetworkProcess/cache/NetworkCacheStorage.h:71:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/NetworkProcess/cache/NetworkCache.cpp:508:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/NetworkProcess/cache/NetworkCache.h:124:  Extra space before ( in function call  [whitespace/parens] [4]
Total errors found: 4 in 6 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1326243</commentid>
    <comment_count>6</comment_count>
      <attachid>314773</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2017-07-06 16:24:40 -0700</bug_when>
    <thetext>Comment on attachment 314773
patch

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

r=me

&gt; Source/WebKit2/NetworkProcess/cache/NetworkCacheStorage.cpp:567
&gt; +    keysToRemove.reserveCapacity(keys.size());

You can call reserveInitialCapacity() here.

&gt; Source/WebKit2/NetworkProcess/cache/NetworkCacheStorage.cpp:581
&gt; +            RunLoop::main().dispatch([completionHandler = WTFMove(completionHandler)] {

I think you can just pass completionHandler to RunLoop::main().dispatch() (not completely sure the types are the same).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1326250</commentid>
    <comment_count>7</comment_count>
      <attachid>314777</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2017-07-06 16:35:11 -0700</bug_when>
    <thetext>Created attachment 314777
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1326253</commentid>
    <comment_count>8</comment_count>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-07-06 16:37:50 -0700</bug_when>
    <thetext>Attachment 314777 did not pass style-queue:


ERROR: Source/WebKit2/NetworkProcess/cache/NetworkCacheStorage.cpp:562:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/NetworkProcess/cache/NetworkCacheStorage.h:71:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/NetworkProcess/cache/NetworkCache.cpp:508:  Extra space before ( in function call  [whitespace/parens] [4]
ERROR: Source/WebKit2/NetworkProcess/cache/NetworkCache.h:124:  Extra space before ( in function call  [whitespace/parens] [4]
Total errors found: 4 in 6 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1326412</commentid>
    <comment_count>9</comment_count>
      <attachid>314777</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-07-07 00:22:15 -0700</bug_when>
    <thetext>Comment on attachment 314777
patch

Clearing flags on attachment: 314777

Committed r219249: &lt;http://trac.webkit.org/changeset/219249&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1326413</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-07-07 00:22:17 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>314768</attachid>
            <date>2017-07-06 16:06:32 -0700</date>
            <delta_ts>2017-07-06 16:19:24 -0700</delta_ts>
            <desc>patch</desc>
            <filename>network-cache-bulk-delete.patch</filename>
            <type>text/plain</type>
            <size>5492</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDIxOTIyMikKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMzIEBACisyMDE3LTA3LTA2ICBBbnR0aSBL
b2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBXS1dlYlNpdGVEYXRhU3RvcmUu
cmVtb3ZlRGF0YU9mVHlwZXMgc2hvdWxkIHdhaXQgdW50aWwgZGlzayBjYWNoZSBmaWxlcyBhcmUg
YWN0dWFsbHkgcmVtb3ZlZCBiZWZvcmUgaW52b2tpbmcgY29tcGxldGlvbiBoYW5kbGVyCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzQyMjQKKyAgICAg
ICAgPHJkYXI6Ly9wcm9ibGVtLzMzMDY3NTQ1PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIEN1cnJlbnRseSB3ZSBkaXNwYXRjaCB0aGUgZmlsZSBkZWxl
dGlvbiBvcGVyYXRpb25zIHRvIGEgYmFja2dyb3VuZCBxdWV1ZSBhbmQgY2FsbCBjb21wbGV0aW9u
CisgICAgICAgIGhhbmRsZXIgd2l0aG91dCB3YWl0aW5nIGZvciB0aGUgSS9PIHRvIGNvbXBsZXRl
LgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpjbGVhckRpc2tDYWNoZUVudHJpZXMpOgorCisgICAgICAgICAgICBDYWxsIGEg
bmV3IHZlcnNpb24gb2YgTmV0d29ya0NhY2hlOjpyZW1vdmUoKS4KKyAgICAgICAgICAgIE5vdGUg
dGhhdCBpdCBpcyBmaW5lIHRvIGNhbGwgdGhpcyB3aXRoIGFuIGVtcHR5IHZlY3Rvci4KKworICAg
ICAgICAqIE5ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZS5jcHA6CisgICAgICAgIChX
ZWJLaXQ6Ok5ldHdvcmtDYWNoZTo6Q2FjaGU6OnJlbW92ZSk6CisKKyAgICAgICAgICAgIFRoaXMg
dGFrZXMgYSB2ZWN0b3Igb2Yga2V5cyBhbmQgYSBjb21wbGV0aW9uIGhhbmRsZXIuCisKKyAgICAg
ICAgKiBOZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGUuaDoKKyAgICAgICAgKiBOZXR3
b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdG9yYWdlLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6TmV0d29ya0NhY2hlOjpTdG9yYWdlOjpyZW1vdmUpOgorCisgICAgICAgICAgICBSZW1vdmUg
ZmlsZXMgZm9yIGFsbCB0aGUgcHJvdmlkZWQga2V5cyBpbiBhIHF1ZXVlIGFuZCBpbnZva2UgdGhl
IGNvbXBsZXRpb24gaGFuZGxlciBpbiB0aGUgbWFpbiB0aHJlYWQgd2hlbiBkb25lLgorCisgICAg
ICAgICogTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlU3RvcmFnZS5oOgorCiAyMDE3
LTA3LTA2ICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgogCiAgICAgICAgIFtX
SzJdIFJlc291cmNlTG9hZFN0YXRpc3RpY3Mgc2hvdWxkIGJhdGNoIGl0cyB3cml0ZXMKSW5kZXg6
IFNvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5jcHAJ
KHJldmlzaW9uIDIxOTEyMSkKKysrIFNvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL05ldHdv
cmtQcm9jZXNzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDQ5LDEwICs0NDksNyBAQCBzdGF0aWMg
dm9pZCBjbGVhckRpc2tDYWNoZUVudHJpZXMoY29uc3QgCiAgICAgICAgICAgICAgICAgcmV0dXJu
OwogICAgICAgICAgICAgfQogCi0gICAgICAgICAgICBmb3IgKGF1dG8mIGtleSA6IGNhY2hlS2V5
c1RvRGVsZXRlKQotICAgICAgICAgICAgICAgIE5ldHdvcmtDYWNoZTo6c2luZ2xldG9uKCkucmVt
b3ZlKGtleSk7Ci0KLSAgICAgICAgICAgIFJ1bkxvb3A6Om1haW4oKS5kaXNwYXRjaChXVEZNb3Zl
KGNvbXBsZXRpb25IYW5kbGVyKSk7CisgICAgICAgICAgICBOZXR3b3JrQ2FjaGU6OnNpbmdsZXRv
bigpLnJlbW92ZShjYWNoZUtleXNUb0RlbGV0ZSwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikp
OwogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9KTsKIApJbmRleDogU291cmNlL1dlYktp
dDIvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGUuY3BwCShyZXZp
c2lvbiAyMTkxMjEpCisrKyBTb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3
b3JrQ2FjaGUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01MDUsNiArNTA1LDEzIEBAIHZvaWQgQ2Fj
aGU6OnJlbW92ZShjb25zdCBXZWJDb3JlOjpSZXNvdXIKICAgICByZW1vdmUobWFrZUNhY2hlS2V5
KHJlcXVlc3QpKTsKIH0KIAordm9pZCBDYWNoZTo6cmVtb3ZlKGNvbnN0IFZlY3RvcjxLZXk+JiBr
ZXlzLCBGdW5jdGlvbjx2b2lkICgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIEFTU0VS
VChpc0VuYWJsZWQoKSk7CisKKyAgICBtX3N0b3JhZ2UtPnJlbW92ZShrZXlzLCBXVEZNb3ZlKGNv
bXBsZXRpb25IYW5kbGVyKSk7Cit9CisKIHZvaWQgQ2FjaGU6OnRyYXZlcnNlKEZ1bmN0aW9uPHZv
aWQgKGNvbnN0IFRyYXZlcnNhbEVudHJ5Kik+JiYgdHJhdmVyc2VIYW5kbGVyKQogewogICAgIEFT
U0VSVChpc0VuYWJsZWQoKSk7CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9j
YWNoZS9OZXR3b3JrQ2FjaGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9OZXR3b3Jr
UHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGUuaAkocmV2aXNpb24gMjE5MTIxKQorKysgU291cmNl
L1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTEyMSw2ICsxMjEsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCB0cmF2ZXJzZShGdW5jdGlv
bjx2b2lkIChjb25zdCBUcmF2ZXJzYWxFbnRyeSopPiYmKTsKICAgICB2b2lkIHJlbW92ZShjb25z
dCBLZXkmKTsKICAgICB2b2lkIHJlbW92ZShjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3Qm
KTsKKyAgICB2b2lkIHJlbW92ZShjb25zdCBWZWN0b3I8S2V5PiYsIEZ1bmN0aW9uPHZvaWQgKCk+
JiYpOwogCiAgICAgdm9pZCBjbGVhcigpOwogICAgIHZvaWQgY2xlYXIoc3RkOjpjaHJvbm86OnN5
c3RlbV9jbG9jazo6dGltZV9wb2ludCBtb2RpZmllZFNpbmNlLCBGdW5jdGlvbjx2b2lkICgpPiYm
IGNvbXBsZXRpb25IYW5kbGVyKTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNz
L2NhY2hlL05ldHdvcmtDYWNoZVN0b3JhZ2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQyL05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0b3JhZ2UuY3BwCShyZXZpc2lv
biAyMTkxMjEpCisrKyBTb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3Jr
Q2FjaGVTdG9yYWdlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTYwLDYgKzU2MCwzMSBAQCB2b2lk
IFN0b3JhZ2U6OnJlbW92ZShjb25zdCBLZXkmIGtleSkKICAgICB9KTsKIH0KIAordm9pZCBTdG9y
YWdlOjpyZW1vdmUoY29uc3QgVmVjdG9yPEtleT4mIGtleXMsIEZ1bmN0aW9uPHZvaWQgKCk+JiYg
Y29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgVmVjdG9yPEtleT4ga2V5c1RvUmVtb3ZlOworICAg
IGtleXNUb1JlbW92ZS5yZXNlcnZlQ2FwYWNpdHkoa2V5cy5zaXplKCkpOworCisgICAgZm9yIChh
dXRvJiBrZXkgOiBrZXlzKSB7CisgICAgICAgIGlmICghbWF5Q29udGFpbihrZXkpKQorICAgICAg
ICAgICAgY29udGludWU7CisgICAgICAgIHJlbW92ZUZyb21QZW5kaW5nV3JpdGVPcGVyYXRpb25z
KGtleSk7CisgICAgICAgIGtleXNUb1JlbW92ZS5hcHBlbmRVbmNoZWNrZWQoa2V5KTsKKyAgICB9
CisKKyAgICBzZXJpYWxCYWNrZ3JvdW5kSU9RdWV1ZSgpLmRpc3BhdGNoKFt0aGlzLCBrZXlzVG9S
ZW1vdmUgPSBXVEZNb3ZlKGtleXNUb1JlbW92ZSksIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92
ZShjb21wbGV0aW9uSGFuZGxlcildICgpIG11dGFibGUgeworICAgICAgICBmb3IgKGF1dG8mIGtl
eSA6IGtleXNUb1JlbW92ZSkgeworICAgICAgICAgICAgV2ViQ29yZTo6ZGVsZXRlRmlsZShyZWNv
cmRQYXRoRm9yS2V5KGtleSkpOworICAgICAgICAgICAgbV9ibG9iU3RvcmFnZS5yZW1vdmUoYmxv
YlBhdGhGb3JLZXkoa2V5KSk7CisgICAgICAgIH0KKyAgICAgICAgaWYgKGNvbXBsZXRpb25IYW5k
bGVyKSB7CisgICAgICAgICAgICBSdW5Mb29wOjptYWluKCkuZGlzcGF0Y2goW2NvbXBsZXRpb25I
YW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildIHsKKyAgICAgICAgICAgICAgICBj
b21wbGV0aW9uSGFuZGxlcigpOworICAgICAgICAgICAgfSk7CisgICAgICAgIH0KKyAgICB9KTsK
K30KKwogdm9pZCBTdG9yYWdlOjp1cGRhdGVGaWxlTW9kaWZpY2F0aW9uVGltZShjb25zdCBTdHJp
bmcmIHBhdGgpCiB7CiAgICAgc2VyaWFsQmFja2dyb3VuZElPUXVldWUoKS5kaXNwYXRjaChbcGF0
aCA9IHBhdGguaXNvbGF0ZWRDb3B5KCldIHsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL05ldHdvcmtQ
cm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0b3JhZ2UuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdG9yYWdlLmgJKHJldmlz
aW9uIDIxOTEyMSkKKysrIFNvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdv
cmtDYWNoZVN0b3JhZ2UuaAkod29ya2luZyBjb3B5KQpAQCAtNjgsNiArNjgsNyBAQCBwdWJsaWM6
CiAgICAgdm9pZCBzdG9yZShjb25zdCBSZWNvcmQmLCBNYXBwZWRCb2R5SGFuZGxlciYmKTsKIAog
ICAgIHZvaWQgcmVtb3ZlKGNvbnN0IEtleSYpOworICAgIHZvaWQgcmVtb3ZlKGNvbnN0IFZlY3Rv
cjxLZXk+JiwgRnVuY3Rpb248dm9pZCAoKT4mJik7CiAgICAgdm9pZCBjbGVhcihjb25zdCBTdHJp
bmcmIHR5cGUsIHN0ZDo6Y2hyb25vOjpzeXN0ZW1fY2xvY2s6OnRpbWVfcG9pbnQgbW9kaWZpZWRT
aW5jZVRpbWUsIEZ1bmN0aW9uPHZvaWQgKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpOwogCiAgICAg
c3RydWN0IFJlY29yZEluZm8gewo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>314773</attachid>
            <date>2017-07-06 16:19:24 -0700</date>
            <delta_ts>2017-07-06 16:35:11 -0700</delta_ts>
            <desc>patch</desc>
            <filename>network-cache-bulk-delete-2.patch</filename>
            <type>text/plain</type>
            <size>6171</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDIxOTIyMikKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM3IEBACisyMDE3LTA3LTA2ICBBbnR0aSBL
b2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBXS1dlYlNpdGVEYXRhU3RvcmUu
cmVtb3ZlRGF0YU9mVHlwZXMgc2hvdWxkIHdhaXQgdW50aWwgZGlzayBjYWNoZSBmaWxlcyBhcmUg
YWN0dWFsbHkgcmVtb3ZlZCBiZWZvcmUgaW52b2tpbmcgY29tcGxldGlvbiBoYW5kbGVyCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzQyMjQKKyAgICAg
ICAgPHJkYXI6Ly9wcm9ibGVtLzMzMDY3NTQ1PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIEN1cnJlbnRseSB3ZSBkaXNwYXRjaCB0aGUgZmlsZSBkZWxl
dGlvbiBvcGVyYXRpb25zIHRvIGEgYmFja2dyb3VuZCBxdWV1ZSBhbmQgY2FsbCBjb21wbGV0aW9u
CisgICAgICAgIGhhbmRsZXIgd2l0aG91dCB3YWl0aW5nIGZvciB0aGUgSS9PIHRvIGNvbXBsZXRl
LgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpjbGVhckRpc2tDYWNoZUVudHJpZXMpOgorCisgICAgICAgICAgICBDYWxsIGEg
bmV3IHZlcnNpb24gb2YgTmV0d29ya0NhY2hlOjpyZW1vdmUoKSBmb3IgYnVsayBkZWxldGlvbi4K
KyAgICAgICAgICAgIE5vdGUgdGhhdCBpdCBpcyBmaW5lIHRvIGNhbGwgdGhpcyB3aXRoIGFuIGVt
cHR5IHZlY3Rvci4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNo
ZS5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtDYWNoZTo6Q2FjaGU6OnJlbW92ZSk6CisK
KyAgICAgICAgICAgIEJ1bGsgZGVsZXRpb24gd2l0aCBhIGNvbXBsZXRpb24gaGFuZGxlci4KKwor
ICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ2FjaGU6OkNhY2hlOjpkZWxldGVGaWxlKTogQWRkZWQu
CisKKyAgICAgICAgICAgIEZhY3RvciB0byBhIGhlbHBlciBmdW5jdGlvbi4KKworICAgICAgICAq
IE5ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZS5oOgorICAgICAgICAqIE5ldHdvcmtQ
cm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0b3JhZ2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpO
ZXR3b3JrQ2FjaGU6OlN0b3JhZ2U6OnJlbW92ZSk6CisKKyAgICAgICAgICAgIFJlbW92ZSBmaWxl
cyBmb3IgYWxsIHRoZSBwcm92aWRlZCBrZXlzIGluIGEgcXVldWUgYW5kIGludm9rZSB0aGUgY29t
cGxldGlvbiBoYW5kbGVyIGluIHRoZSBtYWluIHRocmVhZCB3aGVuIGRvbmUuCisKKyAgICAgICAg
KiBOZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdG9yYWdlLmg6CisKIDIwMTctMDct
MDYgIEJyZW50IEZ1bGdoYW0gIDxiZnVsZ2hhbUBhcHBsZS5jb20+CiAKICAgICAgICAgW1dLMl0g
UmVzb3VyY2VMb2FkU3RhdGlzdGljcyBzaG91bGQgYmF0Y2ggaXRzIHdyaXRlcwpJbmRleDogU291
cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcAkocmV2
aXNpb24gMjE5MTIxKQorKysgU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1By
b2Nlc3MuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00NDksMTAgKzQ0OSw3IEBAIHN0YXRpYyB2b2lk
IGNsZWFyRGlza0NhY2hlRW50cmllcyhjb25zdCAKICAgICAgICAgICAgICAgICByZXR1cm47CiAg
ICAgICAgICAgICB9CiAKLSAgICAgICAgICAgIGZvciAoYXV0byYga2V5IDogY2FjaGVLZXlzVG9E
ZWxldGUpCi0gICAgICAgICAgICAgICAgTmV0d29ya0NhY2hlOjpzaW5nbGV0b24oKS5yZW1vdmUo
a2V5KTsKLQotICAgICAgICAgICAgUnVuTG9vcDo6bWFpbigpLmRpc3BhdGNoKFdURk1vdmUoY29t
cGxldGlvbkhhbmRsZXIpKTsKKyAgICAgICAgICAgIE5ldHdvcmtDYWNoZTo6c2luZ2xldG9uKCku
cmVtb3ZlKGNhY2hlS2V5c1RvRGVsZXRlLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CiAg
ICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0pOwogCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9O
ZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGUuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZS5jcHAJKHJldmlzaW9u
IDIxOTEyMSkKKysrIFNvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtD
YWNoZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTUwNSw2ICs1MDUsMTMgQEAgdm9pZCBDYWNoZTo6
cmVtb3ZlKGNvbnN0IFdlYkNvcmU6OlJlc291cgogICAgIHJlbW92ZShtYWtlQ2FjaGVLZXkocmVx
dWVzdCkpOwogfQogCit2b2lkIENhY2hlOjpyZW1vdmUoY29uc3QgVmVjdG9yPEtleT4mIGtleXMs
IEZ1bmN0aW9uPHZvaWQgKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgQVNTRVJUKGlz
RW5hYmxlZCgpKTsKKworICAgIG1fc3RvcmFnZS0+cmVtb3ZlKGtleXMsIFdURk1vdmUoY29tcGxl
dGlvbkhhbmRsZXIpKTsKK30KKwogdm9pZCBDYWNoZTo6dHJhdmVyc2UoRnVuY3Rpb248dm9pZCAo
Y29uc3QgVHJhdmVyc2FsRW50cnkqKT4mJiB0cmF2ZXJzZUhhbmRsZXIpCiB7CiAgICAgQVNTRVJU
KGlzRW5hYmxlZCgpKTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NhY2hl
L05ldHdvcmtDYWNoZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9j
ZXNzL2NhY2hlL05ldHdvcmtDYWNoZS5oCShyZXZpc2lvbiAyMTkxMjEpCisrKyBTb3VyY2UvV2Vi
S2l0Mi9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGUuaAkod29ya2luZyBjb3B5KQpA
QCAtMTIxLDYgKzEyMSw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHRyYXZlcnNlKEZ1bmN0aW9uPHZv
aWQgKGNvbnN0IFRyYXZlcnNhbEVudHJ5Kik+JiYpOwogICAgIHZvaWQgcmVtb3ZlKGNvbnN0IEtl
eSYpOwogICAgIHZvaWQgcmVtb3ZlKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpOwor
ICAgIHZvaWQgcmVtb3ZlKGNvbnN0IFZlY3RvcjxLZXk+JiwgRnVuY3Rpb248dm9pZCAoKT4mJik7
CiAKICAgICB2b2lkIGNsZWFyKCk7CiAgICAgdm9pZCBjbGVhcihzdGQ6OmNocm9ubzo6c3lzdGVt
X2Nsb2NrOjp0aW1lX3BvaW50IG1vZGlmaWVkU2luY2UsIEZ1bmN0aW9uPHZvaWQgKCk+JiYgY29t
cGxldGlvbkhhbmRsZXIpOwpJbmRleDogU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvY2Fj
aGUvTmV0d29ya0NhY2hlU3RvcmFnZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIv
TmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlU3RvcmFnZS5jcHAJKHJldmlzaW9uIDIx
OTEyMSkKKysrIFNvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNo
ZVN0b3JhZ2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01NTUsMTEgKzU1NSw0NCBAQCB2b2lkIFN0
b3JhZ2U6OnJlbW92ZShjb25zdCBLZXkmIGtleSkKICAgICByZW1vdmVGcm9tUGVuZGluZ1dyaXRl
T3BlcmF0aW9ucyhrZXkpOwogCiAgICAgc2VyaWFsQmFja2dyb3VuZElPUXVldWUoKS5kaXNwYXRj
aChbdGhpcywga2V5XSB7Ci0gICAgICAgIFdlYkNvcmU6OmRlbGV0ZUZpbGUocmVjb3JkUGF0aEZv
cktleShrZXkpKTsKLSAgICAgICAgbV9ibG9iU3RvcmFnZS5yZW1vdmUoYmxvYlBhdGhGb3JLZXko
a2V5KSk7CisgICAgICAgIGRlbGV0ZUZpbGUoa2V5KTsKICAgICB9KTsKIH0KIAordm9pZCBTdG9y
YWdlOjpyZW1vdmUoY29uc3QgVmVjdG9yPEtleT4mIGtleXMsIEZ1bmN0aW9uPHZvaWQgKCk+JiYg
Y29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKwor
ICAgIFZlY3RvcjxLZXk+IGtleXNUb1JlbW92ZTsKKyAgICBrZXlzVG9SZW1vdmUucmVzZXJ2ZUNh
cGFjaXR5KGtleXMuc2l6ZSgpKTsKKworICAgIGZvciAoYXV0byYga2V5IDoga2V5cykgeworICAg
ICAgICBpZiAoIW1heUNvbnRhaW4oa2V5KSkKKyAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAg
ICByZW1vdmVGcm9tUGVuZGluZ1dyaXRlT3BlcmF0aW9ucyhrZXkpOworICAgICAgICBrZXlzVG9S
ZW1vdmUudW5jaGVja2VkQXBwZW5kKGtleSk7CisgICAgfQorCisgICAgc2VyaWFsQmFja2dyb3Vu
ZElPUXVldWUoKS5kaXNwYXRjaChbdGhpcywga2V5c1RvUmVtb3ZlID0gV1RGTW92ZShrZXlzVG9S
ZW1vdmUpLCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXSAo
KSBtdXRhYmxlIHsKKyAgICAgICAgZm9yIChhdXRvJiBrZXkgOiBrZXlzVG9SZW1vdmUpCisgICAg
ICAgICAgICBkZWxldGVGaWxlKGtleSk7CisKKyAgICAgICAgaWYgKGNvbXBsZXRpb25IYW5kbGVy
KSB7CisgICAgICAgICAgICBSdW5Mb29wOjptYWluKCkuZGlzcGF0Y2goW2NvbXBsZXRpb25IYW5k
bGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcildIHsKKyAgICAgICAgICAgICAgICBjb21w
bGV0aW9uSGFuZGxlcigpOworICAgICAgICAgICAgfSk7CisgICAgICAgIH0KKyAgICB9KTsKK30K
Kwordm9pZCBTdG9yYWdlOjpkZWxldGVGaWxlKGNvbnN0IEtleSYga2V5KQoreworICAgIEFTU0VS
VCghUnVuTG9vcDo6aXNNYWluKCkpOworCisgICAgV2ViQ29yZTo6ZGVsZXRlRmlsZShyZWNvcmRQ
YXRoRm9yS2V5KGtleSkpOworICAgIG1fYmxvYlN0b3JhZ2UucmVtb3ZlKGJsb2JQYXRoRm9yS2V5
KGtleSkpOworfQorCiB2b2lkIFN0b3JhZ2U6OnVwZGF0ZUZpbGVNb2RpZmljYXRpb25UaW1lKGNv
bnN0IFN0cmluZyYgcGF0aCkKIHsKICAgICBzZXJpYWxCYWNrZ3JvdW5kSU9RdWV1ZSgpLmRpc3Bh
dGNoKFtwYXRoID0gcGF0aC5pc29sYXRlZENvcHkoKV0gewpJbmRleDogU291cmNlL1dlYktpdDIv
TmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlU3RvcmFnZS5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0b3JhZ2Uu
aAkocmV2aXNpb24gMjE5MTIxKQorKysgU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvY2Fj
aGUvTmV0d29ya0NhY2hlU3RvcmFnZS5oCSh3b3JraW5nIGNvcHkpCkBAIC02OCw2ICs2OCw3IEBA
IHB1YmxpYzoKICAgICB2b2lkIHN0b3JlKGNvbnN0IFJlY29yZCYsIE1hcHBlZEJvZHlIYW5kbGVy
JiYpOwogCiAgICAgdm9pZCByZW1vdmUoY29uc3QgS2V5Jik7CisgICAgdm9pZCByZW1vdmUoY29u
c3QgVmVjdG9yPEtleT4mLCBGdW5jdGlvbjx2b2lkICgpPiYmKTsKICAgICB2b2lkIGNsZWFyKGNv
bnN0IFN0cmluZyYgdHlwZSwgc3RkOjpjaHJvbm86OnN5c3RlbV9jbG9jazo6dGltZV9wb2ludCBt
b2RpZmllZFNpbmNlVGltZSwgRnVuY3Rpb248dm9pZCAoKT4mJiBjb21wbGV0aW9uSGFuZGxlcik7
CiAKICAgICBzdHJ1Y3QgUmVjb3JkSW5mbyB7CkBAIC0xNDMsNiArMTQ0LDcgQEAgcHJpdmF0ZToK
ICAgICBib29sIG1heUNvbnRhaW5CbG9iKGNvbnN0IEtleSYpIGNvbnN0OwogCiAgICAgdm9pZCBh
ZGRUb1JlY29yZEZpbHRlcihjb25zdCBLZXkmKTsKKyAgICB2b2lkIGRlbGV0ZUZpbGUoY29uc3Qg
S2V5Jik7CiAKICAgICBjb25zdCBTdHJpbmcgbV9iYXNlUGF0aDsKICAgICBjb25zdCBTdHJpbmcg
bV9yZWNvcmRzUGF0aDsK
</data>
<flag name="review"
          id="335634"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>314777</attachid>
            <date>2017-07-06 16:35:11 -0700</date>
            <delta_ts>2017-07-07 00:22:15 -0700</delta_ts>
            <desc>patch</desc>
            <filename>network-cache-bulk-delete-3.patch</filename>
            <type>text/plain</type>
            <size>6089</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDIxOTIyMikKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM3IEBACisyMDE3LTA3LTA2ICBBbnR0aSBL
b2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBXS1dlYlNpdGVEYXRhU3RvcmUu
cmVtb3ZlRGF0YU9mVHlwZXMgc2hvdWxkIHdhaXQgdW50aWwgZGlzayBjYWNoZSBmaWxlcyBhcmUg
YWN0dWFsbHkgcmVtb3ZlZCBiZWZvcmUgaW52b2tpbmcgY29tcGxldGlvbiBoYW5kbGVyCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzQyMjQKKyAgICAg
ICAgPHJkYXI6Ly9wcm9ibGVtLzMzMDY3NTQ1PgorCisgICAgICAgIFJldmlld2VkIGJ5IFNhbSBX
ZWluaWcuCisKKyAgICAgICAgQ3VycmVudGx5IHdlIGRpc3BhdGNoIGZpbGUgZGVsZXRpb24gb3Bl
cmF0aW9ucyB0byBhIGJhY2tncm91bmQgcXVldWUgYW5kIGNhbGwgdGhlIGNvbXBsZXRpb24KKyAg
ICAgICAgaGFuZGxlciB3aXRob3V0IHdhaXRpbmcgZm9yIHRoZSBJL08gdG8gY29tcGxldGUuCisK
KyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5jcHA6CisgICAgICAgIChX
ZWJLaXQ6OmNsZWFyRGlza0NhY2hlRW50cmllcyk6CisKKyAgICAgICAgICAgIENhbGwgYSBuZXcg
dmVyc2lvbiBvZiBOZXR3b3JrQ2FjaGU6OnJlbW92ZSgpIGZvciBidWxrIGRlbGV0aW9uLgorICAg
ICAgICAgICAgTm90ZSB0aGF0IGl0IGlzIGZpbmUgdG8gY2FsbCB0aGlzIHdpdGggYW4gZW1wdHkg
dmVjdG9yLgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlLmNw
cDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0NhY2hlOjpDYWNoZTo6cmVtb3ZlKToKKworICAg
ICAgICAgICAgQnVsayBkZWxldGlvbiB3aXRoIGEgY29tcGxldGlvbiBoYW5kbGVyLgorCisgICAg
ICAgIChXZWJLaXQ6Ok5ldHdvcmtDYWNoZTo6Q2FjaGU6OmRlbGV0ZUZpbGVzKTogQWRkZWQuCisK
KyAgICAgICAgICAgIEZhY3RvciB0byBhIGhlbHBlciBmdW5jdGlvbi4KKworICAgICAgICAqIE5l
dHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZS5oOgorICAgICAgICAqIE5ldHdvcmtQcm9j
ZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0b3JhZ2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpOZXR3
b3JrQ2FjaGU6OlN0b3JhZ2U6OnJlbW92ZSk6CisKKyAgICAgICAgICAgIFJlbW92ZSBmaWxlcyBm
b3IgYWxsIHRoZSBwcm92aWRlZCBrZXlzIGluIGEgcXVldWUgYW5kIGludm9rZSB0aGUgY29tcGxl
dGlvbiBoYW5kbGVyIGluIHRoZSBtYWluIHRocmVhZCB3aGVuIGRvbmUuCisKKyAgICAgICAgKiBO
ZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdG9yYWdlLmg6CisKIDIwMTctMDctMDYg
IEJyZW50IEZ1bGdoYW0gIDxiZnVsZ2hhbUBhcHBsZS5jb20+CiAKICAgICAgICAgW1dLMl0gUmVz
b3VyY2VMb2FkU3RhdGlzdGljcyBzaG91bGQgYmF0Y2ggaXRzIHdyaXRlcwpJbmRleDogU291cmNl
L1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcAkocmV2aXNp
b24gMjE5MTIxKQorKysgU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nl
c3MuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00NDksMTAgKzQ0OSw3IEBAIHN0YXRpYyB2b2lkIGNs
ZWFyRGlza0NhY2hlRW50cmllcyhjb25zdCAKICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAg
ICAgICAgICB9CiAKLSAgICAgICAgICAgIGZvciAoYXV0byYga2V5IDogY2FjaGVLZXlzVG9EZWxl
dGUpCi0gICAgICAgICAgICAgICAgTmV0d29ya0NhY2hlOjpzaW5nbGV0b24oKS5yZW1vdmUoa2V5
KTsKLQotICAgICAgICAgICAgUnVuTG9vcDo6bWFpbigpLmRpc3BhdGNoKFdURk1vdmUoY29tcGxl
dGlvbkhhbmRsZXIpKTsKKyAgICAgICAgICAgIE5ldHdvcmtDYWNoZTo6c2luZ2xldG9uKCkucmVt
b3ZlKGNhY2hlS2V5c1RvRGVsZXRlLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CiAgICAg
ICAgICAgICByZXR1cm47CiAgICAgICAgIH0pOwogCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9OZXR3
b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZS5jcHAJKHJldmlzaW9uIDIx
OTEyMSkKKysrIFNvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNo
ZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTUwNSw2ICs1MDUsMTMgQEAgdm9pZCBDYWNoZTo6cmVt
b3ZlKGNvbnN0IFdlYkNvcmU6OlJlc291cgogICAgIHJlbW92ZShtYWtlQ2FjaGVLZXkocmVxdWVz
dCkpOwogfQogCit2b2lkIENhY2hlOjpyZW1vdmUoY29uc3QgVmVjdG9yPEtleT4mIGtleXMsIEZ1
bmN0aW9uPHZvaWQgKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgQVNTRVJUKGlzRW5h
YmxlZCgpKTsKKworICAgIG1fc3RvcmFnZS0+cmVtb3ZlKGtleXMsIFdURk1vdmUoY29tcGxldGlv
bkhhbmRsZXIpKTsKK30KKwogdm9pZCBDYWNoZTo6dHJhdmVyc2UoRnVuY3Rpb248dm9pZCAoY29u
c3QgVHJhdmVyc2FsRW50cnkqKT4mJiB0cmF2ZXJzZUhhbmRsZXIpCiB7CiAgICAgQVNTRVJUKGlz
RW5hYmxlZCgpKTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NhY2hlL05l
dHdvcmtDYWNoZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNz
L2NhY2hlL05ldHdvcmtDYWNoZS5oCShyZXZpc2lvbiAyMTkxMjEpCisrKyBTb3VyY2UvV2ViS2l0
Mi9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGUuaAkod29ya2luZyBjb3B5KQpAQCAt
MTIxLDYgKzEyMSw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHRyYXZlcnNlKEZ1bmN0aW9uPHZvaWQg
KGNvbnN0IFRyYXZlcnNhbEVudHJ5Kik+JiYpOwogICAgIHZvaWQgcmVtb3ZlKGNvbnN0IEtleSYp
OwogICAgIHZvaWQgcmVtb3ZlKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpOworICAg
IHZvaWQgcmVtb3ZlKGNvbnN0IFZlY3RvcjxLZXk+JiwgRnVuY3Rpb248dm9pZCAoKT4mJik7CiAK
ICAgICB2b2lkIGNsZWFyKCk7CiAgICAgdm9pZCBjbGVhcihzdGQ6OmNocm9ubzo6c3lzdGVtX2Ns
b2NrOjp0aW1lX3BvaW50IG1vZGlmaWVkU2luY2UsIEZ1bmN0aW9uPHZvaWQgKCk+JiYgY29tcGxl
dGlvbkhhbmRsZXIpOwpJbmRleDogU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvY2FjaGUv
TmV0d29ya0NhY2hlU3RvcmFnZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvTmV0
d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlU3RvcmFnZS5jcHAJKHJldmlzaW9uIDIxOTEy
MSkKKysrIFNvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0
b3JhZ2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01NTUsMTEgKzU1NSw0MSBAQCB2b2lkIFN0b3Jh
Z2U6OnJlbW92ZShjb25zdCBLZXkmIGtleSkKICAgICByZW1vdmVGcm9tUGVuZGluZ1dyaXRlT3Bl
cmF0aW9ucyhrZXkpOwogCiAgICAgc2VyaWFsQmFja2dyb3VuZElPUXVldWUoKS5kaXNwYXRjaChb
dGhpcywga2V5XSB7Ci0gICAgICAgIFdlYkNvcmU6OmRlbGV0ZUZpbGUocmVjb3JkUGF0aEZvcktl
eShrZXkpKTsKLSAgICAgICAgbV9ibG9iU3RvcmFnZS5yZW1vdmUoYmxvYlBhdGhGb3JLZXkoa2V5
KSk7CisgICAgICAgIGRlbGV0ZUZpbGVzKGtleSk7CiAgICAgfSk7CiB9CiAKK3ZvaWQgU3RvcmFn
ZTo6cmVtb3ZlKGNvbnN0IFZlY3RvcjxLZXk+JiBrZXlzLCBGdW5jdGlvbjx2b2lkICgpPiYmIGNv
bXBsZXRpb25IYW5kbGVyKQoreworICAgIEFTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CisKKyAg
ICBWZWN0b3I8S2V5PiBrZXlzVG9SZW1vdmU7CisgICAga2V5c1RvUmVtb3ZlLnJlc2VydmVJbml0
aWFsQ2FwYWNpdHkoa2V5cy5zaXplKCkpOworCisgICAgZm9yIChhdXRvJiBrZXkgOiBrZXlzKSB7
CisgICAgICAgIGlmICghbWF5Q29udGFpbihrZXkpKQorICAgICAgICAgICAgY29udGludWU7Cisg
ICAgICAgIHJlbW92ZUZyb21QZW5kaW5nV3JpdGVPcGVyYXRpb25zKGtleSk7CisgICAgICAgIGtl
eXNUb1JlbW92ZS51bmNoZWNrZWRBcHBlbmQoa2V5KTsKKyAgICB9CisKKyAgICBzZXJpYWxCYWNr
Z3JvdW5kSU9RdWV1ZSgpLmRpc3BhdGNoKFt0aGlzLCBrZXlzVG9SZW1vdmUgPSBXVEZNb3ZlKGtl
eXNUb1JlbW92ZSksIGNvbXBsZXRpb25IYW5kbGVyID0gV1RGTW92ZShjb21wbGV0aW9uSGFuZGxl
cildICgpIG11dGFibGUgeworICAgICAgICBmb3IgKGF1dG8mIGtleSA6IGtleXNUb1JlbW92ZSkK
KyAgICAgICAgICAgIGRlbGV0ZUZpbGVzKGtleSk7CisKKyAgICAgICAgaWYgKGNvbXBsZXRpb25I
YW5kbGVyKQorICAgICAgICAgICAgUnVuTG9vcDo6bWFpbigpLmRpc3BhdGNoKFdURk1vdmUoY29t
cGxldGlvbkhhbmRsZXIpKTsKKyAgICB9KTsKK30KKwordm9pZCBTdG9yYWdlOjpkZWxldGVGaWxl
cyhjb25zdCBLZXkmIGtleSkKK3sKKyAgICBBU1NFUlQoIVJ1bkxvb3A6OmlzTWFpbigpKTsKKwor
ICAgIFdlYkNvcmU6OmRlbGV0ZUZpbGUocmVjb3JkUGF0aEZvcktleShrZXkpKTsKKyAgICBtX2Js
b2JTdG9yYWdlLnJlbW92ZShibG9iUGF0aEZvcktleShrZXkpKTsKK30KKwogdm9pZCBTdG9yYWdl
Ojp1cGRhdGVGaWxlTW9kaWZpY2F0aW9uVGltZShjb25zdCBTdHJpbmcmIHBhdGgpCiB7CiAgICAg
c2VyaWFsQmFja2dyb3VuZElPUXVldWUoKS5kaXNwYXRjaChbcGF0aCA9IHBhdGguaXNvbGF0ZWRD
b3B5KCldIHsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdv
cmtDYWNoZVN0b3JhZ2UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJv
Y2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdG9yYWdlLmgJKHJldmlzaW9uIDIxOTEyMSkKKysrIFNv
dXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0b3JhZ2UuaAko
d29ya2luZyBjb3B5KQpAQCAtNjgsNiArNjgsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBzdG9yZShj
b25zdCBSZWNvcmQmLCBNYXBwZWRCb2R5SGFuZGxlciYmKTsKIAogICAgIHZvaWQgcmVtb3ZlKGNv
bnN0IEtleSYpOworICAgIHZvaWQgcmVtb3ZlKGNvbnN0IFZlY3RvcjxLZXk+JiwgRnVuY3Rpb248
dm9pZCAoKT4mJik7CiAgICAgdm9pZCBjbGVhcihjb25zdCBTdHJpbmcmIHR5cGUsIHN0ZDo6Y2hy
b25vOjpzeXN0ZW1fY2xvY2s6OnRpbWVfcG9pbnQgbW9kaWZpZWRTaW5jZVRpbWUsIEZ1bmN0aW9u
PHZvaWQgKCk+JiYgY29tcGxldGlvbkhhbmRsZXIpOwogCiAgICAgc3RydWN0IFJlY29yZEluZm8g
ewpAQCAtMTQzLDYgKzE0NCw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtYXlDb250YWluQmxvYihj
b25zdCBLZXkmKSBjb25zdDsKIAogICAgIHZvaWQgYWRkVG9SZWNvcmRGaWx0ZXIoY29uc3QgS2V5
Jik7CisgICAgdm9pZCBkZWxldGVGaWxlcyhjb25zdCBLZXkmKTsKIAogICAgIGNvbnN0IFN0cmlu
ZyBtX2Jhc2VQYXRoOwogICAgIGNvbnN0IFN0cmluZyBtX3JlY29yZHNQYXRoOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>