<?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>63123</bug_id>
          
          <creation_ts>2011-06-22 02:04:54 -0700</creation_ts>
          <short_desc>run-webkit-websocketserver fails to stop websocket server</short_desc>
          <delta_ts>2011-06-22 12:52:34 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>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="Yuta Kitamura">yutak</reporter>
          <assigned_to name="Dirk Pranke">dpranke</assigned_to>
          <cc>dimich</cc>
    
    <cc>dpranke</cc>
    
    <cc>ojan</cc>
    
    <cc>tony</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>425095</commentid>
    <comment_count>0</comment_count>
    <who name="Yuta Kitamura">yutak</who>
    <bug_when>2011-06-22 02:04:54 -0700</bug_when>
    <thetext>If you manually run run-webkit-websocketserver, it fails to stop the pywebsocket server and leaks the process. It&apos;s probably caused by r89400.

$ Tools/Scripts/run-webkit-websocketserver 
Starting Web Socket server...
Started.
Hit [ENTER] to stop it.
Stopping Web Socket server...
Traceback (most recent call last):
  File &quot;/usr/local/google/home/yutak/build/Chromium/src/third_party/WebKit/Tools/Scripts/new-run-webkit-websocketserver&quot;, line 108, in &lt;module&gt;
    main()
  File &quot;/usr/local/google/home/yutak/build/Chromium/src/third_party/WebKit/Tools/Scripts/new-run-webkit-websocketserver&quot;, line 105, in main
    pywebsocket.stop(force=True)
TypeError: stop() got an unexpected keyword argument &apos;force&apos;
Stopped.

$ ps aux |grep pywebsocket
yutak    18693  0.0  0.0  48324  9548 pts/2    S    17:58   0:00 /usr/bin/python -u .../pywebsocket/mod_pywebsocket/standalone.py --server-host 127.0.0.1 --port 8880 ...
yutak    18788  0.0  0.0   6468   900 pts/2    S+   18:02   0:00 grep pywebsocket</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>425458</commentid>
    <comment_count>1</comment_count>
      <attachid>98212</attachid>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2011-06-22 12:24:05 -0700</bug_when>
    <thetext>Created attachment 98212
patch that fixes new-run-webkit-websocketserver and also adds better tests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>425460</commentid>
    <comment_count>2</comment_count>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2011-06-22 12:25:33 -0700</bug_when>
    <thetext>I&apos;ve fixed the bug that was causing new-run-webkit-websocketserver to crash, and revamped the integration tests so that we test that script as well as new-run-webkit-httpd .

The naming for the test class is pretty clumsy; I&apos;m open to better ideas, but the important thing to preserve is that testing both scripts is basically identical so we should share the test code as much as possible.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>425470</commentid>
    <comment_count>3</comment_count>
      <attachid>98217</attachid>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2011-06-22 12:35:58 -0700</bug_when>
    <thetext>Created attachment 98217
fix rename, update ChangeLog</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>425480</commentid>
    <comment_count>4</comment_count>
      <attachid>98220</attachid>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2011-06-22 12:45:36 -0700</bug_when>
    <thetext>Created attachment 98220
add dirname back in that was lost in the rename</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>425490</commentid>
    <comment_count>5</comment_count>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2011-06-22 12:52:34 -0700</bug_when>
    <thetext>Committed r89459: &lt;http://trac.webkit.org/changeset/89459&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>98212</attachid>
            <date>2011-06-22 12:24:05 -0700</date>
            <delta_ts>2011-06-22 12:35:52 -0700</delta_ts>
            <desc>patch that fixes new-run-webkit-websocketserver and also adds better tests</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>13835</size>
            <attacher name="Dirk Pranke">dpranke</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCAyMjkz
YmRlLi5kNjZlZWMwIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTEtMDYtMjIgIERpcmsgUHJhbmtlICA8ZHByYW5r
ZUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgcnVuLXdlYmtpdC13ZWJzb2NrZXRzZXJ2ZXIgZmFpbHMgdG8gc3RvcCB3ZWJzb2Nr
ZXQgc2VydmVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD02MzEyMworCisgICAgICAgICogU2NyaXB0cy9uZXctcnVuLXdlYmtpdC1odHRwZDoKKyAgICAg
ICAgKiBTY3JpcHRzL25ldy1ydW4td2Via2l0LXdlYnNvY2tldHNlcnZlcjoKKyAgICAgICAgKiBT
Y3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9uZXdfcnVuX3dlYmtpdF9zZXJ2ZXJfc2NyaXB0
X2ludGVncmF0aW9udGVzdC5weToKKwogMjAxMS0wNi0yMiAgQWRhbSBSb2JlbiAgPGFyb2JlbkBh
cHBsZS5jb20+CiAKICAgICAgICAgQWRkIGxpbmtzIHRvIGV4aXN0aW5nIGJ1Z3MgcmVsYXRlZCB0
byBmYWlsaW5nIHRlc3RzIG9uIFRlc3RGYWlsdXJlcyBwYWdlCmRpZmYgLS1naXQgYS9Ub29scy9T
Y3JpcHRzL25ldy1ydW4td2Via2l0LWh0dHBkIGIvVG9vbHMvU2NyaXB0cy9uZXctcnVuLXdlYmtp
dC1odHRwZAppbmRleCBlN2FjNWZlLi5jZjliNzNiIDEwMDc1NQotLS0gYS9Ub29scy9TY3JpcHRz
L25ldy1ydW4td2Via2l0LWh0dHBkCisrKyBiL1Rvb2xzL1NjcmlwdHMvbmV3LXJ1bi13ZWJraXQt
aHR0cGQKQEAgLTcwLDEyICs3MCw4IEBAIGRlZiBydW4ob3B0aW9ucyk6CiAgICAgICAgIGlmIG9w
dGlvbnMuc2VydmVyID09ICdzdGFydCc6CiAgICAgICAgICAgICBodHRwZC5zdGFydCgpCiAgICAg
ICAgIGVsc2U6Ci0gICAgICAgICAgICAjIEZJWE1FOiBXZSB1c2UgX3NodXRfZG93bl9odHRwX3Nl
cnZlcigpIGluc3RlYWQgb2Ygc3RvcF9odHRwX3NlcnZlcigpCi0gICAgICAgICAgICAjIGJlY2F1
c2Ugc3RvcCgpIG9ubHkgd29ya3MgaWYgc3RhcnQoKSB3YXMgY2FsbGVkIHByZXZpb3VzbHkgaW4g
dGhlCi0gICAgICAgICAgICAjIHNhbWUgcHJvY2Vzcy4gX3NodXRfZG93bigpIGlzIHRvbyBjb2Fy
c2UgYW5kIG1heSBraWxsIHVucmVsYXRlZCAKLSAgICAgICAgICAgICMgd2ViIHNlcnZlcnMsIHNv
IHRoaXMgaXMgYSBoYWNrLiBXZSBzaG91bGQgY2hhbmdlIHRoZSBpbnRlcmZhY2Ugc28gd2UKLSAg
ICAgICAgICAgICMgY2FuIHJlbHkgb24gcGlkIGZpbGVzIG9yIHNvbWV0aGluZy4KLSAgICAgICAg
ICAgIHBvcnRfb2JqLl9zaHV0X2Rvd25faHR0cF9zZXJ2ZXIoTm9uZSkKKyAgICAgICAgICAgIGh0
dHBkLnN0b3AoKQorCiAKIGRlZiBtYWluKCk6CiAgICAgb3B0aW9uX3BhcnNlciA9IG9wdHBhcnNl
Lk9wdGlvblBhcnNlcigpCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL25ldy1ydW4td2Via2l0
LXdlYnNvY2tldHNlcnZlciBiL1Rvb2xzL1NjcmlwdHMvbmV3LXJ1bi13ZWJraXQtd2Vic29ja2V0
c2VydmVyCm9sZCBtb2RlIDEwMDY0NApuZXcgbW9kZSAxMDA3NTUKaW5kZXggMzM1MDU4Mi4uZWU0
MGE4NAotLS0gYS9Ub29scy9TY3JpcHRzL25ldy1ydW4td2Via2l0LXdlYnNvY2tldHNlcnZlcgor
KysgYi9Ub29scy9TY3JpcHRzL25ldy1ydW4td2Via2l0LXdlYnNvY2tldHNlcnZlcgpAQCAtMTAy
LDcgKzEwMiw3IEBAIGRlZiBtYWluKCk6CiAgICAgaWYgJ3N0YXJ0JyA9PSBvcHRpb25zLnNlcnZl
cjoKICAgICAgICAgcHl3ZWJzb2NrZXQuc3RhcnQoKQogICAgIGVsc2U6Ci0gICAgICAgIHB5d2Vi
c29ja2V0LnN0b3AoZm9yY2U9VHJ1ZSkKKyAgICAgICAgcHl3ZWJzb2NrZXQuc3RvcCgpCiAKIGlm
ICdfX21haW5fXycgPT0gX19uYW1lX186CiAgICAgbWFpbigpCmRpZmYgLS1naXQgYS9Ub29scy9T
Y3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9uZXdfcnVuX3dlYmtpdF9zZXJ2ZXJfc2NyaXB0
X2ludGVncmF0aW9udGVzdC5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L25ld19ydW5fd2Via2l0X3NlcnZlcl9zY3JpcHRfaW50ZWdyYXRpb250ZXN0LnB5Cm5ldyBmaWxl
IG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjRkZGJjNTEKLS0tIC9kZXYvbnVsbAorKysgYi9U
b29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9uZXdfcnVuX3dlYmtpdF9zZXJ2ZXJf
c2NyaXB0X2ludGVncmF0aW9udGVzdC5weQpAQCAtMCwwICsxLDE0OSBAQAorIyBDb3B5cmlnaHQg
KEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyMKKyMgUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisjIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucyBhcmUKKyMgbWV0OgorIworIyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisjIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyMgICAg
KiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
CisjIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIKKyMgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorIyBkaXN0cmlidXRpb24uCisjICAgICogTmVpdGhl
ciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworIyBjb250cmli
dXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQg
ZnJvbQorIyB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJt
aXNzaW9uLgorIworIyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQg
SE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisjICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisjIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorIyBB
IFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhF
IENPUFlSSUdIVAorIyBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyMgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorIyBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyMg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZCisjIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyMgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisjIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisKKyIiIkludGVncmF0aW9uIHRlc3RzIGZvciB0aGUgbmV3LXJ1bi13ZWJraXQtaHR0cGQgYW5k
IG5ldy1ydW4td2Via2l0LXdlYnNvY2tldHNlcnZlciBzY3JpcHRzIiIiCisKK2ltcG9ydCBlcnJu
bworaW1wb3J0IG9zCitpbXBvcnQgc29ja2V0CitpbXBvcnQgc3VicHJvY2VzcworaW1wb3J0IHN5
cworaW1wb3J0IHRlbXBmaWxlCitpbXBvcnQgdW5pdHRlc3QKKworZnJvbSB3ZWJraXRweS5sYXlv
dXRfdGVzdHMucG9ydCBpbXBvcnQgcG9ydF90ZXN0Y2FzZQorCisKK2NsYXNzIEJhc2VUZXN0KHVu
aXR0ZXN0LlRlc3RDYXNlKToKKyAgICAiIiJCYXNpYyBmcmFtZXdvcmsgZm9yIHNjcmlwdCB0ZXN0
cy4iIiIKKyAgICBIT1NUID0gJ2xvY2FsaG9zdCcKKworICAgICMgT3ZlcnJpZGUgaW4gYWN0dWFs
IHRlc3QgY2xhc3Nlcy4KKyAgICBQT1JUUyA9IE5vbmUKKyAgICBTQ1JJUFRfTkFNRSA9IE5vbmUK
KworICAgIGRlZiBhc3NlcnRfc2VydmVyc19hcmVfZG93bihzZWxmLCBwb3J0cz1Ob25lKToKKyAg
ICAgICAgcG9ydHMgPSBwb3J0cyBvciBzZWxmLlBPUlRTCisgICAgICAgIGZvciBwb3J0IGluIHBv
cnRzOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHRlc3Rfc29ja2V0ID0gc29j
a2V0LnNvY2tldCgpCisgICAgICAgICAgICAgICAgdGVzdF9zb2NrZXQuY29ubmVjdCgoc2VsZi5I
T1NULCBwb3J0KSkKKyAgICAgICAgICAgICAgICBzZWxmLmZhaWwoKQorICAgICAgICAgICAgZXhj
ZXB0IElPRXJyb3IsIGU6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGUuZXJybm8g
aW4gKGVycm5vLkVDT05OUkVGVVNFRCwgZXJybm8uRUNPTk5SRVNFVCkpCisgICAgICAgICAgICBm
aW5hbGx5OgorICAgICAgICAgICAgICAgIHRlc3Rfc29ja2V0LmNsb3NlKCkKKworICAgIGRlZiBh
c3NlcnRfc2VydmVyc19hcmVfdXAoc2VsZiwgcG9ydHM9Tm9uZSk6CisgICAgICAgIHBvcnRzID0g
cG9ydHMgb3Igc2VsZi5QT1JUUworICAgICAgICBmb3IgcG9ydCBpbiBwb3J0czoKKyAgICAgICAg
ICAgIHRyeToKKyAgICAgICAgICAgICAgICB0ZXN0X3NvY2tldCA9IHNvY2tldC5zb2NrZXQoKQor
ICAgICAgICAgICAgICAgIHRlc3Rfc29ja2V0LmNvbm5lY3QoKHNlbGYuSE9TVCwgcG9ydCkpCisg
ICAgICAgICAgICBleGNlcHQgSU9FcnJvciwgZToKKyAgICAgICAgICAgICAgICBzZWxmLmZhaWwo
J2ZhaWxlZCB0byBjb25uZWN0IHRvICVzOiVkJyAlIChzZWxmLkhPU1QsIHBvcnQpKQorICAgICAg
ICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICB0ZXN0X3NvY2tldC5jbG9zZSgpCisKKyAg
ICBkZWYgcnVuX3NjcmlwdChzZWxmLCBhcmdzKToKKyAgICAgICAgc2NyaXB0X2RpciA9IG9zLnBh
dGguZGlybmFtZShvcy5wYXRoLmRpcm5hbWUob3MucGF0aC5kaXJuYW1lKG9zLnBhdGguYWJzcGF0
aChfX2ZpbGVfXykpKSkKKyAgICAgICAgc2NyaXB0X3BhdGggPSBvcy5wYXRoLmpvaW4oc2NyaXB0
X2Rpciwgc2VsZi5TQ1JJUFRfTkFNRSkKKyAgICAgICAgcmV0dXJuIHN1YnByb2Nlc3MuY2FsbChb
c3lzLmV4ZWN1dGFibGUsIHNjcmlwdF9wYXRoXSArIGFyZ3MsIHN0ZG91dD1zdWJwcm9jZXNzLlBJ
UEUsIHN0ZGVycj1zdWJwcm9jZXNzLlBJUEUpCisKKyAgICBkZWYgaW50ZWdyYXRpb25fdGVzdF9z
ZXJ2ZXJfX25vcm1hbChzZWxmKToKKyAgICAgICAgaWYgbm90IHNlbGYuU0NSSVBUX05BTUU6Cisg
ICAgICAgICAgICByZXR1cm4KKworICAgICAgICBzZWxmLmFzc2VydF9zZXJ2ZXJzX2FyZV9kb3du
KCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbHMoc2VsZi5ydW5fc2NyaXB0KFsnLS1zZXJ2ZXIn
LCAnc3RhcnQnXSksIDApCisgICAgICAgIHNlbGYuYXNzZXJ0X3NlcnZlcnNfYXJlX3VwKCkKKyAg
ICAgICAgc2VsZi5hc3NlcnRFcXVhbHMoc2VsZi5ydW5fc2NyaXB0KFsnLS1zZXJ2ZXInLCAnc3Rv
cCddKSwgMCkKKyAgICAgICAgc2VsZi5hc3NlcnRfc2VydmVyc19hcmVfZG93bigpCisKKyAgICBk
ZWYgaW50ZWdyYXRpb25fdGVzdF9zZXJ2ZXJfX2ZhaWxzKHNlbGYpOgorICAgICAgICBpZiBub3Qg
c2VsZi5TQ1JJUFRfTkFNRToKKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAgICMgVGVzdCB0
aGF0IGlmIGEgcG9ydCBpc24ndCBhdmFpbGFibGUsIHRoZSBjYWxsIGZhaWxzLgorICAgICAgICBm
b3IgcG9ydF9udW1iZXIgaW4gc2VsZi5QT1JUUzoKKyAgICAgICAgICAgIHRlc3Rfc29ja2V0ID0g
c29ja2V0LnNvY2tldCgpCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgdHJ5Ogor
ICAgICAgICAgICAgICAgICAgICB0ZXN0X3NvY2tldC5iaW5kKChzZWxmLkhPU1QsIHBvcnRfbnVt
YmVyKSkKKyAgICAgICAgICAgICAgICBleGNlcHQgc29ja2V0LmVycm9yLCBlOgorICAgICAgICAg
ICAgICAgICAgICBpZiBlLmVycm5vIGluIChlcnJuby5FQUREUklOVVNFLCBlcnJuby5FQUxSRUFE
WSk6CisgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmZhaWwoJ2NvdWxkIG5vdCBiaW5kIHRv
IHBvcnQgJWQ6ICVzJyAlIChwb3J0X251bWJlciwgc3RyKGUpKSkKKyAgICAgICAgICAgICAgICAg
ICAgcmFpc2UKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFscyhzZWxmLnJ1bl9zY3Jp
cHQoWyctLXNlcnZlcicsICdzdGFydCddKSwgMSkKKyAgICAgICAgICAgIGZpbmFsbHk6CisgICAg
ICAgICAgICAgICAgc2VsZi5ydW5fc2NyaXB0KFsnLS1zZXJ2ZXInLCAnc3RvcCddKQorICAgICAg
ICAgICAgICAgIHRlc3Rfc29ja2V0LmNsb3NlKCkKKworICAgICAgICAjIFRlc3QgdGhhdCBjYWxs
aW5nIHN0b3AoKSB0d2ljZSBpcyBoYXJtbGVzcy4KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbHMo
c2VsZi5ydW5fc2NyaXB0KFsnLS1zZXJ2ZXInLCAnc3RvcCddKSwgMCkKKworICAgIGRlZiBtYXli
ZV9tYWtlX2RpcihzZWxmLCAqY29tcHMpOgorICAgICAgICB0cnk6CisgICAgICAgICAgICBvcy5t
YWtlZGlycyhvcy5wYXRoLmpvaW4oKmNvbXBzKSkKKyAgICAgICAgZXhjZXB0IE9TRXJyb3IsIGU6
CisgICAgICAgICAgICBpZiBlLmVycm5vICE9IGVycm5vLkVFWElTVDoKKyAgICAgICAgICAgICAg
ICByYWlzZQorCisgICAgZGVmIGludGVncmF0aW9uX3Rlc3RfcG9ydF9hbmRfcm9vdChzZWxmKToK
KyAgICAgICAgaWYgbm90IHNlbGYuU0NSSVBUX05BTUU6CisgICAgICAgICAgICByZXR1cm4KKwor
ICAgICAgICB0bXBkaXIgPSB0ZW1wZmlsZS5ta2R0ZW1wKHByZWZpeD0nd2Via2l0cHl0ZXN0JykK
KyAgICAgICAgc2VsZi5tYXliZV9tYWtlX2Rpcih0bXBkaXIsICdodHRwJywgJ3Rlc3RzJywgJ3dl
YnNvY2tldCcpCisgICAgICAgIHNlbGYubWF5YmVfbWFrZV9kaXIodG1wZGlyLCAnZmFzdCcsICdq
cycsICdyZXNvdXJjZXMnKQorICAgICAgICBzZWxmLm1heWJlX21ha2VfZGlyKHRtcGRpciwgJ21l
ZGlhJykKKworICAgICAgICBzZWxmLmFzc2VydF9zZXJ2ZXJzX2FyZV9kb3duKFsxODAwMF0pCisg
ICAgICAgIHNlbGYuYXNzZXJ0RXF1YWxzKHNlbGYucnVuX3NjcmlwdChbJy0tc2VydmVyJywgJ3N0
YXJ0JywgJy0tcG9ydD0xODAwMCcsICctLXJvb3QnLCB0bXBkaXJdKSwgMCkKKyAgICAgICAgc2Vs
Zi5hc3NlcnRfc2VydmVyc19hcmVfdXAoWzE4MDAwXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVh
bHMoc2VsZi5ydW5fc2NyaXB0KFsnLS1zZXJ2ZXInLCAnc3RvcCddKSwgMCkKKyAgICAgICAgc2Vs
Zi5hc3NlcnRfc2VydmVyc19hcmVfZG93bihbMTgwMDBdKQorCisKK2NsYXNzIEhUVFBTZXJ2ZXJU
ZXN0KEJhc2VUZXN0KToKKyAgICAiIiJUZXN0cyB0aGF0IG5ldy1ydW4td2Via2l0LWh0dHAgbXVz
dCBwYXNzLiIiIgorCisgICAgUE9SVFMgPSAoODAwMCwgODA4MCwgODQ0MykKKyAgICBTQ1JJUFRf
TkFNRSA9ICduZXctcnVuLXdlYmtpdC1odHRwZCcKKworCitjbGFzcyBXZWJzb2NrZXRzZXJ2ZXJU
ZXN0KEJhc2VUZXN0KToKKyAgICAiIiJUZXN0cyB0aGF0IG5ldy1ydW4td2Via2l0LXdlYnNvY2tl
dHNlcnZlciBtdXN0IHBhc3MuIiIiCisKKyAgICAjIEZJWE1FOiB0ZXN0IFRMUyBhdCBzb21lIHBv
aW50PworICAgIFBPUlRTID0gKDg4ODAsICkKKyAgICBTQ1JJUFRfTkFNRSA9ICduZXctcnVuLXdl
YmtpdC13ZWJzb2NrZXRzZXJ2ZXInCisKKyAKK2lmIF9fbmFtZV9fID09ICdfX21haW5fXyc6Cisg
ICAgcG9ydF90ZXN0Y2FzZS5tYWluKCkKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL3BvcnQvaHR0cF9zZXJ2ZXJfaW50ZWdyYXRpb250ZXN0LnB5IGIvVG9v
bHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9odHRwX3NlcnZlcl9pbnRlZ3Jh
dGlvbnRlc3QucHkKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IGFhMmY0YjYuLjAwMDAw
MDAKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9odHRwX3Nl
cnZlcl9pbnRlZ3JhdGlvbnRlc3QucHkKKysrIC9kZXYvbnVsbApAQCAtMSwxMjYgKzAsMCBAQAot
IyBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSMK
LSMgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0Ci0jIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKLSMgbWV0OgotIwotIyAgICAqIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0j
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KLSMgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlCi0jIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKLSMgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotIyBkaXN0cmlidXRpb24uCi0j
ICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0
cwotIyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1
Y3RzIGRlcml2ZWQgZnJvbQotIyB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Ig
d3JpdHRlbiBwZXJtaXNzaW9uLgotIwotIyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRI
RSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0jICJBUyBJUyIgQU5EIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0jIExJTUlU
RUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUgotIyBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgVEhFIENPUFlSSUdIVAotIyBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKLSMgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAotIyBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwKLSMgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0jIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSMgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0j
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCi0KLSIiIkludGVncmF0aW9uIHRlc3RpbmcgZm9yIHRoZSBuZXctcnVuLXdl
YmtpdC1odHRwZCBzY3JpcHQiIiIKLQotaW1wb3J0IGVycm5vCi1pbXBvcnQgb3MKLWltcG9ydCBz
b2NrZXQKLWltcG9ydCBzdWJwcm9jZXNzCi1pbXBvcnQgc3lzCi1pbXBvcnQgdGVtcGZpbGUKLWlt
cG9ydCB1bml0dGVzdAotCi1mcm9tIHdlYmtpdHB5LmxheW91dF90ZXN0cy5wb3J0IGltcG9ydCBw
b3J0X3Rlc3RjYXNlCi0KLQotY2xhc3MgTmV3UnVuV2ViS2l0SFRUUGRUZXN0KHVuaXR0ZXN0LlRl
c3RDYXNlKToKLSAgICAiIiJUZXN0cyB0aGF0IG5ldy1ydW4td2Via2l0LWh0dHBkIG11c3QgcGFz
cy4iIiIKLSAgICBIVFRQX1BPUlRTID0gKDgwMDAsIDgwODAsIDg0NDMpCi0KLSAgICBkZWYgYXNz
ZXJ0X3NlcnZlcnNfYXJlX2Rvd24oc2VsZiwgaG9zdCwgcG9ydHMpOgotICAgICAgICBmb3IgcG9y
dCBpbiBwb3J0czoKLSAgICAgICAgICAgIHRyeToKLSAgICAgICAgICAgICAgICB0ZXN0X3NvY2tl
dCA9IHNvY2tldC5zb2NrZXQoKQotICAgICAgICAgICAgICAgIHRlc3Rfc29ja2V0LmNvbm5lY3Qo
KGhvc3QsIHBvcnQpKQotICAgICAgICAgICAgICAgIHNlbGYuZmFpbCgpCi0gICAgICAgICAgICBl
eGNlcHQgSU9FcnJvciwgZToKLSAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoZS5lcnJu
byBpbiAoZXJybm8uRUNPTk5SRUZVU0VELCBlcnJuby5FQ09OTlJFU0VUKSkKLSAgICAgICAgICAg
IGZpbmFsbHk6Ci0gICAgICAgICAgICAgICAgdGVzdF9zb2NrZXQuY2xvc2UoKQotCi0gICAgZGVm
IGFzc2VydF9zZXJ2ZXJzX2FyZV91cChzZWxmLCBob3N0LCBwb3J0cyk6Ci0gICAgICAgIGZvciBw
b3J0IGluIHBvcnRzOgotICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgIHRlc3Rfc29j
a2V0ID0gc29ja2V0LnNvY2tldCgpCi0gICAgICAgICAgICAgICAgdGVzdF9zb2NrZXQuY29ubmVj
dCgoaG9zdCwgcG9ydCkpCi0gICAgICAgICAgICBleGNlcHQgSU9FcnJvciwgZToKLSAgICAgICAg
ICAgICAgICBzZWxmLmZhaWwoJ2ZhaWxlZCB0byBjb25uZWN0IHRvICVzOiVkJyAlIChob3N0LCBw
b3J0KSkKLSAgICAgICAgICAgIGZpbmFsbHk6Ci0gICAgICAgICAgICAgICAgdGVzdF9zb2NrZXQu
Y2xvc2UoKQotCi0gICAgZGVmIHJ1bl9zY3JpcHQoc2VsZiwgYXJncyk6Ci0gICAgICAgIHNjcmlw
dF9kaXIgPSBvcy5wYXRoLmRpcm5hbWUob3MucGF0aC5kaXJuYW1lKG9zLnBhdGguZGlybmFtZShv
cy5wYXRoLmRpcm5hbWUob3MucGF0aC5hYnNwYXRoKF9fZmlsZV9fKSkpKSkKLSAgICAgICAgc2Ny
aXB0X3BhdGggPSBvcy5wYXRoLmpvaW4oc2NyaXB0X2RpciwgJ25ldy1ydW4td2Via2l0LWh0dHBk
JykKLSAgICAgICAgcmV0dXJuIHN1YnByb2Nlc3MuY2FsbChbc3lzLmV4ZWN1dGFibGUsIHNjcmlw
dF9wYXRoXSArIGFyZ3MsIHN0ZG91dD1zdWJwcm9jZXNzLlBJUEUsIHN0ZGVycj1zdWJwcm9jZXNz
LlBJUEUpCi0KLSAgICBkZWYgaW50ZWdyYXRpb25fdGVzdF9odHRwX3NlcnZlcl9fbm9ybWFsKHNl
bGYpOgotICAgICAgICBzZWxmLmFzc2VydF9zZXJ2ZXJzX2FyZV9kb3duKCdsb2NhbGhvc3QnLCBz
ZWxmLkhUVFBfUE9SVFMpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWxzKHNlbGYucnVuX3Njcmlw
dChbJy0tc2VydmVyJywgJ3N0YXJ0J10pLCAwKQotICAgICAgICBzZWxmLmFzc2VydF9zZXJ2ZXJz
X2FyZV91cCgnbG9jYWxob3N0Jywgc2VsZi5IVFRQX1BPUlRTKQotICAgICAgICBzZWxmLmFzc2Vy
dEVxdWFscyhzZWxmLnJ1bl9zY3JpcHQoWyctLXNlcnZlcicsICdzdG9wJ10pLCAwKQotICAgICAg
ICBzZWxmLmFzc2VydF9zZXJ2ZXJzX2FyZV9kb3duKCdsb2NhbGhvc3QnLCBzZWxmLkhUVFBfUE9S
VFMpCi0KLSAgICBkZWYgaW50ZWdyYXRpb25fdGVzdF9odHRwX3NlcnZlcl9fZmFpbHMoc2VsZik6
Ci0gICAgICAgICMgVGVzdCB0aGF0IGlmIGEgcG9ydCBpc24ndCBhdmFpbGFibGUsIHRoZSBjYWxs
IGZhaWxzLgotICAgICAgICBmb3IgcG9ydF9udW1iZXIgaW4gc2VsZi5IVFRQX1BPUlRTOgotICAg
ICAgICAgICAgdGVzdF9zb2NrZXQgPSBzb2NrZXQuc29ja2V0KCkKLSAgICAgICAgICAgIHRyeToK
LSAgICAgICAgICAgICAgICB0cnk6Ci0gICAgICAgICAgICAgICAgICAgIHRlc3Rfc29ja2V0LmJp
bmQoKCdsb2NhbGhvc3QnLCBwb3J0X251bWJlcikpCi0gICAgICAgICAgICAgICAgZXhjZXB0IHNv
Y2tldC5lcnJvciwgZToKLSAgICAgICAgICAgICAgICAgICAgaWYgZS5lcnJubyBpbiAoZXJybm8u
RUFERFJJTlVTRSwgZXJybm8uRUFMUkVBRFkpOgotICAgICAgICAgICAgICAgICAgICAgICAgc2Vs
Zi5mYWlsKCdjb3VsZCBub3QgYmluZCB0byBwb3J0ICVkOiAlcycgJSAocG9ydF9udW1iZXIsIHN0
cihlKSkpCi0gICAgICAgICAgICAgICAgICAgIHJhaXNlCi0gICAgICAgICAgICAgICAgc2VsZi5h
c3NlcnRFcXVhbHMoc2VsZi5ydW5fc2NyaXB0KFsnLS1zZXJ2ZXInLCAnc3RhcnQnXSksIDEpCi0g
ICAgICAgICAgICBmaW5hbGx5OgotICAgICAgICAgICAgICAgIHNlbGYucnVuX3NjcmlwdChbJy0t
c2VydmVyJywgJ3N0b3AnXSkKLSAgICAgICAgICAgICAgICB0ZXN0X3NvY2tldC5jbG9zZSgpCi0K
LSAgICAgICAgIyBUZXN0IHRoYXQgY2FsbGluZyBzdGFydCgpIHR3aWNlIGZhaWxzLgotICAgICAg
ICB0cnk6Ci0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFscyhzZWxmLnJ1bl9zY3JpcHQoWyct
LXNlcnZlcicsICdzdGFydCddKSwgMCkKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWxzKHNl
bGYucnVuX3NjcmlwdChbJy0tc2VydmVyJywgJ3N0YXJ0J10pLCAxKQotICAgICAgICBmaW5hbGx5
OgotICAgICAgICAgICAgc2VsZi5ydW5fc2NyaXB0KFsnLS1zZXJ2ZXInLCAnc3RvcCddKQotCi0g
ICAgICAgICMgVGVzdCB0aGF0IGNhbGxpbmcgc3RvcCgpIHR3aWNlIGlzIGhhcm1sZXNzLgotICAg
ICAgICBzZWxmLmFzc2VydEVxdWFscyhzZWxmLnJ1bl9zY3JpcHQoWyctLXNlcnZlcicsICdzdG9w
J10pLCAwKQotCi0gICAgZGVmIG1heWJlX21ha2VfZGlyKHNlbGYsICpjb21wcyk6Ci0gICAgICAg
IHRyeToKLSAgICAgICAgICAgIG9zLm1ha2VkaXJzKG9zLnBhdGguam9pbigqY29tcHMpKQotICAg
ICAgICBleGNlcHQgT1NFcnJvciwgZToKLSAgICAgICAgICAgIGlmIGUuZXJybm8gIT0gZXJybm8u
RUVYSVNUOgotICAgICAgICAgICAgICAgIHJhaXNlCi0KLSAgICBkZWYgaW50ZWdyYXRpb25fdGVz
dF9odHRwX3NlcnZlcl9wb3J0X2FuZF9yb290KHNlbGYpOgotICAgICAgICB0bXBkaXIgPSB0ZW1w
ZmlsZS5ta2R0ZW1wKHByZWZpeD0nd2Via2l0cHl0ZXN0JykKLSAgICAgICAgc2VsZi5tYXliZV9t
YWtlX2Rpcih0bXBkaXIsICdodHRwJywgJ3Rlc3RzJykKLSAgICAgICAgc2VsZi5tYXliZV9tYWtl
X2Rpcih0bXBkaXIsICdmYXN0JywgJ2pzJywgJ3Jlc291cmNlcycpCi0gICAgICAgIHNlbGYubWF5
YmVfbWFrZV9kaXIodG1wZGlyLCAnbWVkaWEnKQotCi0gICAgICAgIHNlbGYuYXNzZXJ0X3NlcnZl
cnNfYXJlX2Rvd24oJ2xvY2FsaG9zdCcsIFsxODAwMF0pCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1
YWxzKHNlbGYucnVuX3NjcmlwdChbJy0tc2VydmVyJywgJ3N0YXJ0JywgJy0tcG9ydD0xODAwMCcs
ICctLXJvb3QnLCB0bXBkaXJdKSwgMCkKLSAgICAgICAgc2VsZi5hc3NlcnRfc2VydmVyc19hcmVf
dXAoJ2xvY2FsaG9zdCcsIFsxODAwMF0pCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWxzKHNlbGYu
cnVuX3NjcmlwdChbJy0tc2VydmVyJywgJ3N0b3AnXSksIDApCi0gICAgICAgIHNlbGYuYXNzZXJ0
X3NlcnZlcnNfYXJlX2Rvd24oJ2xvY2FsaG9zdCcsIFsxODAwMF0pCi0KLQotaWYgX19uYW1lX18g
PT0gJ19fbWFpbl9fJzoKLSAgICBwb3J0X3Rlc3RjYXNlLm1haW4oKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>98217</attachid>
            <date>2011-06-22 12:35:58 -0700</date>
            <delta_ts>2011-06-22 12:45:33 -0700</delta_ts>
            <desc>fix rename, update ChangeLog</desc>
            <filename>bug-63123-20110622123557.patch</filename>
            <type>text/plain</type>
            <size>8765</size>
            <attacher name="Dirk Pranke">dpranke</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODk0NTMKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBi
L1Rvb2xzL0NoYW5nZUxvZwppbmRleCAyMjkzYmRlZGEyZDc3MWUxMWI1MWY2NDkxNTU0ODY0MDUx
MzE1NTI5Li5mZTJiMTEyY2U2ZmI0YmJjYTNhY2MwZDZkMmFhYTZkMzg1YmIzOGNiIDEwMDY0NAot
LS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkg
QEAKKzIwMTEtMDYtMjIgIERpcmsgUHJhbmtlICA8ZHByYW5rZUBjaHJvbWl1bS5vcmc+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgcnVuLXdlYmtpdC13
ZWJzb2NrZXRzZXJ2ZXIgZmFpbHMgdG8gc3RvcCB3ZWJzb2NrZXQgc2VydmVyCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02MzEyMworCisgICAgICAgIFRo
ZXJlJ3MgYSB0ZW4tY2hhcmFjdGVyIGNoYW5nZSBpbiBuZXctcnVuLXdlYmtpdC13ZWJzb2NrZXRz
ZXJ2ZXIKKyAgICAgICAgdGhhdCBmaXhlcyB0aGUgYWN0dWFsIGJ1ZywgYW5kIHRoZW4gd2UgdXBk
YXRlIHRoZSBjb2RlIGluCisgICAgICAgIG5ldy1ydW4td2Via2l0LWh0dHBkIHRvIGRvIHRoZSBh
Y3R1YWwgc3RvcCBjYWxsLCBhbmQgYWRkIG1vcmUgdGVzdHMKKyAgICAgICAgKHJlZmFjdG9yaW5n
IHRoZSBleGlzdGluZyB0ZXN0IGNvZGUgc28gdGhhdCBpdCBpcyBzaGFyZWQpLgorCisgICAgICAg
ICogU2NyaXB0cy9uZXctcnVuLXdlYmtpdC1odHRwZDoKKyAgICAgICAgKiBTY3JpcHRzL25ldy1y
dW4td2Via2l0LXdlYnNvY2tldHNlcnZlcjoKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xh
eW91dF90ZXN0cy9wb3J0L2h0dHBfc2VydmVyX2ludGVncmF0aW9udGVzdC5weToKKwogMjAxMS0w
Ni0yMiAgQWRhbSBSb2JlbiAgPGFyb2JlbkBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIGxpbmtz
IHRvIGV4aXN0aW5nIGJ1Z3MgcmVsYXRlZCB0byBmYWlsaW5nIHRlc3RzIG9uIFRlc3RGYWlsdXJl
cyBwYWdlCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL25ldy1ydW4td2Via2l0LWh0dHBkIGIv
VG9vbHMvU2NyaXB0cy9uZXctcnVuLXdlYmtpdC1odHRwZAppbmRleCBlN2FjNWZlM2U2ZDBhOTZh
YzNiMWVmNGI0YTAzYmNhYmM0YTk0ZjZkLi5jZjliNzNiNTQ2N2FhOWMzYWNhNmU0MzVhMDk5MGI4
OTZmNzRmNWQ2IDEwMDc1NQotLS0gYS9Ub29scy9TY3JpcHRzL25ldy1ydW4td2Via2l0LWh0dHBk
CisrKyBiL1Rvb2xzL1NjcmlwdHMvbmV3LXJ1bi13ZWJraXQtaHR0cGQKQEAgLTcwLDEyICs3MCw4
IEBAIGRlZiBydW4ob3B0aW9ucyk6CiAgICAgICAgIGlmIG9wdGlvbnMuc2VydmVyID09ICdzdGFy
dCc6CiAgICAgICAgICAgICBodHRwZC5zdGFydCgpCiAgICAgICAgIGVsc2U6Ci0gICAgICAgICAg
ICAjIEZJWE1FOiBXZSB1c2UgX3NodXRfZG93bl9odHRwX3NlcnZlcigpIGluc3RlYWQgb2Ygc3Rv
cF9odHRwX3NlcnZlcigpCi0gICAgICAgICAgICAjIGJlY2F1c2Ugc3RvcCgpIG9ubHkgd29ya3Mg
aWYgc3RhcnQoKSB3YXMgY2FsbGVkIHByZXZpb3VzbHkgaW4gdGhlCi0gICAgICAgICAgICAjIHNh
bWUgcHJvY2Vzcy4gX3NodXRfZG93bigpIGlzIHRvbyBjb2Fyc2UgYW5kIG1heSBraWxsIHVucmVs
YXRlZCAKLSAgICAgICAgICAgICMgd2ViIHNlcnZlcnMsIHNvIHRoaXMgaXMgYSBoYWNrLiBXZSBz
aG91bGQgY2hhbmdlIHRoZSBpbnRlcmZhY2Ugc28gd2UKLSAgICAgICAgICAgICMgY2FuIHJlbHkg
b24gcGlkIGZpbGVzIG9yIHNvbWV0aGluZy4KLSAgICAgICAgICAgIHBvcnRfb2JqLl9zaHV0X2Rv
d25faHR0cF9zZXJ2ZXIoTm9uZSkKKyAgICAgICAgICAgIGh0dHBkLnN0b3AoKQorCiAKIGRlZiBt
YWluKCk6CiAgICAgb3B0aW9uX3BhcnNlciA9IG9wdHBhcnNlLk9wdGlvblBhcnNlcigpCmRpZmYg
LS1naXQgYS9Ub29scy9TY3JpcHRzL25ldy1ydW4td2Via2l0LXdlYnNvY2tldHNlcnZlciBiL1Rv
b2xzL1NjcmlwdHMvbmV3LXJ1bi13ZWJraXQtd2Vic29ja2V0c2VydmVyCm9sZCBtb2RlIDEwMDY0
NApuZXcgbW9kZSAxMDA3NTUKaW5kZXggMzM1MDU4MjIwNjZkMzM3MjU1M2FmZGIwMjI0MWNkYmFi
ZGUyMzFjZS4uZWU0MGE4NDI2MmUwM2VkYzAyODUyOTJjNTZlNzE0YjM0MTU4MDFjOAotLS0gYS9U
b29scy9TY3JpcHRzL25ldy1ydW4td2Via2l0LXdlYnNvY2tldHNlcnZlcgorKysgYi9Ub29scy9T
Y3JpcHRzL25ldy1ydW4td2Via2l0LXdlYnNvY2tldHNlcnZlcgpAQCAtMTAyLDcgKzEwMiw3IEBA
IGRlZiBtYWluKCk6CiAgICAgaWYgJ3N0YXJ0JyA9PSBvcHRpb25zLnNlcnZlcjoKICAgICAgICAg
cHl3ZWJzb2NrZXQuc3RhcnQoKQogICAgIGVsc2U6Ci0gICAgICAgIHB5d2Vic29ja2V0LnN0b3Ao
Zm9yY2U9VHJ1ZSkKKyAgICAgICAgcHl3ZWJzb2NrZXQuc3RvcCgpCiAKIGlmICdfX21haW5fXycg
PT0gX19uYW1lX186CiAgICAgbWFpbigpCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtp
dHB5L2xheW91dF90ZXN0cy9wb3J0L2h0dHBfc2VydmVyX2ludGVncmF0aW9udGVzdC5weSBiL1Rv
b2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvaHR0cF9zZXJ2ZXJfaW50ZWdy
YXRpb250ZXN0LnB5CmluZGV4IGFhMmY0YjY0OGMwMDY2MWRjNDViYTI3N2M0ZWUxMWQ2NmYzN2Q3
ZDQuLjgzMDcyZDY4ZDQwYTdhNWEwODNlOGM2NWJkNjhkNWE3Y2RjODc2YzAgMTAwNzU1Ci0tLSBh
L1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvaHR0cF9zZXJ2ZXJfaW50
ZWdyYXRpb250ZXN0LnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L3BvcnQvaHR0cF9zZXJ2ZXJfaW50ZWdyYXRpb250ZXN0LnB5CkBAIC0yNiw3ICsyNiw5IEBACiAj
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRQogIyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogCi0iIiJJbnRlZ3JhdGlvbiB0ZXN0aW5nIGZv
ciB0aGUgbmV3LXJ1bi13ZWJraXQtaHR0cGQgc2NyaXB0IiIiCisiIiJJbnRlZ3JhdGlvbiB0ZXN0
cyBmb3IgdGhlIG5ldy1ydW4td2Via2l0LWh0dHBkIGFuZCBuZXctcnVuLXdlYmtpdC13ZWJzb2Nr
ZXRzZXJ2ZXIgc2NyaXB0cyIiIgorCisjIEZJWE1FOiBSZW5hbWUgdGhpcyBmaWxlIHRvIHNvbWV0
aGluZyBtb3JlIGRlc2NyaXB0aXZlLgogCiBpbXBvcnQgZXJybm8KIGltcG9ydCBvcwpAQCAtMzks
NTAgKzQxLDYyIEBAIGltcG9ydCB1bml0dGVzdAogZnJvbSB3ZWJraXRweS5sYXlvdXRfdGVzdHMu
cG9ydCBpbXBvcnQgcG9ydF90ZXN0Y2FzZQogCiAKLWNsYXNzIE5ld1J1bldlYktpdEhUVFBkVGVz
dCh1bml0dGVzdC5UZXN0Q2FzZSk6Ci0gICAgIiIiVGVzdHMgdGhhdCBuZXctcnVuLXdlYmtpdC1o
dHRwZCBtdXN0IHBhc3MuIiIiCi0gICAgSFRUUF9QT1JUUyA9ICg4MDAwLCA4MDgwLCA4NDQzKQor
Y2xhc3MgQmFzZVRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgorICAgICIiIkJhc2ljIGZyYW1ld29y
ayBmb3Igc2NyaXB0IHRlc3RzLiIiIgorICAgIEhPU1QgPSAnbG9jYWxob3N0JworCisgICAgIyBP
dmVycmlkZSBpbiBhY3R1YWwgdGVzdCBjbGFzc2VzLgorICAgIFBPUlRTID0gTm9uZQorICAgIFND
UklQVF9OQU1FID0gTm9uZQogCi0gICAgZGVmIGFzc2VydF9zZXJ2ZXJzX2FyZV9kb3duKHNlbGYs
IGhvc3QsIHBvcnRzKToKKyAgICBkZWYgYXNzZXJ0X3NlcnZlcnNfYXJlX2Rvd24oc2VsZiwgcG9y
dHM9Tm9uZSk6CisgICAgICAgIHBvcnRzID0gcG9ydHMgb3Igc2VsZi5QT1JUUwogICAgICAgICBm
b3IgcG9ydCBpbiBwb3J0czoKICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICB0ZXN0
X3NvY2tldCA9IHNvY2tldC5zb2NrZXQoKQotICAgICAgICAgICAgICAgIHRlc3Rfc29ja2V0LmNv
bm5lY3QoKGhvc3QsIHBvcnQpKQorICAgICAgICAgICAgICAgIHRlc3Rfc29ja2V0LmNvbm5lY3Qo
KHNlbGYuSE9TVCwgcG9ydCkpCiAgICAgICAgICAgICAgICAgc2VsZi5mYWlsKCkKICAgICAgICAg
ICAgIGV4Y2VwdCBJT0Vycm9yLCBlOgogICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShl
LmVycm5vIGluIChlcnJuby5FQ09OTlJFRlVTRUQsIGVycm5vLkVDT05OUkVTRVQpKQogICAgICAg
ICAgICAgZmluYWxseToKICAgICAgICAgICAgICAgICB0ZXN0X3NvY2tldC5jbG9zZSgpCiAKLSAg
ICBkZWYgYXNzZXJ0X3NlcnZlcnNfYXJlX3VwKHNlbGYsIGhvc3QsIHBvcnRzKToKKyAgICBkZWYg
YXNzZXJ0X3NlcnZlcnNfYXJlX3VwKHNlbGYsIHBvcnRzPU5vbmUpOgorICAgICAgICBwb3J0cyA9
IHBvcnRzIG9yIHNlbGYuUE9SVFMKICAgICAgICAgZm9yIHBvcnQgaW4gcG9ydHM6CiAgICAgICAg
ICAgICB0cnk6CiAgICAgICAgICAgICAgICAgdGVzdF9zb2NrZXQgPSBzb2NrZXQuc29ja2V0KCkK
LSAgICAgICAgICAgICAgICB0ZXN0X3NvY2tldC5jb25uZWN0KChob3N0LCBwb3J0KSkKKyAgICAg
ICAgICAgICAgICB0ZXN0X3NvY2tldC5jb25uZWN0KChzZWxmLkhPU1QsIHBvcnQpKQogICAgICAg
ICAgICAgZXhjZXB0IElPRXJyb3IsIGU6Ci0gICAgICAgICAgICAgICAgc2VsZi5mYWlsKCdmYWls
ZWQgdG8gY29ubmVjdCB0byAlczolZCcgJSAoaG9zdCwgcG9ydCkpCisgICAgICAgICAgICAgICAg
c2VsZi5mYWlsKCdmYWlsZWQgdG8gY29ubmVjdCB0byAlczolZCcgJSAoc2VsZi5IT1NULCBwb3J0
KSkKICAgICAgICAgICAgIGZpbmFsbHk6CiAgICAgICAgICAgICAgICAgdGVzdF9zb2NrZXQuY2xv
c2UoKQogCiAgICAgZGVmIHJ1bl9zY3JpcHQoc2VsZiwgYXJncyk6Ci0gICAgICAgIHNjcmlwdF9k
aXIgPSBvcy5wYXRoLmRpcm5hbWUob3MucGF0aC5kaXJuYW1lKG9zLnBhdGguZGlybmFtZShvcy5w
YXRoLmRpcm5hbWUob3MucGF0aC5hYnNwYXRoKF9fZmlsZV9fKSkpKSkKLSAgICAgICAgc2NyaXB0
X3BhdGggPSBvcy5wYXRoLmpvaW4oc2NyaXB0X2RpciwgJ25ldy1ydW4td2Via2l0LWh0dHBkJykK
KyAgICAgICAgc2NyaXB0X2RpciA9IG9zLnBhdGguZGlybmFtZShvcy5wYXRoLmRpcm5hbWUob3Mu
cGF0aC5kaXJuYW1lKG9zLnBhdGguYWJzcGF0aChfX2ZpbGVfXykpKSkKKyAgICAgICAgc2NyaXB0
X3BhdGggPSBvcy5wYXRoLmpvaW4oc2NyaXB0X2Rpciwgc2VsZi5TQ1JJUFRfTkFNRSkKICAgICAg
ICAgcmV0dXJuIHN1YnByb2Nlc3MuY2FsbChbc3lzLmV4ZWN1dGFibGUsIHNjcmlwdF9wYXRoXSAr
IGFyZ3MsIHN0ZG91dD1zdWJwcm9jZXNzLlBJUEUsIHN0ZGVycj1zdWJwcm9jZXNzLlBJUEUpCiAK
LSAgICBkZWYgaW50ZWdyYXRpb25fdGVzdF9odHRwX3NlcnZlcl9fbm9ybWFsKHNlbGYpOgotICAg
ICAgICBzZWxmLmFzc2VydF9zZXJ2ZXJzX2FyZV9kb3duKCdsb2NhbGhvc3QnLCBzZWxmLkhUVFBf
UE9SVFMpCisgICAgZGVmIGludGVncmF0aW9uX3Rlc3Rfc2VydmVyX19ub3JtYWwoc2VsZik6Cisg
ICAgICAgIGlmIG5vdCBzZWxmLlNDUklQVF9OQU1FOgorICAgICAgICAgICAgcmV0dXJuCisKKyAg
ICAgICAgc2VsZi5hc3NlcnRfc2VydmVyc19hcmVfZG93bigpCiAgICAgICAgIHNlbGYuYXNzZXJ0
RXF1YWxzKHNlbGYucnVuX3NjcmlwdChbJy0tc2VydmVyJywgJ3N0YXJ0J10pLCAwKQotICAgICAg
ICBzZWxmLmFzc2VydF9zZXJ2ZXJzX2FyZV91cCgnbG9jYWxob3N0Jywgc2VsZi5IVFRQX1BPUlRT
KQorICAgICAgICBzZWxmLmFzc2VydF9zZXJ2ZXJzX2FyZV91cCgpCiAgICAgICAgIHNlbGYuYXNz
ZXJ0RXF1YWxzKHNlbGYucnVuX3NjcmlwdChbJy0tc2VydmVyJywgJ3N0b3AnXSksIDApCi0gICAg
ICAgIHNlbGYuYXNzZXJ0X3NlcnZlcnNfYXJlX2Rvd24oJ2xvY2FsaG9zdCcsIHNlbGYuSFRUUF9Q
T1JUUykKKyAgICAgICAgc2VsZi5hc3NlcnRfc2VydmVyc19hcmVfZG93bigpCisKKyAgICBkZWYg
aW50ZWdyYXRpb25fdGVzdF9zZXJ2ZXJfX2ZhaWxzKHNlbGYpOgorICAgICAgICBpZiBub3Qgc2Vs
Zi5TQ1JJUFRfTkFNRToKKyAgICAgICAgICAgIHJldHVybgogCi0gICAgZGVmIGludGVncmF0aW9u
X3Rlc3RfaHR0cF9zZXJ2ZXJfX2ZhaWxzKHNlbGYpOgogICAgICAgICAjIFRlc3QgdGhhdCBpZiBh
IHBvcnQgaXNuJ3QgYXZhaWxhYmxlLCB0aGUgY2FsbCBmYWlscy4KLSAgICAgICAgZm9yIHBvcnRf
bnVtYmVyIGluIHNlbGYuSFRUUF9QT1JUUzoKKyAgICAgICAgZm9yIHBvcnRfbnVtYmVyIGluIHNl
bGYuUE9SVFM6CiAgICAgICAgICAgICB0ZXN0X3NvY2tldCA9IHNvY2tldC5zb2NrZXQoKQogICAg
ICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgIHRyeToKLSAgICAgICAgICAgICAgICAgICAg
dGVzdF9zb2NrZXQuYmluZCgoJ2xvY2FsaG9zdCcsIHBvcnRfbnVtYmVyKSkKKyAgICAgICAgICAg
ICAgICAgICAgdGVzdF9zb2NrZXQuYmluZCgoc2VsZi5IT1NULCBwb3J0X251bWJlcikpCiAgICAg
ICAgICAgICAgICAgZXhjZXB0IHNvY2tldC5lcnJvciwgZToKICAgICAgICAgICAgICAgICAgICAg
aWYgZS5lcnJubyBpbiAoZXJybm8uRUFERFJJTlVTRSwgZXJybm8uRUFMUkVBRFkpOgogICAgICAg
ICAgICAgICAgICAgICAgICAgc2VsZi5mYWlsKCdjb3VsZCBub3QgYmluZCB0byBwb3J0ICVkOiAl
cycgJSAocG9ydF9udW1iZXIsIHN0cihlKSkpCkBAIC05MiwxMyArMTA2LDYgQEAgY2xhc3MgTmV3
UnVuV2ViS2l0SFRUUGRUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICAgICAgICAgICAgICBz
ZWxmLnJ1bl9zY3JpcHQoWyctLXNlcnZlcicsICdzdG9wJ10pCiAgICAgICAgICAgICAgICAgdGVz
dF9zb2NrZXQuY2xvc2UoKQogCi0gICAgICAgICMgVGVzdCB0aGF0IGNhbGxpbmcgc3RhcnQoKSB0
d2ljZSBmYWlscy4KLSAgICAgICAgdHJ5OgotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbHMo
c2VsZi5ydW5fc2NyaXB0KFsnLS1zZXJ2ZXInLCAnc3RhcnQnXSksIDApCi0gICAgICAgICAgICBz
ZWxmLmFzc2VydEVxdWFscyhzZWxmLnJ1bl9zY3JpcHQoWyctLXNlcnZlcicsICdzdGFydCddKSwg
MSkKLSAgICAgICAgZmluYWxseToKLSAgICAgICAgICAgIHNlbGYucnVuX3NjcmlwdChbJy0tc2Vy
dmVyJywgJ3N0b3AnXSkKLQogICAgICAgICAjIFRlc3QgdGhhdCBjYWxsaW5nIHN0b3AoKSB0d2lj
ZSBpcyBoYXJtbGVzcy4KICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbHMoc2VsZi5ydW5fc2NyaXB0
KFsnLS1zZXJ2ZXInLCAnc3RvcCddKSwgMCkKIApAQCAtMTA5LDE3ICsxMTYsMzUgQEAgY2xhc3Mg
TmV3UnVuV2ViS2l0SFRUUGRUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICAgICAgICAgIGlm
IGUuZXJybm8gIT0gZXJybm8uRUVYSVNUOgogICAgICAgICAgICAgICAgIHJhaXNlCiAKLSAgICBk
ZWYgaW50ZWdyYXRpb25fdGVzdF9odHRwX3NlcnZlcl9wb3J0X2FuZF9yb290KHNlbGYpOgorICAg
IGRlZiBpbnRlZ3JhdGlvbl90ZXN0X3BvcnRfYW5kX3Jvb3Qoc2VsZik6CisgICAgICAgIGlmIG5v
dCBzZWxmLlNDUklQVF9OQU1FOgorICAgICAgICAgICAgcmV0dXJuCisKICAgICAgICAgdG1wZGly
ID0gdGVtcGZpbGUubWtkdGVtcChwcmVmaXg9J3dlYmtpdHB5dGVzdCcpCi0gICAgICAgIHNlbGYu
bWF5YmVfbWFrZV9kaXIodG1wZGlyLCAnaHR0cCcsICd0ZXN0cycpCisgICAgICAgIHNlbGYubWF5
YmVfbWFrZV9kaXIodG1wZGlyLCAnaHR0cCcsICd0ZXN0cycsICd3ZWJzb2NrZXQnKQogICAgICAg
ICBzZWxmLm1heWJlX21ha2VfZGlyKHRtcGRpciwgJ2Zhc3QnLCAnanMnLCAncmVzb3VyY2VzJykK
ICAgICAgICAgc2VsZi5tYXliZV9tYWtlX2Rpcih0bXBkaXIsICdtZWRpYScpCiAKLSAgICAgICAg
c2VsZi5hc3NlcnRfc2VydmVyc19hcmVfZG93bignbG9jYWxob3N0JywgWzE4MDAwXSkKKyAgICAg
ICAgc2VsZi5hc3NlcnRfc2VydmVyc19hcmVfZG93bihbMTgwMDBdKQogICAgICAgICBzZWxmLmFz
c2VydEVxdWFscyhzZWxmLnJ1bl9zY3JpcHQoWyctLXNlcnZlcicsICdzdGFydCcsICctLXBvcnQ9
MTgwMDAnLCAnLS1yb290JywgdG1wZGlyXSksIDApCi0gICAgICAgIHNlbGYuYXNzZXJ0X3NlcnZl
cnNfYXJlX3VwKCdsb2NhbGhvc3QnLCBbMTgwMDBdKQorICAgICAgICBzZWxmLmFzc2VydF9zZXJ2
ZXJzX2FyZV91cChbMTgwMDBdKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFscyhzZWxmLnJ1bl9z
Y3JpcHQoWyctLXNlcnZlcicsICdzdG9wJ10pLCAwKQotICAgICAgICBzZWxmLmFzc2VydF9zZXJ2
ZXJzX2FyZV9kb3duKCdsb2NhbGhvc3QnLCBbMTgwMDBdKQorICAgICAgICBzZWxmLmFzc2VydF9z
ZXJ2ZXJzX2FyZV9kb3duKFsxODAwMF0pCisKKworY2xhc3MgSFRUUFNlcnZlclRlc3QoQmFzZVRl
c3QpOgorICAgICIiIlRlc3RzIHRoYXQgbmV3LXJ1bi13ZWJraXQtaHR0cCBtdXN0IHBhc3MuIiIi
CisKKyAgICBQT1JUUyA9ICg4MDAwLCA4MDgwLCA4NDQzKQorICAgIFNDUklQVF9OQU1FID0gJ25l
dy1ydW4td2Via2l0LWh0dHBkJworCisKK2NsYXNzIFdlYnNvY2tldHNlcnZlclRlc3QoQmFzZVRl
c3QpOgorICAgICIiIlRlc3RzIHRoYXQgbmV3LXJ1bi13ZWJraXQtd2Vic29ja2V0c2VydmVyIG11
c3QgcGFzcy4iIiIKKworICAgICMgRklYTUU6IHRlc3QgVExTIGF0IHNvbWUgcG9pbnQ/CisgICAg
UE9SVFMgPSAoODg4MCwgKQorICAgIFNDUklQVF9OQU1FID0gJ25ldy1ydW4td2Via2l0LXdlYnNv
Y2tldHNlcnZlcicKIAogCiBpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>98220</attachid>
            <date>2011-06-22 12:45:36 -0700</date>
            <delta_ts>2011-06-22 12:47:55 -0700</delta_ts>
            <desc>add dirname back in that was lost in the rename</desc>
            <filename>bug-63123-20110622124535.patch</filename>
            <type>text/plain</type>
            <size>8666</size>
            <attacher name="Dirk Pranke">dpranke</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODk0NTMKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBi
L1Rvb2xzL0NoYW5nZUxvZwppbmRleCAyMjkzYmRlZGEyZDc3MWUxMWI1MWY2NDkxNTU0ODY0MDUx
MzE1NTI5Li5mZTJiMTEyY2U2ZmI0YmJjYTNhY2MwZDZkMmFhYTZkMzg1YmIzOGNiIDEwMDY0NAot
LS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkg
QEAKKzIwMTEtMDYtMjIgIERpcmsgUHJhbmtlICA8ZHByYW5rZUBjaHJvbWl1bS5vcmc+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgcnVuLXdlYmtpdC13
ZWJzb2NrZXRzZXJ2ZXIgZmFpbHMgdG8gc3RvcCB3ZWJzb2NrZXQgc2VydmVyCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02MzEyMworCisgICAgICAgIFRo
ZXJlJ3MgYSB0ZW4tY2hhcmFjdGVyIGNoYW5nZSBpbiBuZXctcnVuLXdlYmtpdC13ZWJzb2NrZXRz
ZXJ2ZXIKKyAgICAgICAgdGhhdCBmaXhlcyB0aGUgYWN0dWFsIGJ1ZywgYW5kIHRoZW4gd2UgdXBk
YXRlIHRoZSBjb2RlIGluCisgICAgICAgIG5ldy1ydW4td2Via2l0LWh0dHBkIHRvIGRvIHRoZSBh
Y3R1YWwgc3RvcCBjYWxsLCBhbmQgYWRkIG1vcmUgdGVzdHMKKyAgICAgICAgKHJlZmFjdG9yaW5n
IHRoZSBleGlzdGluZyB0ZXN0IGNvZGUgc28gdGhhdCBpdCBpcyBzaGFyZWQpLgorCisgICAgICAg
ICogU2NyaXB0cy9uZXctcnVuLXdlYmtpdC1odHRwZDoKKyAgICAgICAgKiBTY3JpcHRzL25ldy1y
dW4td2Via2l0LXdlYnNvY2tldHNlcnZlcjoKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xh
eW91dF90ZXN0cy9wb3J0L2h0dHBfc2VydmVyX2ludGVncmF0aW9udGVzdC5weToKKwogMjAxMS0w
Ni0yMiAgQWRhbSBSb2JlbiAgPGFyb2JlbkBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIGxpbmtz
IHRvIGV4aXN0aW5nIGJ1Z3MgcmVsYXRlZCB0byBmYWlsaW5nIHRlc3RzIG9uIFRlc3RGYWlsdXJl
cyBwYWdlCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL25ldy1ydW4td2Via2l0LWh0dHBkIGIv
VG9vbHMvU2NyaXB0cy9uZXctcnVuLXdlYmtpdC1odHRwZAppbmRleCBlN2FjNWZlM2U2ZDBhOTZh
YzNiMWVmNGI0YTAzYmNhYmM0YTk0ZjZkLi5jZjliNzNiNTQ2N2FhOWMzYWNhNmU0MzVhMDk5MGI4
OTZmNzRmNWQ2IDEwMDc1NQotLS0gYS9Ub29scy9TY3JpcHRzL25ldy1ydW4td2Via2l0LWh0dHBk
CisrKyBiL1Rvb2xzL1NjcmlwdHMvbmV3LXJ1bi13ZWJraXQtaHR0cGQKQEAgLTcwLDEyICs3MCw4
IEBAIGRlZiBydW4ob3B0aW9ucyk6CiAgICAgICAgIGlmIG9wdGlvbnMuc2VydmVyID09ICdzdGFy
dCc6CiAgICAgICAgICAgICBodHRwZC5zdGFydCgpCiAgICAgICAgIGVsc2U6Ci0gICAgICAgICAg
ICAjIEZJWE1FOiBXZSB1c2UgX3NodXRfZG93bl9odHRwX3NlcnZlcigpIGluc3RlYWQgb2Ygc3Rv
cF9odHRwX3NlcnZlcigpCi0gICAgICAgICAgICAjIGJlY2F1c2Ugc3RvcCgpIG9ubHkgd29ya3Mg
aWYgc3RhcnQoKSB3YXMgY2FsbGVkIHByZXZpb3VzbHkgaW4gdGhlCi0gICAgICAgICAgICAjIHNh
bWUgcHJvY2Vzcy4gX3NodXRfZG93bigpIGlzIHRvbyBjb2Fyc2UgYW5kIG1heSBraWxsIHVucmVs
YXRlZCAKLSAgICAgICAgICAgICMgd2ViIHNlcnZlcnMsIHNvIHRoaXMgaXMgYSBoYWNrLiBXZSBz
aG91bGQgY2hhbmdlIHRoZSBpbnRlcmZhY2Ugc28gd2UKLSAgICAgICAgICAgICMgY2FuIHJlbHkg
b24gcGlkIGZpbGVzIG9yIHNvbWV0aGluZy4KLSAgICAgICAgICAgIHBvcnRfb2JqLl9zaHV0X2Rv
d25faHR0cF9zZXJ2ZXIoTm9uZSkKKyAgICAgICAgICAgIGh0dHBkLnN0b3AoKQorCiAKIGRlZiBt
YWluKCk6CiAgICAgb3B0aW9uX3BhcnNlciA9IG9wdHBhcnNlLk9wdGlvblBhcnNlcigpCmRpZmYg
LS1naXQgYS9Ub29scy9TY3JpcHRzL25ldy1ydW4td2Via2l0LXdlYnNvY2tldHNlcnZlciBiL1Rv
b2xzL1NjcmlwdHMvbmV3LXJ1bi13ZWJraXQtd2Vic29ja2V0c2VydmVyCm9sZCBtb2RlIDEwMDY0
NApuZXcgbW9kZSAxMDA3NTUKaW5kZXggMzM1MDU4MjIwNjZkMzM3MjU1M2FmZGIwMjI0MWNkYmFi
ZGUyMzFjZS4uZWU0MGE4NDI2MmUwM2VkYzAyODUyOTJjNTZlNzE0YjM0MTU4MDFjOAotLS0gYS9U
b29scy9TY3JpcHRzL25ldy1ydW4td2Via2l0LXdlYnNvY2tldHNlcnZlcgorKysgYi9Ub29scy9T
Y3JpcHRzL25ldy1ydW4td2Via2l0LXdlYnNvY2tldHNlcnZlcgpAQCAtMTAyLDcgKzEwMiw3IEBA
IGRlZiBtYWluKCk6CiAgICAgaWYgJ3N0YXJ0JyA9PSBvcHRpb25zLnNlcnZlcjoKICAgICAgICAg
cHl3ZWJzb2NrZXQuc3RhcnQoKQogICAgIGVsc2U6Ci0gICAgICAgIHB5d2Vic29ja2V0LnN0b3Ao
Zm9yY2U9VHJ1ZSkKKyAgICAgICAgcHl3ZWJzb2NrZXQuc3RvcCgpCiAKIGlmICdfX21haW5fXycg
PT0gX19uYW1lX186CiAgICAgbWFpbigpCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtp
dHB5L2xheW91dF90ZXN0cy9wb3J0L2h0dHBfc2VydmVyX2ludGVncmF0aW9udGVzdC5weSBiL1Rv
b2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvaHR0cF9zZXJ2ZXJfaW50ZWdy
YXRpb250ZXN0LnB5CmluZGV4IGFhMmY0YjY0OGMwMDY2MWRjNDViYTI3N2M0ZWUxMWQ2NmYzN2Q3
ZDQuLmEwMmU0YzViODc5YWVkYzE5YWQwNzc4MzE3OTlmOWEwZmI2NTkzNDEgMTAwNzU1Ci0tLSBh
L1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvaHR0cF9zZXJ2ZXJfaW50
ZWdyYXRpb250ZXN0LnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L3BvcnQvaHR0cF9zZXJ2ZXJfaW50ZWdyYXRpb250ZXN0LnB5CkBAIC0yNiw3ICsyNiw5IEBACiAj
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRQogIyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogCi0iIiJJbnRlZ3JhdGlvbiB0ZXN0aW5nIGZv
ciB0aGUgbmV3LXJ1bi13ZWJraXQtaHR0cGQgc2NyaXB0IiIiCisiIiJJbnRlZ3JhdGlvbiB0ZXN0
cyBmb3IgdGhlIG5ldy1ydW4td2Via2l0LWh0dHBkIGFuZCBuZXctcnVuLXdlYmtpdC13ZWJzb2Nr
ZXRzZXJ2ZXIgc2NyaXB0cyIiIgorCisjIEZJWE1FOiBSZW5hbWUgdGhpcyBmaWxlIHRvIHNvbWV0
aGluZyBtb3JlIGRlc2NyaXB0aXZlLgogCiBpbXBvcnQgZXJybm8KIGltcG9ydCBvcwpAQCAtMzks
NTAgKzQxLDYyIEBAIGltcG9ydCB1bml0dGVzdAogZnJvbSB3ZWJraXRweS5sYXlvdXRfdGVzdHMu
cG9ydCBpbXBvcnQgcG9ydF90ZXN0Y2FzZQogCiAKLWNsYXNzIE5ld1J1bldlYktpdEhUVFBkVGVz
dCh1bml0dGVzdC5UZXN0Q2FzZSk6Ci0gICAgIiIiVGVzdHMgdGhhdCBuZXctcnVuLXdlYmtpdC1o
dHRwZCBtdXN0IHBhc3MuIiIiCi0gICAgSFRUUF9QT1JUUyA9ICg4MDAwLCA4MDgwLCA4NDQzKQor
Y2xhc3MgQmFzZVRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgorICAgICIiIkJhc2ljIGZyYW1ld29y
ayBmb3Igc2NyaXB0IHRlc3RzLiIiIgorICAgIEhPU1QgPSAnbG9jYWxob3N0JworCisgICAgIyBP
dmVycmlkZSBpbiBhY3R1YWwgdGVzdCBjbGFzc2VzLgorICAgIFBPUlRTID0gTm9uZQorICAgIFND
UklQVF9OQU1FID0gTm9uZQogCi0gICAgZGVmIGFzc2VydF9zZXJ2ZXJzX2FyZV9kb3duKHNlbGYs
IGhvc3QsIHBvcnRzKToKKyAgICBkZWYgYXNzZXJ0X3NlcnZlcnNfYXJlX2Rvd24oc2VsZiwgcG9y
dHM9Tm9uZSk6CisgICAgICAgIHBvcnRzID0gcG9ydHMgb3Igc2VsZi5QT1JUUwogICAgICAgICBm
b3IgcG9ydCBpbiBwb3J0czoKICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICB0ZXN0
X3NvY2tldCA9IHNvY2tldC5zb2NrZXQoKQotICAgICAgICAgICAgICAgIHRlc3Rfc29ja2V0LmNv
bm5lY3QoKGhvc3QsIHBvcnQpKQorICAgICAgICAgICAgICAgIHRlc3Rfc29ja2V0LmNvbm5lY3Qo
KHNlbGYuSE9TVCwgcG9ydCkpCiAgICAgICAgICAgICAgICAgc2VsZi5mYWlsKCkKICAgICAgICAg
ICAgIGV4Y2VwdCBJT0Vycm9yLCBlOgogICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShl
LmVycm5vIGluIChlcnJuby5FQ09OTlJFRlVTRUQsIGVycm5vLkVDT05OUkVTRVQpKQogICAgICAg
ICAgICAgZmluYWxseToKICAgICAgICAgICAgICAgICB0ZXN0X3NvY2tldC5jbG9zZSgpCiAKLSAg
ICBkZWYgYXNzZXJ0X3NlcnZlcnNfYXJlX3VwKHNlbGYsIGhvc3QsIHBvcnRzKToKKyAgICBkZWYg
YXNzZXJ0X3NlcnZlcnNfYXJlX3VwKHNlbGYsIHBvcnRzPU5vbmUpOgorICAgICAgICBwb3J0cyA9
IHBvcnRzIG9yIHNlbGYuUE9SVFMKICAgICAgICAgZm9yIHBvcnQgaW4gcG9ydHM6CiAgICAgICAg
ICAgICB0cnk6CiAgICAgICAgICAgICAgICAgdGVzdF9zb2NrZXQgPSBzb2NrZXQuc29ja2V0KCkK
LSAgICAgICAgICAgICAgICB0ZXN0X3NvY2tldC5jb25uZWN0KChob3N0LCBwb3J0KSkKKyAgICAg
ICAgICAgICAgICB0ZXN0X3NvY2tldC5jb25uZWN0KChzZWxmLkhPU1QsIHBvcnQpKQogICAgICAg
ICAgICAgZXhjZXB0IElPRXJyb3IsIGU6Ci0gICAgICAgICAgICAgICAgc2VsZi5mYWlsKCdmYWls
ZWQgdG8gY29ubmVjdCB0byAlczolZCcgJSAoaG9zdCwgcG9ydCkpCisgICAgICAgICAgICAgICAg
c2VsZi5mYWlsKCdmYWlsZWQgdG8gY29ubmVjdCB0byAlczolZCcgJSAoc2VsZi5IT1NULCBwb3J0
KSkKICAgICAgICAgICAgIGZpbmFsbHk6CiAgICAgICAgICAgICAgICAgdGVzdF9zb2NrZXQuY2xv
c2UoKQogCiAgICAgZGVmIHJ1bl9zY3JpcHQoc2VsZiwgYXJncyk6CiAgICAgICAgIHNjcmlwdF9k
aXIgPSBvcy5wYXRoLmRpcm5hbWUob3MucGF0aC5kaXJuYW1lKG9zLnBhdGguZGlybmFtZShvcy5w
YXRoLmRpcm5hbWUob3MucGF0aC5hYnNwYXRoKF9fZmlsZV9fKSkpKSkKLSAgICAgICAgc2NyaXB0
X3BhdGggPSBvcy5wYXRoLmpvaW4oc2NyaXB0X2RpciwgJ25ldy1ydW4td2Via2l0LWh0dHBkJykK
KyAgICAgICAgc2NyaXB0X3BhdGggPSBvcy5wYXRoLmpvaW4oc2NyaXB0X2Rpciwgc2VsZi5TQ1JJ
UFRfTkFNRSkKICAgICAgICAgcmV0dXJuIHN1YnByb2Nlc3MuY2FsbChbc3lzLmV4ZWN1dGFibGUs
IHNjcmlwdF9wYXRoXSArIGFyZ3MsIHN0ZG91dD1zdWJwcm9jZXNzLlBJUEUsIHN0ZGVycj1zdWJw
cm9jZXNzLlBJUEUpCiAKLSAgICBkZWYgaW50ZWdyYXRpb25fdGVzdF9odHRwX3NlcnZlcl9fbm9y
bWFsKHNlbGYpOgotICAgICAgICBzZWxmLmFzc2VydF9zZXJ2ZXJzX2FyZV9kb3duKCdsb2NhbGhv
c3QnLCBzZWxmLkhUVFBfUE9SVFMpCisgICAgZGVmIGludGVncmF0aW9uX3Rlc3Rfc2VydmVyX19u
b3JtYWwoc2VsZik6CisgICAgICAgIGlmIG5vdCBzZWxmLlNDUklQVF9OQU1FOgorICAgICAgICAg
ICAgcmV0dXJuCisKKyAgICAgICAgc2VsZi5hc3NlcnRfc2VydmVyc19hcmVfZG93bigpCiAgICAg
ICAgIHNlbGYuYXNzZXJ0RXF1YWxzKHNlbGYucnVuX3NjcmlwdChbJy0tc2VydmVyJywgJ3N0YXJ0
J10pLCAwKQotICAgICAgICBzZWxmLmFzc2VydF9zZXJ2ZXJzX2FyZV91cCgnbG9jYWxob3N0Jywg
c2VsZi5IVFRQX1BPUlRTKQorICAgICAgICBzZWxmLmFzc2VydF9zZXJ2ZXJzX2FyZV91cCgpCiAg
ICAgICAgIHNlbGYuYXNzZXJ0RXF1YWxzKHNlbGYucnVuX3NjcmlwdChbJy0tc2VydmVyJywgJ3N0
b3AnXSksIDApCi0gICAgICAgIHNlbGYuYXNzZXJ0X3NlcnZlcnNfYXJlX2Rvd24oJ2xvY2FsaG9z
dCcsIHNlbGYuSFRUUF9QT1JUUykKKyAgICAgICAgc2VsZi5hc3NlcnRfc2VydmVyc19hcmVfZG93
bigpCisKKyAgICBkZWYgaW50ZWdyYXRpb25fdGVzdF9zZXJ2ZXJfX2ZhaWxzKHNlbGYpOgorICAg
ICAgICBpZiBub3Qgc2VsZi5TQ1JJUFRfTkFNRToKKyAgICAgICAgICAgIHJldHVybgogCi0gICAg
ZGVmIGludGVncmF0aW9uX3Rlc3RfaHR0cF9zZXJ2ZXJfX2ZhaWxzKHNlbGYpOgogICAgICAgICAj
IFRlc3QgdGhhdCBpZiBhIHBvcnQgaXNuJ3QgYXZhaWxhYmxlLCB0aGUgY2FsbCBmYWlscy4KLSAg
ICAgICAgZm9yIHBvcnRfbnVtYmVyIGluIHNlbGYuSFRUUF9QT1JUUzoKKyAgICAgICAgZm9yIHBv
cnRfbnVtYmVyIGluIHNlbGYuUE9SVFM6CiAgICAgICAgICAgICB0ZXN0X3NvY2tldCA9IHNvY2tl
dC5zb2NrZXQoKQogICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgIHRyeToKLSAgICAg
ICAgICAgICAgICAgICAgdGVzdF9zb2NrZXQuYmluZCgoJ2xvY2FsaG9zdCcsIHBvcnRfbnVtYmVy
KSkKKyAgICAgICAgICAgICAgICAgICAgdGVzdF9zb2NrZXQuYmluZCgoc2VsZi5IT1NULCBwb3J0
X251bWJlcikpCiAgICAgICAgICAgICAgICAgZXhjZXB0IHNvY2tldC5lcnJvciwgZToKICAgICAg
ICAgICAgICAgICAgICAgaWYgZS5lcnJubyBpbiAoZXJybm8uRUFERFJJTlVTRSwgZXJybm8uRUFM
UkVBRFkpOgogICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5mYWlsKCdjb3VsZCBub3QgYmlu
ZCB0byBwb3J0ICVkOiAlcycgJSAocG9ydF9udW1iZXIsIHN0cihlKSkpCkBAIC05MiwxMyArMTA2
LDYgQEAgY2xhc3MgTmV3UnVuV2ViS2l0SFRUUGRUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKICAg
ICAgICAgICAgICAgICBzZWxmLnJ1bl9zY3JpcHQoWyctLXNlcnZlcicsICdzdG9wJ10pCiAgICAg
ICAgICAgICAgICAgdGVzdF9zb2NrZXQuY2xvc2UoKQogCi0gICAgICAgICMgVGVzdCB0aGF0IGNh
bGxpbmcgc3RhcnQoKSB0d2ljZSBmYWlscy4KLSAgICAgICAgdHJ5OgotICAgICAgICAgICAgc2Vs
Zi5hc3NlcnRFcXVhbHMoc2VsZi5ydW5fc2NyaXB0KFsnLS1zZXJ2ZXInLCAnc3RhcnQnXSksIDAp
Ci0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFscyhzZWxmLnJ1bl9zY3JpcHQoWyctLXNlcnZl
cicsICdzdGFydCddKSwgMSkKLSAgICAgICAgZmluYWxseToKLSAgICAgICAgICAgIHNlbGYucnVu
X3NjcmlwdChbJy0tc2VydmVyJywgJ3N0b3AnXSkKLQogICAgICAgICAjIFRlc3QgdGhhdCBjYWxs
aW5nIHN0b3AoKSB0d2ljZSBpcyBoYXJtbGVzcy4KICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbHMo
c2VsZi5ydW5fc2NyaXB0KFsnLS1zZXJ2ZXInLCAnc3RvcCddKSwgMCkKIApAQCAtMTA5LDE3ICsx
MTYsMzUgQEAgY2xhc3MgTmV3UnVuV2ViS2l0SFRUUGRUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToK
ICAgICAgICAgICAgIGlmIGUuZXJybm8gIT0gZXJybm8uRUVYSVNUOgogICAgICAgICAgICAgICAg
IHJhaXNlCiAKLSAgICBkZWYgaW50ZWdyYXRpb25fdGVzdF9odHRwX3NlcnZlcl9wb3J0X2FuZF9y
b290KHNlbGYpOgorICAgIGRlZiBpbnRlZ3JhdGlvbl90ZXN0X3BvcnRfYW5kX3Jvb3Qoc2VsZik6
CisgICAgICAgIGlmIG5vdCBzZWxmLlNDUklQVF9OQU1FOgorICAgICAgICAgICAgcmV0dXJuCisK
ICAgICAgICAgdG1wZGlyID0gdGVtcGZpbGUubWtkdGVtcChwcmVmaXg9J3dlYmtpdHB5dGVzdCcp
Ci0gICAgICAgIHNlbGYubWF5YmVfbWFrZV9kaXIodG1wZGlyLCAnaHR0cCcsICd0ZXN0cycpCisg
ICAgICAgIHNlbGYubWF5YmVfbWFrZV9kaXIodG1wZGlyLCAnaHR0cCcsICd0ZXN0cycsICd3ZWJz
b2NrZXQnKQogICAgICAgICBzZWxmLm1heWJlX21ha2VfZGlyKHRtcGRpciwgJ2Zhc3QnLCAnanMn
LCAncmVzb3VyY2VzJykKICAgICAgICAgc2VsZi5tYXliZV9tYWtlX2Rpcih0bXBkaXIsICdtZWRp
YScpCiAKLSAgICAgICAgc2VsZi5hc3NlcnRfc2VydmVyc19hcmVfZG93bignbG9jYWxob3N0Jywg
WzE4MDAwXSkKKyAgICAgICAgc2VsZi5hc3NlcnRfc2VydmVyc19hcmVfZG93bihbMTgwMDBdKQog
ICAgICAgICBzZWxmLmFzc2VydEVxdWFscyhzZWxmLnJ1bl9zY3JpcHQoWyctLXNlcnZlcicsICdz
dGFydCcsICctLXBvcnQ9MTgwMDAnLCAnLS1yb290JywgdG1wZGlyXSksIDApCi0gICAgICAgIHNl
bGYuYXNzZXJ0X3NlcnZlcnNfYXJlX3VwKCdsb2NhbGhvc3QnLCBbMTgwMDBdKQorICAgICAgICBz
ZWxmLmFzc2VydF9zZXJ2ZXJzX2FyZV91cChbMTgwMDBdKQogICAgICAgICBzZWxmLmFzc2VydEVx
dWFscyhzZWxmLnJ1bl9zY3JpcHQoWyctLXNlcnZlcicsICdzdG9wJ10pLCAwKQotICAgICAgICBz
ZWxmLmFzc2VydF9zZXJ2ZXJzX2FyZV9kb3duKCdsb2NhbGhvc3QnLCBbMTgwMDBdKQorICAgICAg
ICBzZWxmLmFzc2VydF9zZXJ2ZXJzX2FyZV9kb3duKFsxODAwMF0pCisKKworY2xhc3MgSFRUUFNl
cnZlclRlc3QoQmFzZVRlc3QpOgorICAgICIiIlRlc3RzIHRoYXQgbmV3LXJ1bi13ZWJraXQtaHR0
cCBtdXN0IHBhc3MuIiIiCisKKyAgICBQT1JUUyA9ICg4MDAwLCA4MDgwLCA4NDQzKQorICAgIFND
UklQVF9OQU1FID0gJ25ldy1ydW4td2Via2l0LWh0dHBkJworCisKK2NsYXNzIFdlYnNvY2tldHNl
cnZlclRlc3QoQmFzZVRlc3QpOgorICAgICIiIlRlc3RzIHRoYXQgbmV3LXJ1bi13ZWJraXQtd2Vi
c29ja2V0c2VydmVyIG11c3QgcGFzcy4iIiIKKworICAgICMgRklYTUU6IHRlc3QgVExTIGF0IHNv
bWUgcG9pbnQ/CisgICAgUE9SVFMgPSAoODg4MCwgKQorICAgIFNDUklQVF9OQU1FID0gJ25ldy1y
dW4td2Via2l0LXdlYnNvY2tldHNlcnZlcicKIAogCiBpZiBfX25hbWVfXyA9PSAnX19tYWluX18n
Ogo=
</data>
<flag name="review"
          id="92381"
          type_id="1"
          status="+"
          setter="tony"
    />
          </attachment>
      

    </bug>

</bugzilla>