<?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>84710</bug_id>
          
          <creation_ts>2012-04-24 05:16:32 -0700</creation_ts>
          <short_desc>[EFL] [DRT] EventSender doesn&apos;t provide correct key string</short_desc>
          <delta_ts>2012-05-16 01:24:00 -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>WebKit EFL</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>
          <dependson>78559</dependson>
          <blocked>85369</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Sudarsana Nagineni (babu)">naginenis</reporter>
          <assigned_to name="Kangil Han">kangil.han</assigned_to>
          <cc>d-r</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kangil.han</cc>
    
    <cc>lucas.de.marchi</cc>
    
    <cc>rakuco</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>608563</commentid>
    <comment_count>0</comment_count>
    <who name="Sudarsana Nagineni (babu)">naginenis</who>
    <bug_when>2012-04-24 05:16:32 -0700</bug_when>
    <thetext>EventSender doesn&apos;t provide correct key string for special keys(e.g. function keys/arrow keys/space)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>612474</commentid>
    <comment_count>1</comment_count>
      <attachid>139411</attachid>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-04-29 18:55:15 -0700</bug_when>
    <thetext>Created attachment 139411
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>612499</commentid>
    <comment_count>2</comment_count>
      <attachid>139411</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2012-04-29 23:29:16 -0700</bug_when>
    <thetext>Comment on attachment 139411
patch

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

&gt; LayoutTests/ChangeLog:8
&gt; +        Non-visible key string, i.e. right arrow key, shouldn&apos;t be displayed on the input field.

I don&apos;t understand what is problem in this description.

&gt; Tools/DumpRenderTree/efl/EventSender.cpp:107
&gt; +    KeyEventInfo(const CString&amp; keyName, EvasKeyModifier modifiers, Eina_Bool hasVisibleString)

Please do not use Eina_Bool.

&gt; Tools/DumpRenderTree/efl/EventSender.cpp:116
&gt; +    Eina_Bool hasVisibleString;

We decided to use standard boolean instead of Eina_Bool except for public APIs.

&gt; Tools/DumpRenderTree/efl/EventSender.cpp:447
&gt; +        return new KeyEventInfo(character.get()-&gt;ustring().utf8(), modifiers, EINA_TRUE);

Use true instead of EINA_TRUE.

&gt; Tools/DumpRenderTree/efl/EventSender.cpp:449
&gt; +    return new KeyEventInfo(keyName, modifiers, EINA_FALSE);

ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>612502</commentid>
    <comment_count>3</comment_count>
      <attachid>139421</attachid>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-04-29 23:52:44 -0700</bug_when>
    <thetext>Created attachment 139421
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>612503</commentid>
    <comment_count>4</comment_count>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-04-29 23:54:19 -0700</bug_when>
    <thetext>Thanks for reviewing!
I&apos;ve fixed all mentioned parts.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>612553</commentid>
    <comment_count>5</comment_count>
      <attachid>139431</attachid>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-04-30 05:05:22 -0700</bug_when>
    <thetext>Created attachment 139431
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>614240</commentid>
    <comment_count>6</comment_count>
      <attachid>139431</attachid>
    <who name="Sudarsana Nagineni (babu)">naginenis</who>
    <bug_when>2012-05-02 06:31:49 -0700</bug_when>
    <thetext>Comment on attachment 139431
patch

Could you please rebase and upload this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>614246</commentid>
    <comment_count>7</comment_count>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-05-02 06:41:57 -0700</bug_when>
    <thetext>Yes, I will as soon as BUG 78559 is landed. ;)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>619081</commentid>
    <comment_count>8</comment_count>
      <attachid>140848</attachid>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-05-08 18:57:13 -0700</bug_when>
    <thetext>Created attachment 140848
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>619085</commentid>
    <comment_count>9</comment_count>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-05-08 18:58:52 -0700</bug_when>
    <thetext>Rebase done. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>619099</commentid>
    <comment_count>10</comment_count>
      <attachid>140851</attachid>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-05-08 19:16:32 -0700</bug_when>
    <thetext>Created attachment 140851
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>619100</commentid>
    <comment_count>11</comment_count>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-05-08 19:17:49 -0700</bug_when>
    <thetext>Rebase again since chromium-ews complained about device space. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>619200</commentid>
    <comment_count>12</comment_count>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-05-08 23:38:36 -0700</bug_when>
    <thetext>gyuyoung, rakuco : Could I please get informal review on this patch? Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>619208</commentid>
    <comment_count>13</comment_count>
      <attachid>140851</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2012-05-08 23:57:44 -0700</bug_when>
    <thetext>Comment on attachment 140851
Patch

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

&gt; Tools/DumpRenderTree/efl/EventSender.cpp:387
&gt; +    return CString();

Hmm, why do you return CString() instead of character-&gt;ustring().utf8()? It looks we need to return character itself when character is not supported by this function.

&gt; Tools/DumpRenderTree/efl/EventSender.cpp:451
&gt; +    return CString();

ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>619233</commentid>
    <comment_count>14</comment_count>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-05-09 00:31:47 -0700</bug_when>
    <thetext>In this case, blank string indicates pressed key is not a character.
So &apos;character-&gt;ustring().utf8()&apos; is happened when creating KeyEventInfo.

(In reply to comment #13)
&gt; (From update of attachment 140851 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=140851&amp;action=review
&gt; 
&gt; &gt; Tools/DumpRenderTree/efl/EventSender.cpp:387
&gt; &gt; +    return CString();
&gt; 
&gt; Hmm, why do you return CString() instead of character-&gt;ustring().utf8()? It looks we need to return character itself when character is not supported by this function.
&gt; 
&gt; &gt; Tools/DumpRenderTree/efl/EventSender.cpp:451
&gt; &gt; +    return CString();
&gt; 
&gt; ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>620524</commentid>
    <comment_count>15</comment_count>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-05-10 06:21:57 -0700</bug_when>
    <thetext>gyuyoung : Any more comment(s)?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>622451</commentid>
    <comment_count>16</comment_count>
      <attachid>140851</attachid>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-05-12 19:52:15 -0700</bug_when>
    <thetext>Comment on attachment 140851
Patch

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

&gt; Source/WebCore/ChangeLog:14
&gt; +        (WebCore::singleCharacterString):

Please mention what is being changed and why here.

&gt; Tools/DumpRenderTree/efl/EventSender.cpp:481
&gt; +    if (keyName.isNull())
&gt; +        return new KeyEventInfo(character.get()-&gt;ustring().utf8(), modifiers, true);
&gt; +    if (keyName == &quot;Return&quot; || keyName == &quot;Tab&quot; || keyName == &quot;BackSpace&quot; || keyName == &quot;space&quot;)
&gt; +        return new KeyEventInfo(keyName, modifiers, true);
&gt; +
&gt; +    return new KeyEventInfo(keyName, modifiers, false);

This change of logic here is very confusing, it took me a while to figure out what the code was supposed to do. The code should be more explicit in what it does.

My suggestion: add another CString member, `keyString&apos; (or something better) to KeyEventInfo which is then passed as the 4th parameter to evas_event_feed_key_{down,up} so you don&apos;t need to put additional meaning into keyName itself. You can even make keyPadNameFromJSValue and keyNameFromJSValue return a KeyEventInfo themselves if that makes the code more simple.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>622759</commentid>
    <comment_count>17</comment_count>
      <attachid>141667</attachid>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-05-14 02:04:45 -0700</bug_when>
    <thetext>Created attachment 141667
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>622761</commentid>
    <comment_count>18</comment_count>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-05-14 02:08:04 -0700</bug_when>
    <thetext>(In reply to comment #16)
&gt; (From update of attachment 140851 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=140851&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:14
&gt; &gt; +        (WebCore::singleCharacterString):
&gt; 
&gt; Please mention what is being changed and why here.
&gt; 
&gt; &gt; Tools/DumpRenderTree/efl/EventSender.cpp:481
&gt; &gt; +    if (keyName.isNull())
&gt; &gt; +        return new KeyEventInfo(character.get()-&gt;ustring().utf8(), modifiers, true);
&gt; &gt; +    if (keyName == &quot;Return&quot; || keyName == &quot;Tab&quot; || keyName == &quot;BackSpace&quot; || keyName == &quot;space&quot;)
&gt; &gt; +        return new KeyEventInfo(keyName, modifiers, true);
&gt; &gt; +
&gt; &gt; +    return new KeyEventInfo(keyName, modifiers, false);
&gt; 
&gt; This change of logic here is very confusing, it took me a while to figure out what the code was supposed to do. The code should be more explicit in what it does.
&gt; 
&gt; My suggestion: add another CString member, `keyString&apos; (or something better) to KeyEventInfo which is then passed as the 4th parameter to evas_event_feed_key_{down,up} so you don&apos;t need to put additional meaning into keyName itself. You can even make keyPadNameFromJSValue and keyNameFromJSValue return a KeyEventInfo themselves if that makes the code more simple.

Good suggestion rakuco! Thanks!
Please review my latest patch if I&apos;ve got your idea. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>624048</commentid>
    <comment_count>19</comment_count>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-05-15 07:12:55 -0700</bug_when>
    <thetext>rakuco: Could I please get your review?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>624066</commentid>
    <comment_count>20</comment_count>
      <attachid>141667</attachid>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-05-15 07:29:32 -0700</bug_when>
    <thetext>Comment on attachment 141667
Patch

Looks good now, thank you. If it does not cause any regression in other tests, informal r+.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>624972</commentid>
    <comment_count>21</comment_count>
      <attachid>141667</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-15 22:05:45 -0700</bug_when>
    <thetext>Comment on attachment 141667
Patch

Clearing flags on attachment: 141667

Committed r117218: &lt;http://trac.webkit.org/changeset/117218&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>624973</commentid>
    <comment_count>22</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-15 22:05:50 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>625107</commentid>
    <comment_count>23</comment_count>
    <who name="Dominik Röttsches (drott)">d-r</who>
    <bug_when>2012-05-16 01:07:28 -0700</bug_when>
    <thetext>There was another bug marked as blocked by this issue in test_expectations.txt

// EventSender doesn&apos;t provide correct key string
BUGWK84710 : fast/forms/textarea-type-spaces.html = TEXT

resulting in an unexpected pass. I am removing that line from test_expectations.txt in gardening bug 86584.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>625114</commentid>
    <comment_count>24</comment_count>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-05-16 01:24:00 -0700</bug_when>
    <thetext>drott: Thanks!</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>139411</attachid>
            <date>2012-04-29 18:55:15 -0700</date>
            <delta_ts>2012-04-29 23:52:21 -0700</delta_ts>
            <desc>patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>4868</size>
            <attacher name="Kangil Han">kangil.han</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAwYzIwMTkwLi4zOGZhODczIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTItMDQt
MjkgIEthbmdpbCBIYW4gIDxrYW5naWwuaGFuQHNhbXN1bmcuY29tPgorCisgICAgICAgIFtFRkxd
W0RSVF0gRXZlbnRTZW5kZXIgZG9lc24ndCBwcm92aWRlIGNvcnJlY3Qga2V5IHN0cmluZworICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODQ3MTAKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBOb24tdmlzaWJsZSBr
ZXkgc3RyaW5nLCBpLmUuIHJpZ2h0IGFycm93IGtleSwgc2hvdWxkbid0IGJlIGRpc3BsYXllZCBv
biB0aGUgaW5wdXQgZmllbGQuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9lZmwvU2tpcHBlZDoKKwog
MjAxMi0wNC0yNyAgS2FuZ2lsIEhhbiAgPGthbmdpbC5oYW5Ac2Ftc3VuZy5jb20+CiAKICAgICAg
ICAgW0VGTF1bRFJUXSBJbXBsZW1lbnQgVGV4dElucHV0Q29udHJvbGxlci4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9Ta2lwcGVkIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
ZWZsL1NraXBwZWQKaW5kZXggOWIyYWE1Yy4uZTk5MzY2ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vZWZsL1NraXBwZWQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsL1Nr
aXBwZWQKQEAgLTIyOSwxMSArMjI5LDYgQEAgZmFzdC9sb2FkZXIvZm9ybS1zdWJtaXNzaW9uLWFm
dGVyLWJlZm9yZXVubG9hZC1jYW5jZWwuaHRtbAogIyBFRkwncyBEUlQgbmVlZHMgYSBQbGFpblRl
eHRDb250cm9sbGVyIGltcGxlbWVudGF0aW9uCiBlZGl0aW5nL3RleHQtaXRlcmF0b3IvYmFzaWMt
aXRlcmF0aW9uLmh0bWwKIAotIyBFRkwncyBEUlQga2V5IGRvd24gYnVnCi0jIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NDcxMAotZWRpdGluZy9pbnB1dC9wYXNzd29y
ZC1lY2hvLXBhc3Nub2RlLmh0bWwKLWVkaXRpbmcvaW5wdXQvcGFzc3dvcmQtZWNoby1wYXNzbm9k
ZTIuaHRtbAotCiAjIEVGTCdzIGVkaXRvciBkb2Vzbid0IGNhbmNlbCBjb21wb3NpdGlvbiBhcyBj
aGFuZ2Ugb2YgdmFsdWUKICMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTg1MTIyCiBlZGl0aW5nL2lucHV0L3NldHRpbmctaW5wdXQtdmFsdWUtY2FuY2VsLWltZS1jb21w
b3NpdGlvbi5odG1sCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VM
b2cKaW5kZXggZjVmODdiMC4uYjE5ZjVhZSAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisr
KyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDEyLTA0LTI5ICBLYW5naWwg
SGFuICA8a2FuZ2lsLmhhbkBzYW1zdW5nLmNvbT4KKworICAgICAgICBbRUZMXVtEUlRdIEV2ZW50
U2VuZGVyIGRvZXNuJ3QgcHJvdmlkZSBjb3JyZWN0IGtleSBzdHJpbmcKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg0NzEwCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm9uLXZpc2libGUga2V5IHN0cmluZywg
aS5lLiByaWdodCBhcnJvdyBrZXksIHNob3VsZG4ndCBiZSBkaXNwbGF5ZWQgb24gdGhlIGlucHV0
IGZpZWxkLgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvZWZsL0V2ZW50U2VuZGVyLmNwcDoK
KyAgICAgICAgKEtleUV2ZW50SW5mbzo6S2V5RXZlbnRJbmZvKToKKyAgICAgICAgKEtleUV2ZW50
SW5mbyk6CisgICAgICAgIChrZXlQYWROYW1lRnJvbUpTVmFsdWUpOgorICAgICAgICAoa2V5TmFt
ZUZyb21KU1ZhbHVlKToKKyAgICAgICAgKGNyZWF0ZUtleUV2ZW50SW5mbyk6CisgICAgICAgIChz
ZW5kS2V5RG93bik6CisKIDIwMTItMDQtMjcgIEthbmdpbCBIYW4gIDxrYW5naWwuaGFuQHNhbXN1
bmcuY29tPgogCiAgICAgICAgIFtFRkxdW0RSVF0gSW1wbGVtZW50IFRleHRJbnB1dENvbnRyb2xs
ZXIuCmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvRXZlbnRTZW5kZXIuY3Bw
IGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0V2ZW50U2VuZGVyLmNwcAppbmRleCAyYmVkNWM5
Li4xZjg4YTE3IDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvRXZlbnRTZW5k
ZXIuY3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2VmbC9FdmVudFNlbmRlci5jcHAKQEAg
LTEwNCwxNCArMTA0LDE2IEBAIGVudW0gWm9vbUV2ZW50IHsKIH07CiAKIHN0cnVjdCBLZXlFdmVu
dEluZm8gewotICAgIEtleUV2ZW50SW5mbyhjb25zdCBDU3RyaW5nJiBrZXlOYW1lLCBFdmFzS2V5
TW9kaWZpZXIgbW9kaWZpZXJzKQorICAgIEtleUV2ZW50SW5mbyhjb25zdCBDU3RyaW5nJiBrZXlO
YW1lLCBFdmFzS2V5TW9kaWZpZXIgbW9kaWZpZXJzLCBFaW5hX0Jvb2wgaGFzVmlzaWJsZVN0cmlu
ZykKICAgICAgICAgOiBrZXlOYW1lKGtleU5hbWUpCiAgICAgICAgICwgbW9kaWZpZXJzKG1vZGlm
aWVycykKKyAgICAgICAgLCBoYXNWaXNpYmxlU3RyaW5nKGhhc1Zpc2libGVTdHJpbmcpCiAgICAg
ewogICAgIH0KIAogICAgIGNvbnN0IENTdHJpbmcga2V5TmFtZTsKICAgICBFdmFzS2V5TW9kaWZp
ZXIgbW9kaWZpZXJzOworICAgIEVpbmFfQm9vbCBoYXNWaXNpYmxlU3RyaW5nOwogfTsKIAogc3Rh
dGljIHZvaWQgc2V0RXZhc01vZGlmaWVycyhFdmFzKiBldmFzLCBFdmFzS2V5TW9kaWZpZXIgbW9k
aWZpZXJzKQpAQCAtMzUyLDcgKzM1NCw3IEBAIHN0YXRpYyBjb25zdCBDU3RyaW5nIGtleVBhZE5h
bWVGcm9tSlNWYWx1ZShKU1N0cmluZ1JlZiBjaGFyYWN0ZXIpCiAgICAgaWYgKGVxdWFscyhjaGFy
YWN0ZXIsICJkZWxldGUiKSkKICAgICAgICAgcmV0dXJuICJLUF9EZWxldGUiOwogCi0gICAgcmV0
dXJuIGNoYXJhY3Rlci0+dXN0cmluZygpLnV0ZjgoKTsKKyAgICByZXR1cm4gQ1N0cmluZygpOwog
fQogCiBzdGF0aWMgY29uc3QgQ1N0cmluZyBrZXlOYW1lRnJvbUpTVmFsdWUoSlNTdHJpbmdSZWYg
Y2hhcmFjdGVyKQpAQCAtNDE2LDcgKzQxOCw3IEBAIHN0YXRpYyBjb25zdCBDU3RyaW5nIGtleU5h
bWVGcm9tSlNWYWx1ZShKU1N0cmluZ1JlZiBjaGFyYWN0ZXIpCiAgICAgaWYgKGNoYXJDb2RlID09
ICcgJykKICAgICAgICAgcmV0dXJuICJzcGFjZSI7CiAKLSAgICByZXR1cm4gY2hhcmFjdGVyLT51
c3RyaW5nKCkudXRmOCgpOworICAgIHJldHVybiBDU3RyaW5nKCk7CiB9CiAKIHN0YXRpYyBLZXlF
dmVudEluZm8qIGNyZWF0ZUtleUV2ZW50SW5mbyhKU0NvbnRleHRSZWYgY29udGV4dCwgc2l6ZV90
IGFyZ3VtZW50Q291bnQsIGNvbnN0IEpTVmFsdWVSZWYgYXJndW1lbnRzW10sIEpTVmFsdWVSZWYq
IGV4Y2VwdGlvbikKQEAgLTQ0MSw3ICs0NDMsMTAgQEAgc3RhdGljIEtleUV2ZW50SW5mbyogY3Jl
YXRlS2V5RXZlbnRJbmZvKEpTQ29udGV4dFJlZiBjb250ZXh0LCBzaXplX3QgYXJndW1lbnRDb3UK
ICAgICAgICAgbW9kaWZpZXJzID0gbW9kaWZpZXJzRnJvbUpTVmFsdWUoY29udGV4dCwgYXJndW1l
bnRzWzFdKTsKIAogICAgIGNvbnN0IENTdHJpbmcga2V5TmFtZSA9IChsb2NhdGlvbiA9PSBEb21L
ZXlMb2NhdGlvbk51bXBhZCkgPyBrZXlQYWROYW1lRnJvbUpTVmFsdWUoY2hhcmFjdGVyLmdldCgp
KSA6IGtleU5hbWVGcm9tSlNWYWx1ZShjaGFyYWN0ZXIuZ2V0KCkpOwotICAgIHJldHVybiBuZXcg
S2V5RXZlbnRJbmZvKGtleU5hbWUsIG1vZGlmaWVycyk7CisgICAgaWYgKGtleU5hbWUuaXNOdWxs
KCkpCisgICAgICAgIHJldHVybiBuZXcgS2V5RXZlbnRJbmZvKGNoYXJhY3Rlci5nZXQoKS0+dXN0
cmluZygpLnV0ZjgoKSwgbW9kaWZpZXJzLCBFSU5BX1RSVUUpOworCisgICAgcmV0dXJuIG5ldyBL
ZXlFdmVudEluZm8oa2V5TmFtZSwgbW9kaWZpZXJzLCBFSU5BX0ZBTFNFKTsKIH0KIAogc3RhdGlj
IHZvaWQgc2VuZEtleURvd24oRXZhcyogZXZhcywgS2V5RXZlbnRJbmZvKiBrZXlFdmVudEluZm8p
CkBAIC00NTYsOCArNDYxLDEzIEBAIHN0YXRpYyB2b2lkIHNlbmRLZXlEb3duKEV2YXMqIGV2YXMs
IEtleUV2ZW50SW5mbyoga2V5RXZlbnRJbmZvKQogCiAgICAgQVNTRVJUKGV2YXMpOwogICAgIHNl
dEV2YXNNb2RpZmllcnMoZXZhcywgbW9kaWZpZXJzKTsKLSAgICBldmFzX2V2ZW50X2ZlZWRfa2V5
X2Rvd24oZXZhcywga2V5TmFtZSwga2V5TmFtZSwga2V5TmFtZSwgMCwgMCwgMCk7Ci0gICAgZXZh
c19ldmVudF9mZWVkX2tleV91cChldmFzLCBrZXlOYW1lLCBrZXlOYW1lLCBrZXlOYW1lLCAwLCAx
LCAwKTsKKyAgICBpZiAoa2V5RXZlbnRJbmZvLT5oYXNWaXNpYmxlU3RyaW5nKSB7CisgICAgICAg
IGV2YXNfZXZlbnRfZmVlZF9rZXlfZG93bihldmFzLCBrZXlOYW1lLCBrZXlOYW1lLCBrZXlOYW1l
LCAwLCAwLCAwKTsKKyAgICAgICAgZXZhc19ldmVudF9mZWVkX2tleV91cChldmFzLCBrZXlOYW1l
LCBrZXlOYW1lLCBrZXlOYW1lLCAwLCAxLCAwKTsKKyAgICB9IGVsc2UgeworICAgICAgICBldmFz
X2V2ZW50X2ZlZWRfa2V5X2Rvd24oZXZhcywga2V5TmFtZSwga2V5TmFtZSwgMCwgMCwgMCwgMCk7
CisgICAgICAgIGV2YXNfZXZlbnRfZmVlZF9rZXlfdXAoZXZhcywga2V5TmFtZSwga2V5TmFtZSwg
MCwgMCwgMSwgMCk7CisgICAgfQogICAgIHNldEV2YXNNb2RpZmllcnMoZXZhcywgRXZhc0tleU1v
ZGlmaWVyTm9uZSk7CiAKICAgICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmw6OmRlbGl2ZXJBbGxN
dXRhdGlvbnNJZk5lY2Vzc2FyeSgpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>139421</attachid>
            <date>2012-04-29 23:52:44 -0700</date>
            <delta_ts>2012-04-30 05:05:00 -0700</delta_ts>
            <desc>patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>5336</size>
            <attacher name="Kangil Han">kangil.han</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAwYzIwMTkwLi44MjE0ZGJjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTItMDQt
MjkgIEthbmdpbCBIYW4gIDxrYW5naWwuaGFuQHNhbXN1bmcuY29tPgorCisgICAgICAgIFtFRkxd
W0RSVF0gRXZlbnRTZW5kZXIgZG9lc24ndCBwcm92aWRlIGNvcnJlY3Qga2V5IHN0cmluZworICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODQ3MTAKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDdXJyZW50IGV2ZW50
U2VuZGVyIHNob3dzIGFsbCBzdHJpbmcgdmFsdWVzIGluY2x1ZGluZyBvbmVzIHNob3VsZCBvbmx5
IGJlIHVzZWQgaW4gc291cmNlIGNvZGUuCisgICAgICAgIEZvciBleGFtcGxlLCAnUmlnaHQnIHdp
bGwgYmUgdmlzaWJsZSBvbiBpbnB1dCBmaWVsZCB3aGVuICdyaWdodCBhcnJvdycga2V5IGlzIHBy
ZXNzZWQuCisgICAgICAgIE5vdGhpbmcgaGFzIHRvIGJlIHNob3duIGluIHRoaXMgY2lyY3Vtc3Rh
bmNlLgorICAgICAgICBUaGVyZWZvcmUsIHRoaXMgcGF0Y2ggZml4ZWQgaW5jb3JyZWN0bHkgcHJv
dmlkZWQgdmFsdWUgYnkgZXZlbnRTZW5kZXIgaW4gRFJULgorCisgICAgICAgICogcGxhdGZvcm0v
ZWZsL1NraXBwZWQ6CisKIDIwMTItMDQtMjcgIEthbmdpbCBIYW4gIDxrYW5naWwuaGFuQHNhbXN1
bmcuY29tPgogCiAgICAgICAgIFtFRkxdW0RSVF0gSW1wbGVtZW50IFRleHRJbnB1dENvbnRyb2xs
ZXIuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvU2tpcHBlZCBiL0xheW91
dFRlc3RzL3BsYXRmb3JtL2VmbC9Ta2lwcGVkCmluZGV4IDliMmFhNWMuLmU5OTM2NmQgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9Ta2lwcGVkCisrKyBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2VmbC9Ta2lwcGVkCkBAIC0yMjksMTEgKzIyOSw2IEBAIGZhc3QvbG9hZGVyL2Zv
cm0tc3VibWlzc2lvbi1hZnRlci1iZWZvcmV1bmxvYWQtY2FuY2VsLmh0bWwKICMgRUZMJ3MgRFJU
IG5lZWRzIGEgUGxhaW5UZXh0Q29udHJvbGxlciBpbXBsZW1lbnRhdGlvbgogZWRpdGluZy90ZXh0
LWl0ZXJhdG9yL2Jhc2ljLWl0ZXJhdGlvbi5odG1sCiAKLSMgRUZMJ3MgRFJUIGtleSBkb3duIGJ1
ZwotIyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODQ3MTAKLWVkaXRp
bmcvaW5wdXQvcGFzc3dvcmQtZWNoby1wYXNzbm9kZS5odG1sCi1lZGl0aW5nL2lucHV0L3Bhc3N3
b3JkLWVjaG8tcGFzc25vZGUyLmh0bWwKLQogIyBFRkwncyBlZGl0b3IgZG9lc24ndCBjYW5jZWwg
Y29tcG9zaXRpb24gYXMgY2hhbmdlIG9mIHZhbHVlCiAjIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD04NTEyMgogZWRpdGluZy9pbnB1dC9zZXR0aW5nLWlucHV0LXZhbHVl
LWNhbmNlbC1pbWUtY29tcG9zaXRpb24uaHRtbApkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9n
IGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IGY1Zjg3YjAuLjM1ZDIzZWIgMTAwNjQ0Ci0tLSBhL1Rv
b2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMyBAQAorMjAx
Mi0wNC0yOSAgS2FuZ2lsIEhhbiAgPGthbmdpbC5oYW5Ac2Ftc3VuZy5jb20+CisKKyAgICAgICAg
W0VGTF1bRFJUXSBFdmVudFNlbmRlciBkb2Vzbid0IHByb3ZpZGUgY29ycmVjdCBrZXkgc3RyaW5n
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NDcxMAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEN1cnJlbnQg
ZXZlbnRTZW5kZXIgc2hvd3MgYWxsIHN0cmluZyB2YWx1ZXMgaW5jbHVkaW5nIG9uZXMgc2hvdWxk
IG9ubHkgYmUgdXNlZCBpbiBzb3VyY2UgY29kZS4KKyAgICAgICAgRm9yIGV4YW1wbGUsICdSaWdo
dCcgd2lsbCBiZSB2aXNpYmxlIG9uIGlucHV0IGZpZWxkIHdoZW4gJ3JpZ2h0IGFycm93JyBrZXkg
aXMgcHJlc3NlZC4KKyAgICAgICAgTm90aGluZyBoYXMgdG8gYmUgc2hvd24gaW4gdGhpcyBjaXJj
dW1zdGFuY2UuCisgICAgICAgIFRoZXJlZm9yZSwgdGhpcyBwYXRjaCBmaXhlZCBpbmNvcnJlY3Rs
eSBwcm92aWRlZCB2YWx1ZSBieSBldmVudFNlbmRlciBpbiBEUlQuCisKKyAgICAgICAgKiBEdW1w
UmVuZGVyVHJlZS9lZmwvRXZlbnRTZW5kZXIuY3BwOgorICAgICAgICAoS2V5RXZlbnRJbmZvOjpL
ZXlFdmVudEluZm8pOgorICAgICAgICAoS2V5RXZlbnRJbmZvKToKKyAgICAgICAgKGtleVBhZE5h
bWVGcm9tSlNWYWx1ZSk6CisgICAgICAgIChrZXlOYW1lRnJvbUpTVmFsdWUpOgorICAgICAgICAo
Y3JlYXRlS2V5RXZlbnRJbmZvKToKKyAgICAgICAgKHNlbmRLZXlEb3duKToKKwogMjAxMi0wNC0y
NyAgS2FuZ2lsIEhhbiAgPGthbmdpbC5oYW5Ac2Ftc3VuZy5jb20+CiAKICAgICAgICAgW0VGTF1b
RFJUXSBJbXBsZW1lbnQgVGV4dElucHV0Q29udHJvbGxlci4KZGlmZiAtLWdpdCBhL1Rvb2xzL0R1
bXBSZW5kZXJUcmVlL2VmbC9FdmVudFNlbmRlci5jcHAgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9l
ZmwvRXZlbnRTZW5kZXIuY3BwCmluZGV4IDJiZWQ1YzkuLjhiMzBhZmUgMTAwNjQ0Ci0tLSBhL1Rv
b2xzL0R1bXBSZW5kZXJUcmVlL2VmbC9FdmVudFNlbmRlci5jcHAKKysrIGIvVG9vbHMvRHVtcFJl
bmRlclRyZWUvZWZsL0V2ZW50U2VuZGVyLmNwcApAQCAtMTA0LDE0ICsxMDQsMTYgQEAgZW51bSBa
b29tRXZlbnQgewogfTsKIAogc3RydWN0IEtleUV2ZW50SW5mbyB7Ci0gICAgS2V5RXZlbnRJbmZv
KGNvbnN0IENTdHJpbmcmIGtleU5hbWUsIEV2YXNLZXlNb2RpZmllciBtb2RpZmllcnMpCisgICAg
S2V5RXZlbnRJbmZvKGNvbnN0IENTdHJpbmcmIGtleU5hbWUsIEV2YXNLZXlNb2RpZmllciBtb2Rp
ZmllcnMsIGJvb2wgaGFzVmlzaWJsZVN0cmluZykKICAgICAgICAgOiBrZXlOYW1lKGtleU5hbWUp
CiAgICAgICAgICwgbW9kaWZpZXJzKG1vZGlmaWVycykKKyAgICAgICAgLCBoYXNWaXNpYmxlU3Ry
aW5nKGhhc1Zpc2libGVTdHJpbmcpCiAgICAgewogICAgIH0KIAogICAgIGNvbnN0IENTdHJpbmcg
a2V5TmFtZTsKICAgICBFdmFzS2V5TW9kaWZpZXIgbW9kaWZpZXJzOworICAgIGJvb2wgaGFzVmlz
aWJsZVN0cmluZzsKIH07CiAKIHN0YXRpYyB2b2lkIHNldEV2YXNNb2RpZmllcnMoRXZhcyogZXZh
cywgRXZhc0tleU1vZGlmaWVyIG1vZGlmaWVycykKQEAgLTM1Miw3ICszNTQsNyBAQCBzdGF0aWMg
Y29uc3QgQ1N0cmluZyBrZXlQYWROYW1lRnJvbUpTVmFsdWUoSlNTdHJpbmdSZWYgY2hhcmFjdGVy
KQogICAgIGlmIChlcXVhbHMoY2hhcmFjdGVyLCAiZGVsZXRlIikpCiAgICAgICAgIHJldHVybiAi
S1BfRGVsZXRlIjsKIAotICAgIHJldHVybiBjaGFyYWN0ZXItPnVzdHJpbmcoKS51dGY4KCk7Cisg
ICAgcmV0dXJuIENTdHJpbmcoKTsKIH0KIAogc3RhdGljIGNvbnN0IENTdHJpbmcga2V5TmFtZUZy
b21KU1ZhbHVlKEpTU3RyaW5nUmVmIGNoYXJhY3RlcikKQEAgLTQxNiw3ICs0MTgsNyBAQCBzdGF0
aWMgY29uc3QgQ1N0cmluZyBrZXlOYW1lRnJvbUpTVmFsdWUoSlNTdHJpbmdSZWYgY2hhcmFjdGVy
KQogICAgIGlmIChjaGFyQ29kZSA9PSAnICcpCiAgICAgICAgIHJldHVybiAic3BhY2UiOwogCi0g
ICAgcmV0dXJuIGNoYXJhY3Rlci0+dXN0cmluZygpLnV0ZjgoKTsKKyAgICByZXR1cm4gQ1N0cmlu
ZygpOwogfQogCiBzdGF0aWMgS2V5RXZlbnRJbmZvKiBjcmVhdGVLZXlFdmVudEluZm8oSlNDb250
ZXh0UmVmIGNvbnRleHQsIHNpemVfdCBhcmd1bWVudENvdW50LCBjb25zdCBKU1ZhbHVlUmVmIGFy
Z3VtZW50c1tdLCBKU1ZhbHVlUmVmKiBleGNlcHRpb24pCkBAIC00NDEsNyArNDQzLDEwIEBAIHN0
YXRpYyBLZXlFdmVudEluZm8qIGNyZWF0ZUtleUV2ZW50SW5mbyhKU0NvbnRleHRSZWYgY29udGV4
dCwgc2l6ZV90IGFyZ3VtZW50Q291CiAgICAgICAgIG1vZGlmaWVycyA9IG1vZGlmaWVyc0Zyb21K
U1ZhbHVlKGNvbnRleHQsIGFyZ3VtZW50c1sxXSk7CiAKICAgICBjb25zdCBDU3RyaW5nIGtleU5h
bWUgPSAobG9jYXRpb24gPT0gRG9tS2V5TG9jYXRpb25OdW1wYWQpID8ga2V5UGFkTmFtZUZyb21K
U1ZhbHVlKGNoYXJhY3Rlci5nZXQoKSkgOiBrZXlOYW1lRnJvbUpTVmFsdWUoY2hhcmFjdGVyLmdl
dCgpKTsKLSAgICByZXR1cm4gbmV3IEtleUV2ZW50SW5mbyhrZXlOYW1lLCBtb2RpZmllcnMpOwor
ICAgIGlmIChrZXlOYW1lLmlzTnVsbCgpKQorICAgICAgICByZXR1cm4gbmV3IEtleUV2ZW50SW5m
byhjaGFyYWN0ZXIuZ2V0KCktPnVzdHJpbmcoKS51dGY4KCksIG1vZGlmaWVycywgdHJ1ZSk7CisK
KyAgICByZXR1cm4gbmV3IEtleUV2ZW50SW5mbyhrZXlOYW1lLCBtb2RpZmllcnMsIGZhbHNlKTsK
IH0KIAogc3RhdGljIHZvaWQgc2VuZEtleURvd24oRXZhcyogZXZhcywgS2V5RXZlbnRJbmZvKiBr
ZXlFdmVudEluZm8pCkBAIC00NTYsOCArNDYxLDEzIEBAIHN0YXRpYyB2b2lkIHNlbmRLZXlEb3du
KEV2YXMqIGV2YXMsIEtleUV2ZW50SW5mbyoga2V5RXZlbnRJbmZvKQogCiAgICAgQVNTRVJUKGV2
YXMpOwogICAgIHNldEV2YXNNb2RpZmllcnMoZXZhcywgbW9kaWZpZXJzKTsKLSAgICBldmFzX2V2
ZW50X2ZlZWRfa2V5X2Rvd24oZXZhcywga2V5TmFtZSwga2V5TmFtZSwga2V5TmFtZSwgMCwgMCwg
MCk7Ci0gICAgZXZhc19ldmVudF9mZWVkX2tleV91cChldmFzLCBrZXlOYW1lLCBrZXlOYW1lLCBr
ZXlOYW1lLCAwLCAxLCAwKTsKKyAgICBpZiAoa2V5RXZlbnRJbmZvLT5oYXNWaXNpYmxlU3RyaW5n
KSB7CisgICAgICAgIGV2YXNfZXZlbnRfZmVlZF9rZXlfZG93bihldmFzLCBrZXlOYW1lLCBrZXlO
YW1lLCBrZXlOYW1lLCAwLCAwLCAwKTsKKyAgICAgICAgZXZhc19ldmVudF9mZWVkX2tleV91cChl
dmFzLCBrZXlOYW1lLCBrZXlOYW1lLCBrZXlOYW1lLCAwLCAxLCAwKTsKKyAgICB9IGVsc2Ugewor
ICAgICAgICBldmFzX2V2ZW50X2ZlZWRfa2V5X2Rvd24oZXZhcywga2V5TmFtZSwga2V5TmFtZSwg
MCwgMCwgMCwgMCk7CisgICAgICAgIGV2YXNfZXZlbnRfZmVlZF9rZXlfdXAoZXZhcywga2V5TmFt
ZSwga2V5TmFtZSwgMCwgMCwgMSwgMCk7CisgICAgfQogICAgIHNldEV2YXNNb2RpZmllcnMoZXZh
cywgRXZhc0tleU1vZGlmaWVyTm9uZSk7CiAKICAgICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmw6
OmRlbGl2ZXJBbGxNdXRhdGlvbnNJZk5lY2Vzc2FyeSgpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>139431</attachid>
            <date>2012-04-30 05:05:22 -0700</date>
            <delta_ts>2012-05-08 18:57:05 -0700</delta_ts>
            <desc>patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>6967</size>
            <attacher name="Kangil Han">kangil.han</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAwYzIwMTkwLi44MjE0ZGJjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTItMDQt
MjkgIEthbmdpbCBIYW4gIDxrYW5naWwuaGFuQHNhbXN1bmcuY29tPgorCisgICAgICAgIFtFRkxd
W0RSVF0gRXZlbnRTZW5kZXIgZG9lc24ndCBwcm92aWRlIGNvcnJlY3Qga2V5IHN0cmluZworICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODQ3MTAKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDdXJyZW50IGV2ZW50
U2VuZGVyIHNob3dzIGFsbCBzdHJpbmcgdmFsdWVzIGluY2x1ZGluZyBvbmVzIHNob3VsZCBvbmx5
IGJlIHVzZWQgaW4gc291cmNlIGNvZGUuCisgICAgICAgIEZvciBleGFtcGxlLCAnUmlnaHQnIHdp
bGwgYmUgdmlzaWJsZSBvbiBpbnB1dCBmaWVsZCB3aGVuICdyaWdodCBhcnJvdycga2V5IGlzIHBy
ZXNzZWQuCisgICAgICAgIE5vdGhpbmcgaGFzIHRvIGJlIHNob3duIGluIHRoaXMgY2lyY3Vtc3Rh
bmNlLgorICAgICAgICBUaGVyZWZvcmUsIHRoaXMgcGF0Y2ggZml4ZWQgaW5jb3JyZWN0bHkgcHJv
dmlkZWQgdmFsdWUgYnkgZXZlbnRTZW5kZXIgaW4gRFJULgorCisgICAgICAgICogcGxhdGZvcm0v
ZWZsL1NraXBwZWQ6CisKIDIwMTItMDQtMjcgIEthbmdpbCBIYW4gIDxrYW5naWwuaGFuQHNhbXN1
bmcuY29tPgogCiAgICAgICAgIFtFRkxdW0RSVF0gSW1wbGVtZW50IFRleHRJbnB1dENvbnRyb2xs
ZXIuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvU2tpcHBlZCBiL0xheW91
dFRlc3RzL3BsYXRmb3JtL2VmbC9Ta2lwcGVkCmluZGV4IDliMmFhNWMuLmU5OTM2NmQgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9Ta2lwcGVkCisrKyBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2VmbC9Ta2lwcGVkCkBAIC0yMjksMTEgKzIyOSw2IEBAIGZhc3QvbG9hZGVyL2Zv
cm0tc3VibWlzc2lvbi1hZnRlci1iZWZvcmV1bmxvYWQtY2FuY2VsLmh0bWwKICMgRUZMJ3MgRFJU
IG5lZWRzIGEgUGxhaW5UZXh0Q29udHJvbGxlciBpbXBsZW1lbnRhdGlvbgogZWRpdGluZy90ZXh0
LWl0ZXJhdG9yL2Jhc2ljLWl0ZXJhdGlvbi5odG1sCiAKLSMgRUZMJ3MgRFJUIGtleSBkb3duIGJ1
ZwotIyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODQ3MTAKLWVkaXRp
bmcvaW5wdXQvcGFzc3dvcmQtZWNoby1wYXNzbm9kZS5odG1sCi1lZGl0aW5nL2lucHV0L3Bhc3N3
b3JkLWVjaG8tcGFzc25vZGUyLmh0bWwKLQogIyBFRkwncyBlZGl0b3IgZG9lc24ndCBjYW5jZWwg
Y29tcG9zaXRpb24gYXMgY2hhbmdlIG9mIHZhbHVlCiAjIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD04NTEyMgogZWRpdGluZy9pbnB1dC9zZXR0aW5nLWlucHV0LXZhbHVl
LWNhbmNlbC1pbWUtY29tcG9zaXRpb24uaHRtbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
Q2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDc4YWZkMzMuLjZhYTdh
NWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxMi0wNC0zMCAgS2FuZ2lsIEhhbiAg
PGthbmdpbC5oYW5Ac2Ftc3VuZy5jb20+CisKKyAgICAgICAgW0VGTF1bRFJUXSBFdmVudFNlbmRl
ciBkb2Vzbid0IHByb3ZpZGUgY29ycmVjdCBrZXkgc3RyaW5nCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NDcxMAorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEN1cnJlbnQgZXZlbnRTZW5kZXIgc2hvd3MgYWxs
IHN0cmluZyB2YWx1ZXMgaW5jbHVkaW5nIG9uZXMgc2hvdWxkIG9ubHkgYmUgdXNlZCBpbiBzb3Vy
Y2UgY29kZS4KKyAgICAgICAgRm9yIGV4YW1wbGUsICdSaWdodCcgd2lsbCBiZSB2aXNpYmxlIG9u
IGlucHV0IGZpZWxkIHdoZW4gJ3JpZ2h0IGFycm93JyBrZXkgaXMgcHJlc3NlZC4KKyAgICAgICAg
Tm90aGluZyBoYXMgdG8gYmUgc2hvd24gaW4gdGhpcyBjaXJjdW1zdGFuY2UuCisgICAgICAgIFRo
ZXJlZm9yZSwgdGhpcyBwYXRjaCBmaXhlZCBpbmNvcnJlY3RseSBwcm92aWRlZCB2YWx1ZSBieSBl
dmVudFNlbmRlciBpbiBEUlQuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9lZmwvRWZsS2V5Ym9hcmRV
dGlsaXRpZXMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6c2luZ2xlQ2hhcmFjdGVyU3RyaW5nKToK
KwogMjAxMi0wNC0yNyAgS2VudGFybyBIYXJhICA8aGFyYWtlbkBjaHJvbWl1bS5vcmc+CiAKICAg
ICAgICAgW1Y4XSBJbXBsZW1lbnQgYSBoZWxwZXIgbWV0aG9kIFY4UHJveHk6OnRocm93Tm90RW5v
dWdoQXJndW1lbnRzRXJyb3IoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
ZWZsL0VmbEtleWJvYXJkVXRpbGl0aWVzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2Vm
bC9FZmxLZXlib2FyZFV0aWxpdGllcy5jcHAKaW5kZXggYWExYjVlOC4uNzI2MWY1MSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZWZsL0VmbEtleWJvYXJkVXRpbGl0aWVzLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9lZmwvRWZsS2V5Ym9hcmRVdGlsaXRpZXMu
Y3BwCkBAIC0xODcsNiArMTg3LDggQEAgU3RyaW5nIHNpbmdsZUNoYXJhY3RlclN0cmluZyhjb25z
dCBTdHJpbmcmIGtleU5hbWUpCiAgICAgICAgIHJldHVybiBTdHJpbmcoIlx4OCIpOwogICAgIGlm
IChrZXlOYW1lID09ICJUYWIiKQogICAgICAgICByZXR1cm4gU3RyaW5nKCJcdCIpOworICAgIGlm
IChrZXlOYW1lID09ICJzcGFjZSIpCisgICAgICAgIHJldHVybiBTdHJpbmcoIiAiKTsKICAgICBy
ZXR1cm4ga2V5TmFtZTsKIH0KIApkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMv
Q2hhbmdlTG9nCmluZGV4IGY1Zjg3YjAuLjM1ZDIzZWIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5n
ZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMyBAQAorMjAxMi0wNC0yOSAg
S2FuZ2lsIEhhbiAgPGthbmdpbC5oYW5Ac2Ftc3VuZy5jb20+CisKKyAgICAgICAgW0VGTF1bRFJU
XSBFdmVudFNlbmRlciBkb2Vzbid0IHByb3ZpZGUgY29ycmVjdCBrZXkgc3RyaW5nCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NDcxMAorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEN1cnJlbnQgZXZlbnRTZW5k
ZXIgc2hvd3MgYWxsIHN0cmluZyB2YWx1ZXMgaW5jbHVkaW5nIG9uZXMgc2hvdWxkIG9ubHkgYmUg
dXNlZCBpbiBzb3VyY2UgY29kZS4KKyAgICAgICAgRm9yIGV4YW1wbGUsICdSaWdodCcgd2lsbCBi
ZSB2aXNpYmxlIG9uIGlucHV0IGZpZWxkIHdoZW4gJ3JpZ2h0IGFycm93JyBrZXkgaXMgcHJlc3Nl
ZC4KKyAgICAgICAgTm90aGluZyBoYXMgdG8gYmUgc2hvd24gaW4gdGhpcyBjaXJjdW1zdGFuY2Uu
CisgICAgICAgIFRoZXJlZm9yZSwgdGhpcyBwYXRjaCBmaXhlZCBpbmNvcnJlY3RseSBwcm92aWRl
ZCB2YWx1ZSBieSBldmVudFNlbmRlciBpbiBEUlQuCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJl
ZS9lZmwvRXZlbnRTZW5kZXIuY3BwOgorICAgICAgICAoS2V5RXZlbnRJbmZvOjpLZXlFdmVudElu
Zm8pOgorICAgICAgICAoS2V5RXZlbnRJbmZvKToKKyAgICAgICAgKGtleVBhZE5hbWVGcm9tSlNW
YWx1ZSk6CisgICAgICAgIChrZXlOYW1lRnJvbUpTVmFsdWUpOgorICAgICAgICAoY3JlYXRlS2V5
RXZlbnRJbmZvKToKKyAgICAgICAgKHNlbmRLZXlEb3duKToKKwogMjAxMi0wNC0yNyAgS2FuZ2ls
IEhhbiAgPGthbmdpbC5oYW5Ac2Ftc3VuZy5jb20+CiAKICAgICAgICAgW0VGTF1bRFJUXSBJbXBs
ZW1lbnQgVGV4dElucHV0Q29udHJvbGxlci4KZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJU
cmVlL2VmbC9FdmVudFNlbmRlci5jcHAgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvRXZlbnRT
ZW5kZXIuY3BwCmluZGV4IDJiZWQ1YzkuLmU5ODU2Y2QgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL2VmbC9FdmVudFNlbmRlci5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUv
ZWZsL0V2ZW50U2VuZGVyLmNwcApAQCAtMTA0LDE0ICsxMDQsMTYgQEAgZW51bSBab29tRXZlbnQg
ewogfTsKIAogc3RydWN0IEtleUV2ZW50SW5mbyB7Ci0gICAgS2V5RXZlbnRJbmZvKGNvbnN0IENT
dHJpbmcmIGtleU5hbWUsIEV2YXNLZXlNb2RpZmllciBtb2RpZmllcnMpCisgICAgS2V5RXZlbnRJ
bmZvKGNvbnN0IENTdHJpbmcmIGtleU5hbWUsIEV2YXNLZXlNb2RpZmllciBtb2RpZmllcnMsIGJv
b2wgaGFzVmlzaWJsZVN0cmluZykKICAgICAgICAgOiBrZXlOYW1lKGtleU5hbWUpCiAgICAgICAg
ICwgbW9kaWZpZXJzKG1vZGlmaWVycykKKyAgICAgICAgLCBoYXNWaXNpYmxlU3RyaW5nKGhhc1Zp
c2libGVTdHJpbmcpCiAgICAgewogICAgIH0KIAogICAgIGNvbnN0IENTdHJpbmcga2V5TmFtZTsK
ICAgICBFdmFzS2V5TW9kaWZpZXIgbW9kaWZpZXJzOworICAgIGJvb2wgaGFzVmlzaWJsZVN0cmlu
ZzsKIH07CiAKIHN0YXRpYyB2b2lkIHNldEV2YXNNb2RpZmllcnMoRXZhcyogZXZhcywgRXZhc0tl
eU1vZGlmaWVyIG1vZGlmaWVycykKQEAgLTM1Miw3ICszNTQsNyBAQCBzdGF0aWMgY29uc3QgQ1N0
cmluZyBrZXlQYWROYW1lRnJvbUpTVmFsdWUoSlNTdHJpbmdSZWYgY2hhcmFjdGVyKQogICAgIGlm
IChlcXVhbHMoY2hhcmFjdGVyLCAiZGVsZXRlIikpCiAgICAgICAgIHJldHVybiAiS1BfRGVsZXRl
IjsKIAotICAgIHJldHVybiBjaGFyYWN0ZXItPnVzdHJpbmcoKS51dGY4KCk7CisgICAgcmV0dXJu
IENTdHJpbmcoKTsKIH0KIAogc3RhdGljIGNvbnN0IENTdHJpbmcga2V5TmFtZUZyb21KU1ZhbHVl
KEpTU3RyaW5nUmVmIGNoYXJhY3RlcikKQEAgLTQxNiw3ICs0MTgsNyBAQCBzdGF0aWMgY29uc3Qg
Q1N0cmluZyBrZXlOYW1lRnJvbUpTVmFsdWUoSlNTdHJpbmdSZWYgY2hhcmFjdGVyKQogICAgIGlm
IChjaGFyQ29kZSA9PSAnICcpCiAgICAgICAgIHJldHVybiAic3BhY2UiOwogCi0gICAgcmV0dXJu
IGNoYXJhY3Rlci0+dXN0cmluZygpLnV0ZjgoKTsKKyAgICByZXR1cm4gQ1N0cmluZygpOwogfQog
CiBzdGF0aWMgS2V5RXZlbnRJbmZvKiBjcmVhdGVLZXlFdmVudEluZm8oSlNDb250ZXh0UmVmIGNv
bnRleHQsIHNpemVfdCBhcmd1bWVudENvdW50LCBjb25zdCBKU1ZhbHVlUmVmIGFyZ3VtZW50c1td
LCBKU1ZhbHVlUmVmKiBleGNlcHRpb24pCkBAIC00NDEsNyArNDQzLDEyIEBAIHN0YXRpYyBLZXlF
dmVudEluZm8qIGNyZWF0ZUtleUV2ZW50SW5mbyhKU0NvbnRleHRSZWYgY29udGV4dCwgc2l6ZV90
IGFyZ3VtZW50Q291CiAgICAgICAgIG1vZGlmaWVycyA9IG1vZGlmaWVyc0Zyb21KU1ZhbHVlKGNv
bnRleHQsIGFyZ3VtZW50c1sxXSk7CiAKICAgICBjb25zdCBDU3RyaW5nIGtleU5hbWUgPSAobG9j
YXRpb24gPT0gRG9tS2V5TG9jYXRpb25OdW1wYWQpID8ga2V5UGFkTmFtZUZyb21KU1ZhbHVlKGNo
YXJhY3Rlci5nZXQoKSkgOiBrZXlOYW1lRnJvbUpTVmFsdWUoY2hhcmFjdGVyLmdldCgpKTsKLSAg
ICByZXR1cm4gbmV3IEtleUV2ZW50SW5mbyhrZXlOYW1lLCBtb2RpZmllcnMpOworICAgIGlmIChr
ZXlOYW1lLmlzTnVsbCgpKQorICAgICAgICByZXR1cm4gbmV3IEtleUV2ZW50SW5mbyhjaGFyYWN0
ZXIuZ2V0KCktPnVzdHJpbmcoKS51dGY4KCksIG1vZGlmaWVycywgdHJ1ZSk7CisgICAgaWYgKGtl
eU5hbWUgPT0gIlJldHVybiIgfHwga2V5TmFtZSA9PSAiVGFiIiB8fCBrZXlOYW1lID09ICJCYWNr
U3BhY2UiIHx8IGtleU5hbWUgPT0gInNwYWNlIikKKyAgICAgICAgcmV0dXJuIG5ldyBLZXlFdmVu
dEluZm8oa2V5TmFtZSwgbW9kaWZpZXJzLCB0cnVlKTsKKworICAgIHJldHVybiBuZXcgS2V5RXZl
bnRJbmZvKGtleU5hbWUsIG1vZGlmaWVycywgZmFsc2UpOwogfQogCiBzdGF0aWMgdm9pZCBzZW5k
S2V5RG93bihFdmFzKiBldmFzLCBLZXlFdmVudEluZm8qIGtleUV2ZW50SW5mbykKQEAgLTQ1Niw4
ICs0NjMsMTMgQEAgc3RhdGljIHZvaWQgc2VuZEtleURvd24oRXZhcyogZXZhcywgS2V5RXZlbnRJ
bmZvKiBrZXlFdmVudEluZm8pCiAKICAgICBBU1NFUlQoZXZhcyk7CiAgICAgc2V0RXZhc01vZGlm
aWVycyhldmFzLCBtb2RpZmllcnMpOwotICAgIGV2YXNfZXZlbnRfZmVlZF9rZXlfZG93bihldmFz
LCBrZXlOYW1lLCBrZXlOYW1lLCBrZXlOYW1lLCAwLCAwLCAwKTsKLSAgICBldmFzX2V2ZW50X2Zl
ZWRfa2V5X3VwKGV2YXMsIGtleU5hbWUsIGtleU5hbWUsIGtleU5hbWUsIDAsIDEsIDApOworICAg
IGlmIChrZXlFdmVudEluZm8tPmhhc1Zpc2libGVTdHJpbmcpIHsKKyAgICAgICAgZXZhc19ldmVu
dF9mZWVkX2tleV9kb3duKGV2YXMsIGtleU5hbWUsIGtleU5hbWUsIGtleU5hbWUsIDAsIDAsIDAp
OworICAgICAgICBldmFzX2V2ZW50X2ZlZWRfa2V5X3VwKGV2YXMsIGtleU5hbWUsIGtleU5hbWUs
IGtleU5hbWUsIDAsIDEsIDApOworICAgIH0gZWxzZSB7CisgICAgICAgIGV2YXNfZXZlbnRfZmVl
ZF9rZXlfZG93bihldmFzLCBrZXlOYW1lLCBrZXlOYW1lLCAwLCAwLCAwLCAwKTsKKyAgICAgICAg
ZXZhc19ldmVudF9mZWVkX2tleV91cChldmFzLCBrZXlOYW1lLCBrZXlOYW1lLCAwLCAwLCAxLCAw
KTsKKyAgICB9CiAgICAgc2V0RXZhc01vZGlmaWVycyhldmFzLCBFdmFzS2V5TW9kaWZpZXJOb25l
KTsKIAogICAgIER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6ZGVsaXZlckFsbE11dGF0aW9uc0lm
TmVjZXNzYXJ5KCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>140848</attachid>
            <date>2012-05-08 18:57:13 -0700</date>
            <delta_ts>2012-05-08 19:16:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-84710-20120509105714.patch</filename>
            <type>text/plain</type>
            <size>7417</size>
            <attacher name="Kangil Han">kangil.han</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE2NDc3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTc2YjA3YzE4Y2JlMDM4
YzIzMDFkOGMxYzhiNzc0ZWExYjQyODc3ZS4uNzhmZDMwYTY5MjYxZDIxMDhhZTY5ODY3OTQzZjZm
ZTk1NTEyYWNhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEyLTA1LTA4ICBLYW5n
aWwgSGFuICA8a2FuZ2lsLmhhbkBzYW1zdW5nLmNvbT4KKworICAgICAgICBbRUZMXVtEUlRdIEV2
ZW50U2VuZGVyIGRvZXNuJ3QgcHJvdmlkZSBjb3JyZWN0IGtleSBzdHJpbmcKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg0NzEwCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ3VycmVudCBldmVudFNlbmRlciBz
aG93cyBhbGwgc3RyaW5nIHZhbHVlcyBpbmNsdWRpbmcgb25lcyBzaG91bGQgb25seSBiZSB1c2Vk
IGluIHNvdXJjZSBjb2RlLgorICAgICAgICBGb3IgZXhhbXBsZSwgJ1JpZ2h0JyB3aWxsIGJlIHZp
c2libGUgb24gaW5wdXQgZmllbGQgd2hlbiAncmlnaHQgYXJyb3cnIGtleSBpcyBwcmVzc2VkLgor
ICAgICAgICBOb3RoaW5nIGhhcyB0byBiZSBzaG93biBpbiB0aGlzIGNpcmN1bXN0YW5jZS4KKyAg
ICAgICAgVGhlcmVmb3JlLCB0aGlzIHBhdGNoIGZpeGVkIGluY29ycmVjdGx5IHByb3ZpZGVkIHZh
bHVlIGJ5IGV2ZW50U2VuZGVyIGluIERSVC4KKworICAgICAgICAqIHBsYXRmb3JtL2VmbC9FZmxL
ZXlib2FyZFV0aWxpdGllcy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpzaW5nbGVDaGFyYWN0ZXJT
dHJpbmcpOgorCiAyMDEyLTA1LTA4ICBBYmhpc2hlayBBcnlhICA8aW5mZXJub0BjaHJvbWl1bS5v
cmc+CiAKICAgICAgICAgQ3Jhc2ggZHVlIHRvIG93bmluZyByZW5kZXJlciBub3QgcmVtb3ZlZCBm
cm9tIGN1c3RvbSBzY3JvbGxiYXIuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9lZmwvRWZsS2V5Ym9hcmRVdGlsaXRpZXMuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
ZWZsL0VmbEtleWJvYXJkVXRpbGl0aWVzLmNwcAppbmRleCA5ZThlYjEwMmEyMTE5ZTEzMzZlYjQ5
NmNkYmI4NTFlYTQyNzQ2MDRiLi4xM2MzNzU3YzdmNmQ5NjJmZjM0MTYzZmI3NDA2M2Q5M2E0NTlh
MWM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9lZmwvRWZsS2V5Ym9hcmRV
dGlsaXRpZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2VmbC9FZmxLZXlib2Fy
ZFV0aWxpdGllcy5jcHAKQEAgLTIwOSw2ICsyMDksOCBAQCBTdHJpbmcgc2luZ2xlQ2hhcmFjdGVy
U3RyaW5nKGNvbnN0IFN0cmluZyYga2V5TmFtZSkKICAgICAgICAgcmV0dXJuIFN0cmluZygiXHg4
Iik7CiAgICAgaWYgKGtleU5hbWUgPT0gIlRhYiIpCiAgICAgICAgIHJldHVybiBTdHJpbmcoIlx0
Iik7CisgICAgaWYgKGtleU5hbWUgPT0gInNwYWNlIikKKyAgICAgICAgcmV0dXJuIFN0cmluZygi
ICIpOwogICAgIHJldHVybiBrZXlOYW1lOwogfQogCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VM
b2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYWU1ZmJmOTEyNDYyODllOWVkNmVmZGUxNTQ2YmRl
MTE4M2QzZjU5ZS4uNzZkMWU0NmY3NGQ4MzA3ZTMwMjlmMjcyMzQ0MDQ5NmU0NjZmMmI5NSAxMDA2
NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSw1ICsx
LDI1IEBACiAyMDEyLTA1LTA4ICBLYW5naWwgSGFuICA8a2FuZ2lsLmhhbkBzYW1zdW5nLmNvbT4K
IAorICAgICAgICBbRUZMXVtEUlRdIEV2ZW50U2VuZGVyIGRvZXNuJ3QgcHJvdmlkZSBjb3JyZWN0
IGtleSBzdHJpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTg0NzEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgQ3VycmVudCBldmVudFNlbmRlciBzaG93cyBhbGwgc3RyaW5nIHZhbHVlcyBpbmNsdWRpbmcg
b25lcyBzaG91bGQgb25seSBiZSB1c2VkIGluIHNvdXJjZSBjb2RlLgorICAgICAgICBGb3IgZXhh
bXBsZSwgJ1JpZ2h0JyB3aWxsIGJlIHZpc2libGUgb24gaW5wdXQgZmllbGQgd2hlbiAncmlnaHQg
YXJyb3cnIGtleSBpcyBwcmVzc2VkLgorICAgICAgICBOb3RoaW5nIGhhcyB0byBiZSBzaG93biBp
biB0aGlzIGNpcmN1bXN0YW5jZS4KKyAgICAgICAgVGhlcmVmb3JlLCB0aGlzIHBhdGNoIGZpeGVk
IGluY29ycmVjdGx5IHByb3ZpZGVkIHZhbHVlIGJ5IGV2ZW50U2VuZGVyIGluIERSVC4KKworICAg
ICAgICAqIER1bXBSZW5kZXJUcmVlL2VmbC9FdmVudFNlbmRlci5jcHA6CisgICAgICAgIChLZXlF
dmVudEluZm86OktleUV2ZW50SW5mbyk6CisgICAgICAgIChLZXlFdmVudEluZm8pOgorICAgICAg
ICAoa2V5UGFkTmFtZUZyb21KU1ZhbHVlKToKKyAgICAgICAgKGtleU5hbWVGcm9tSlNWYWx1ZSk6
CisgICAgICAgIChjcmVhdGVLZXlFdmVudEluZm8pOgorICAgICAgICAoc2VuZEtleURvd24pOgor
CisyMDEyLTA1LTA4ICBLYW5naWwgSGFuICA8a2FuZ2lsLmhhbkBzYW1zdW5nLmNvbT4KKwogICAg
ICAgICBbRUZMXVtEUlRdIEltcGxlbWVudCBUZXh0SW5wdXRDb250cm9sbGVyLgogICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Nzg1NTkKIApkaWZmIC0tZ2l0
IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0V2ZW50U2VuZGVyLmNwcCBiL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL2VmbC9FdmVudFNlbmRlci5jcHAKaW5kZXggMWI5YTQ1MjZkY2EwN2IxYjk2NjFk
MmFkODg4NzMwY2I4MDg2ZjJhOC4uMTJlOGQwNjQ2MDhhZWYwYWE4MDExZWY1OGJiZDdmMDAzYTEx
NjEwMiAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0V2ZW50U2VuZGVyLmNw
cAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvRXZlbnRTZW5kZXIuY3BwCkBAIC0xMDks
MTQgKzEwOSwxNiBAQCBlbnVtIEV2ZW50UXVldWVTdHJhdGVneSB7CiB9OwogCiBzdHJ1Y3QgS2V5
RXZlbnRJbmZvIHsKLSAgICBLZXlFdmVudEluZm8oY29uc3QgQ1N0cmluZyYga2V5TmFtZSwgRXZh
c0tleU1vZGlmaWVyIG1vZGlmaWVycykKKyAgICBLZXlFdmVudEluZm8oY29uc3QgQ1N0cmluZyYg
a2V5TmFtZSwgRXZhc0tleU1vZGlmaWVyIG1vZGlmaWVycywgYm9vbCBoYXNWaXNpYmxlU3RyaW5n
KQogICAgICAgICA6IGtleU5hbWUoa2V5TmFtZSkKICAgICAgICAgLCBtb2RpZmllcnMobW9kaWZp
ZXJzKQorICAgICAgICAsIGhhc1Zpc2libGVTdHJpbmcoaGFzVmlzaWJsZVN0cmluZykKICAgICB7
CiAgICAgfQogCiAgICAgY29uc3QgQ1N0cmluZyBrZXlOYW1lOwogICAgIEV2YXNLZXlNb2RpZmll
ciBtb2RpZmllcnM7CisgICAgYm9vbCBoYXNWaXNpYmxlU3RyaW5nOwogfTsKIAogc3RydWN0IE1v
dXNlRXZlbnRJbmZvIHsKQEAgLTM4Miw3ICszODQsNyBAQCBzdGF0aWMgY29uc3QgQ1N0cmluZyBr
ZXlQYWROYW1lRnJvbUpTVmFsdWUoSlNTdHJpbmdSZWYgY2hhcmFjdGVyKQogICAgIGlmIChlcXVh
bHMoY2hhcmFjdGVyLCAiZGVsZXRlIikpCiAgICAgICAgIHJldHVybiAiS1BfRGVsZXRlIjsKIAot
ICAgIHJldHVybiBjaGFyYWN0ZXItPnVzdHJpbmcoKS51dGY4KCk7CisgICAgcmV0dXJuIENTdHJp
bmcoKTsKIH0KIAogc3RhdGljIGNvbnN0IENTdHJpbmcga2V5TmFtZUZyb21KU1ZhbHVlKEpTU3Ry
aW5nUmVmIGNoYXJhY3RlcikKQEAgLTQ0Niw3ICs0NDgsNyBAQCBzdGF0aWMgY29uc3QgQ1N0cmlu
ZyBrZXlOYW1lRnJvbUpTVmFsdWUoSlNTdHJpbmdSZWYgY2hhcmFjdGVyKQogICAgIGlmIChjaGFy
Q29kZSA9PSAnICcpCiAgICAgICAgIHJldHVybiAic3BhY2UiOwogCi0gICAgcmV0dXJuIGNoYXJh
Y3Rlci0+dXN0cmluZygpLnV0ZjgoKTsKKyAgICByZXR1cm4gQ1N0cmluZygpOwogfQogCiBzdGF0
aWMgS2V5RXZlbnRJbmZvKiBjcmVhdGVLZXlFdmVudEluZm8oSlNDb250ZXh0UmVmIGNvbnRleHQs
IHNpemVfdCBhcmd1bWVudENvdW50LCBjb25zdCBKU1ZhbHVlUmVmIGFyZ3VtZW50c1tdLCBKU1Zh
bHVlUmVmKiBleGNlcHRpb24pCkBAIC00NzEsNyArNDczLDEyIEBAIHN0YXRpYyBLZXlFdmVudElu
Zm8qIGNyZWF0ZUtleUV2ZW50SW5mbyhKU0NvbnRleHRSZWYgY29udGV4dCwgc2l6ZV90IGFyZ3Vt
ZW50Q291CiAgICAgICAgIG1vZGlmaWVycyA9IG1vZGlmaWVyc0Zyb21KU1ZhbHVlKGNvbnRleHQs
IGFyZ3VtZW50c1sxXSk7CiAKICAgICBjb25zdCBDU3RyaW5nIGtleU5hbWUgPSAobG9jYXRpb24g
PT0gRG9tS2V5TG9jYXRpb25OdW1wYWQpID8ga2V5UGFkTmFtZUZyb21KU1ZhbHVlKGNoYXJhY3Rl
ci5nZXQoKSkgOiBrZXlOYW1lRnJvbUpTVmFsdWUoY2hhcmFjdGVyLmdldCgpKTsKLSAgICByZXR1
cm4gbmV3IEtleUV2ZW50SW5mbyhrZXlOYW1lLCBtb2RpZmllcnMpOworICAgIGlmIChrZXlOYW1l
LmlzTnVsbCgpKQorICAgICAgICByZXR1cm4gbmV3IEtleUV2ZW50SW5mbyhjaGFyYWN0ZXIuZ2V0
KCktPnVzdHJpbmcoKS51dGY4KCksIG1vZGlmaWVycywgdHJ1ZSk7CisgICAgaWYgKGtleU5hbWUg
PT0gIlJldHVybiIgfHwga2V5TmFtZSA9PSAiVGFiIiB8fCBrZXlOYW1lID09ICJCYWNrU3BhY2Ui
IHx8IGtleU5hbWUgPT0gInNwYWNlIikKKyAgICAgICAgcmV0dXJuIG5ldyBLZXlFdmVudEluZm8o
a2V5TmFtZSwgbW9kaWZpZXJzLCB0cnVlKTsKKworICAgIHJldHVybiBuZXcgS2V5RXZlbnRJbmZv
KGtleU5hbWUsIG1vZGlmaWVycywgZmFsc2UpOwogfQogCiBzdGF0aWMgdm9pZCBzZW5kS2V5RG93
bihFdmFzKiBldmFzLCBLZXlFdmVudEluZm8qIGtleUV2ZW50SW5mbykKQEAgLTQ4Niw4ICs0OTMs
MTMgQEAgc3RhdGljIHZvaWQgc2VuZEtleURvd24oRXZhcyogZXZhcywgS2V5RXZlbnRJbmZvKiBr
ZXlFdmVudEluZm8pCiAKICAgICBBU1NFUlQoZXZhcyk7CiAgICAgc2V0RXZhc01vZGlmaWVycyhl
dmFzLCBtb2RpZmllcnMpOwotICAgIGV2YXNfZXZlbnRfZmVlZF9rZXlfZG93bihldmFzLCBrZXlO
YW1lLCBrZXlOYW1lLCBrZXlOYW1lLCAwLCAwLCAwKTsKLSAgICBldmFzX2V2ZW50X2ZlZWRfa2V5
X3VwKGV2YXMsIGtleU5hbWUsIGtleU5hbWUsIGtleU5hbWUsIDAsIDEsIDApOworICAgIGlmIChr
ZXlFdmVudEluZm8tPmhhc1Zpc2libGVTdHJpbmcpIHsKKyAgICAgICAgZXZhc19ldmVudF9mZWVk
X2tleV9kb3duKGV2YXMsIGtleU5hbWUsIGtleU5hbWUsIGtleU5hbWUsIDAsIDAsIDApOworICAg
ICAgICBldmFzX2V2ZW50X2ZlZWRfa2V5X3VwKGV2YXMsIGtleU5hbWUsIGtleU5hbWUsIGtleU5h
bWUsIDAsIDEsIDApOworICAgIH0gZWxzZSB7CisgICAgICAgIGV2YXNfZXZlbnRfZmVlZF9rZXlf
ZG93bihldmFzLCBrZXlOYW1lLCBrZXlOYW1lLCAwLCAwLCAwLCAwKTsKKyAgICAgICAgZXZhc19l
dmVudF9mZWVkX2tleV91cChldmFzLCBrZXlOYW1lLCBrZXlOYW1lLCAwLCAwLCAxLCAwKTsKKyAg
ICB9CiAgICAgc2V0RXZhc01vZGlmaWVycyhldmFzLCBFdmFzS2V5TW9kaWZpZXJOb25lKTsKIAog
ICAgIER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6ZGVsaXZlckFsbE11dGF0aW9uc0lmTmVjZXNz
YXJ5KCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKaW5kZXggMWJmZGRmY2NiYzRjNWU0MWE4NjY1ZjVjNDk1MzMyYWNhNTQxOTVhZS4u
NDUwZWQyMDRmM2NhMWE5MjNjMmZkN2FkNzljYTQzMzVmNjFhYWIxOSAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDE3IEBACisyMDEyLTA1LTA4ICBLYW5naWwgSGFuICA8a2FuZ2lsLmhhbkBzYW1zdW5nLmNvbT4K
KworICAgICAgICBbRUZMXVtEUlRdIEV2ZW50U2VuZGVyIGRvZXNuJ3QgcHJvdmlkZSBjb3JyZWN0
IGtleSBzdHJpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTg0NzEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgQ3VycmVudCBldmVudFNlbmRlciBzaG93cyBhbGwgc3RyaW5nIHZhbHVlcyBpbmNsdWRpbmcg
b25lcyBzaG91bGQgb25seSBiZSB1c2VkIGluIHNvdXJjZSBjb2RlLgorICAgICAgICBGb3IgZXhh
bXBsZSwgJ1JpZ2h0JyB3aWxsIGJlIHZpc2libGUgb24gaW5wdXQgZmllbGQgd2hlbiAncmlnaHQg
YXJyb3cnIGtleSBpcyBwcmVzc2VkLgorICAgICAgICBOb3RoaW5nIGhhcyB0byBiZSBzaG93biBp
biB0aGlzIGNpcmN1bXN0YW5jZS4KKyAgICAgICAgVGhlcmVmb3JlLCB0aGlzIHBhdGNoIGZpeGVk
IGluY29ycmVjdGx5IHByb3ZpZGVkIHZhbHVlIGJ5IGV2ZW50U2VuZGVyIGluIERSVC4KKworICAg
ICAgICAqIHBsYXRmb3JtL2VmbC9Ta2lwcGVkOgorCiAyMDEyLTA1LTA4ICBPamFuIFZhZmFpICA8
b2phbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgU3VwcHJlc3MgZmFpbGluZyB0ZXN0IHdoaWxl
IHRoZSBmaXggaXMgYmVpbmcgd29ya2VkIG91dC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL2VmbC9Ta2lwcGVkIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsL1NraXBwZWQKaW5k
ZXggMGY1ODk3Y2M1NTgyYjlkZjM1YTFmOTg2MDFhOTAzNzBlM2VkYzg3Yi4uYTczNTIwZjlkOThl
YTg1MTg4YzNmNWRlNzM2NTk4OGFkN2U3YjZhZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vZWZsL1NraXBwZWQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsL1NraXBwZWQK
QEAgLTIwOSwxMSArMjA5LDYgQEAgZmFzdC9sb2FkZXIvZm9ybS1zdWJtaXNzaW9uLWFmdGVyLWJl
Zm9yZXVubG9hZC1jYW5jZWwuaHRtbAogIyBFRkwncyBEUlQgbmVlZHMgYSBQbGFpblRleHRDb250
cm9sbGVyIGltcGxlbWVudGF0aW9uCiBlZGl0aW5nL3RleHQtaXRlcmF0b3IvYmFzaWMtaXRlcmF0
aW9uLmh0bWwKIAotIyBFRkwncyBEUlQga2V5IGRvd24gYnVnCi0jIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NDcxMAotZWRpdGluZy9pbnB1dC9wYXNzd29yZC1lY2hv
LXBhc3Nub2RlLmh0bWwKLWVkaXRpbmcvaW5wdXQvcGFzc3dvcmQtZWNoby1wYXNzbm9kZTIuaHRt
bAotCiAjIEVGTCdzIGVkaXRvciBkb2Vzbid0IGNhbmNlbCBjb21wb3NpdGlvbiBhcyBjaGFuZ2Ug
b2YgdmFsdWUKICMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1MTIy
CiBlZGl0aW5nL2lucHV0L3NldHRpbmctaW5wdXQtdmFsdWUtY2FuY2VsLWltZS1jb21wb3NpdGlv
bi5odG1sCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>140851</attachid>
            <date>2012-05-08 19:16:32 -0700</date>
            <delta_ts>2012-05-14 02:04:34 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-84710-20120509111633.patch</filename>
            <type>text/plain</type>
            <size>7417</size>
            <attacher name="Kangil Han">kangil.han</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE2NDc5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTc2YjA3YzE4Y2JlMDM4
YzIzMDFkOGMxYzhiNzc0ZWExYjQyODc3ZS4uNzhmZDMwYTY5MjYxZDIxMDhhZTY5ODY3OTQzZjZm
ZTk1NTEyYWNhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEyLTA1LTA4ICBLYW5n
aWwgSGFuICA8a2FuZ2lsLmhhbkBzYW1zdW5nLmNvbT4KKworICAgICAgICBbRUZMXVtEUlRdIEV2
ZW50U2VuZGVyIGRvZXNuJ3QgcHJvdmlkZSBjb3JyZWN0IGtleSBzdHJpbmcKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg0NzEwCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ3VycmVudCBldmVudFNlbmRlciBz
aG93cyBhbGwgc3RyaW5nIHZhbHVlcyBpbmNsdWRpbmcgb25lcyBzaG91bGQgb25seSBiZSB1c2Vk
IGluIHNvdXJjZSBjb2RlLgorICAgICAgICBGb3IgZXhhbXBsZSwgJ1JpZ2h0JyB3aWxsIGJlIHZp
c2libGUgb24gaW5wdXQgZmllbGQgd2hlbiAncmlnaHQgYXJyb3cnIGtleSBpcyBwcmVzc2VkLgor
ICAgICAgICBOb3RoaW5nIGhhcyB0byBiZSBzaG93biBpbiB0aGlzIGNpcmN1bXN0YW5jZS4KKyAg
ICAgICAgVGhlcmVmb3JlLCB0aGlzIHBhdGNoIGZpeGVkIGluY29ycmVjdGx5IHByb3ZpZGVkIHZh
bHVlIGJ5IGV2ZW50U2VuZGVyIGluIERSVC4KKworICAgICAgICAqIHBsYXRmb3JtL2VmbC9FZmxL
ZXlib2FyZFV0aWxpdGllcy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpzaW5nbGVDaGFyYWN0ZXJT
dHJpbmcpOgorCiAyMDEyLTA1LTA4ICBBYmhpc2hlayBBcnlhICA8aW5mZXJub0BjaHJvbWl1bS5v
cmc+CiAKICAgICAgICAgQ3Jhc2ggZHVlIHRvIG93bmluZyByZW5kZXJlciBub3QgcmVtb3ZlZCBm
cm9tIGN1c3RvbSBzY3JvbGxiYXIuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9lZmwvRWZsS2V5Ym9hcmRVdGlsaXRpZXMuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
ZWZsL0VmbEtleWJvYXJkVXRpbGl0aWVzLmNwcAppbmRleCA5ZThlYjEwMmEyMTE5ZTEzMzZlYjQ5
NmNkYmI4NTFlYTQyNzQ2MDRiLi4xM2MzNzU3YzdmNmQ5NjJmZjM0MTYzZmI3NDA2M2Q5M2E0NTlh
MWM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9lZmwvRWZsS2V5Ym9hcmRV
dGlsaXRpZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2VmbC9FZmxLZXlib2Fy
ZFV0aWxpdGllcy5jcHAKQEAgLTIwOSw2ICsyMDksOCBAQCBTdHJpbmcgc2luZ2xlQ2hhcmFjdGVy
U3RyaW5nKGNvbnN0IFN0cmluZyYga2V5TmFtZSkKICAgICAgICAgcmV0dXJuIFN0cmluZygiXHg4
Iik7CiAgICAgaWYgKGtleU5hbWUgPT0gIlRhYiIpCiAgICAgICAgIHJldHVybiBTdHJpbmcoIlx0
Iik7CisgICAgaWYgKGtleU5hbWUgPT0gInNwYWNlIikKKyAgICAgICAgcmV0dXJuIFN0cmluZygi
ICIpOwogICAgIHJldHVybiBrZXlOYW1lOwogfQogCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VM
b2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYWU1ZmJmOTEyNDYyODllOWVkNmVmZGUxNTQ2YmRl
MTE4M2QzZjU5ZS4uNzZkMWU0NmY3NGQ4MzA3ZTMwMjlmMjcyMzQ0MDQ5NmU0NjZmMmI5NSAxMDA2
NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSw1ICsx
LDI1IEBACiAyMDEyLTA1LTA4ICBLYW5naWwgSGFuICA8a2FuZ2lsLmhhbkBzYW1zdW5nLmNvbT4K
IAorICAgICAgICBbRUZMXVtEUlRdIEV2ZW50U2VuZGVyIGRvZXNuJ3QgcHJvdmlkZSBjb3JyZWN0
IGtleSBzdHJpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTg0NzEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgQ3VycmVudCBldmVudFNlbmRlciBzaG93cyBhbGwgc3RyaW5nIHZhbHVlcyBpbmNsdWRpbmcg
b25lcyBzaG91bGQgb25seSBiZSB1c2VkIGluIHNvdXJjZSBjb2RlLgorICAgICAgICBGb3IgZXhh
bXBsZSwgJ1JpZ2h0JyB3aWxsIGJlIHZpc2libGUgb24gaW5wdXQgZmllbGQgd2hlbiAncmlnaHQg
YXJyb3cnIGtleSBpcyBwcmVzc2VkLgorICAgICAgICBOb3RoaW5nIGhhcyB0byBiZSBzaG93biBp
biB0aGlzIGNpcmN1bXN0YW5jZS4KKyAgICAgICAgVGhlcmVmb3JlLCB0aGlzIHBhdGNoIGZpeGVk
IGluY29ycmVjdGx5IHByb3ZpZGVkIHZhbHVlIGJ5IGV2ZW50U2VuZGVyIGluIERSVC4KKworICAg
ICAgICAqIER1bXBSZW5kZXJUcmVlL2VmbC9FdmVudFNlbmRlci5jcHA6CisgICAgICAgIChLZXlF
dmVudEluZm86OktleUV2ZW50SW5mbyk6CisgICAgICAgIChLZXlFdmVudEluZm8pOgorICAgICAg
ICAoa2V5UGFkTmFtZUZyb21KU1ZhbHVlKToKKyAgICAgICAgKGtleU5hbWVGcm9tSlNWYWx1ZSk6
CisgICAgICAgIChjcmVhdGVLZXlFdmVudEluZm8pOgorICAgICAgICAoc2VuZEtleURvd24pOgor
CisyMDEyLTA1LTA4ICBLYW5naWwgSGFuICA8a2FuZ2lsLmhhbkBzYW1zdW5nLmNvbT4KKwogICAg
ICAgICBbRUZMXVtEUlRdIEltcGxlbWVudCBUZXh0SW5wdXRDb250cm9sbGVyLgogICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Nzg1NTkKIApkaWZmIC0tZ2l0
IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0V2ZW50U2VuZGVyLmNwcCBiL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL2VmbC9FdmVudFNlbmRlci5jcHAKaW5kZXggMWI5YTQ1MjZkY2EwN2IxYjk2NjFk
MmFkODg4NzMwY2I4MDg2ZjJhOC4uMTJlOGQwNjQ2MDhhZWYwYWE4MDExZWY1OGJiZDdmMDAzYTEx
NjEwMiAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0V2ZW50U2VuZGVyLmNw
cAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvRXZlbnRTZW5kZXIuY3BwCkBAIC0xMDks
MTQgKzEwOSwxNiBAQCBlbnVtIEV2ZW50UXVldWVTdHJhdGVneSB7CiB9OwogCiBzdHJ1Y3QgS2V5
RXZlbnRJbmZvIHsKLSAgICBLZXlFdmVudEluZm8oY29uc3QgQ1N0cmluZyYga2V5TmFtZSwgRXZh
c0tleU1vZGlmaWVyIG1vZGlmaWVycykKKyAgICBLZXlFdmVudEluZm8oY29uc3QgQ1N0cmluZyYg
a2V5TmFtZSwgRXZhc0tleU1vZGlmaWVyIG1vZGlmaWVycywgYm9vbCBoYXNWaXNpYmxlU3RyaW5n
KQogICAgICAgICA6IGtleU5hbWUoa2V5TmFtZSkKICAgICAgICAgLCBtb2RpZmllcnMobW9kaWZp
ZXJzKQorICAgICAgICAsIGhhc1Zpc2libGVTdHJpbmcoaGFzVmlzaWJsZVN0cmluZykKICAgICB7
CiAgICAgfQogCiAgICAgY29uc3QgQ1N0cmluZyBrZXlOYW1lOwogICAgIEV2YXNLZXlNb2RpZmll
ciBtb2RpZmllcnM7CisgICAgYm9vbCBoYXNWaXNpYmxlU3RyaW5nOwogfTsKIAogc3RydWN0IE1v
dXNlRXZlbnRJbmZvIHsKQEAgLTM4Miw3ICszODQsNyBAQCBzdGF0aWMgY29uc3QgQ1N0cmluZyBr
ZXlQYWROYW1lRnJvbUpTVmFsdWUoSlNTdHJpbmdSZWYgY2hhcmFjdGVyKQogICAgIGlmIChlcXVh
bHMoY2hhcmFjdGVyLCAiZGVsZXRlIikpCiAgICAgICAgIHJldHVybiAiS1BfRGVsZXRlIjsKIAot
ICAgIHJldHVybiBjaGFyYWN0ZXItPnVzdHJpbmcoKS51dGY4KCk7CisgICAgcmV0dXJuIENTdHJp
bmcoKTsKIH0KIAogc3RhdGljIGNvbnN0IENTdHJpbmcga2V5TmFtZUZyb21KU1ZhbHVlKEpTU3Ry
aW5nUmVmIGNoYXJhY3RlcikKQEAgLTQ0Niw3ICs0NDgsNyBAQCBzdGF0aWMgY29uc3QgQ1N0cmlu
ZyBrZXlOYW1lRnJvbUpTVmFsdWUoSlNTdHJpbmdSZWYgY2hhcmFjdGVyKQogICAgIGlmIChjaGFy
Q29kZSA9PSAnICcpCiAgICAgICAgIHJldHVybiAic3BhY2UiOwogCi0gICAgcmV0dXJuIGNoYXJh
Y3Rlci0+dXN0cmluZygpLnV0ZjgoKTsKKyAgICByZXR1cm4gQ1N0cmluZygpOwogfQogCiBzdGF0
aWMgS2V5RXZlbnRJbmZvKiBjcmVhdGVLZXlFdmVudEluZm8oSlNDb250ZXh0UmVmIGNvbnRleHQs
IHNpemVfdCBhcmd1bWVudENvdW50LCBjb25zdCBKU1ZhbHVlUmVmIGFyZ3VtZW50c1tdLCBKU1Zh
bHVlUmVmKiBleGNlcHRpb24pCkBAIC00NzEsNyArNDczLDEyIEBAIHN0YXRpYyBLZXlFdmVudElu
Zm8qIGNyZWF0ZUtleUV2ZW50SW5mbyhKU0NvbnRleHRSZWYgY29udGV4dCwgc2l6ZV90IGFyZ3Vt
ZW50Q291CiAgICAgICAgIG1vZGlmaWVycyA9IG1vZGlmaWVyc0Zyb21KU1ZhbHVlKGNvbnRleHQs
IGFyZ3VtZW50c1sxXSk7CiAKICAgICBjb25zdCBDU3RyaW5nIGtleU5hbWUgPSAobG9jYXRpb24g
PT0gRG9tS2V5TG9jYXRpb25OdW1wYWQpID8ga2V5UGFkTmFtZUZyb21KU1ZhbHVlKGNoYXJhY3Rl
ci5nZXQoKSkgOiBrZXlOYW1lRnJvbUpTVmFsdWUoY2hhcmFjdGVyLmdldCgpKTsKLSAgICByZXR1
cm4gbmV3IEtleUV2ZW50SW5mbyhrZXlOYW1lLCBtb2RpZmllcnMpOworICAgIGlmIChrZXlOYW1l
LmlzTnVsbCgpKQorICAgICAgICByZXR1cm4gbmV3IEtleUV2ZW50SW5mbyhjaGFyYWN0ZXIuZ2V0
KCktPnVzdHJpbmcoKS51dGY4KCksIG1vZGlmaWVycywgdHJ1ZSk7CisgICAgaWYgKGtleU5hbWUg
PT0gIlJldHVybiIgfHwga2V5TmFtZSA9PSAiVGFiIiB8fCBrZXlOYW1lID09ICJCYWNrU3BhY2Ui
IHx8IGtleU5hbWUgPT0gInNwYWNlIikKKyAgICAgICAgcmV0dXJuIG5ldyBLZXlFdmVudEluZm8o
a2V5TmFtZSwgbW9kaWZpZXJzLCB0cnVlKTsKKworICAgIHJldHVybiBuZXcgS2V5RXZlbnRJbmZv
KGtleU5hbWUsIG1vZGlmaWVycywgZmFsc2UpOwogfQogCiBzdGF0aWMgdm9pZCBzZW5kS2V5RG93
bihFdmFzKiBldmFzLCBLZXlFdmVudEluZm8qIGtleUV2ZW50SW5mbykKQEAgLTQ4Niw4ICs0OTMs
MTMgQEAgc3RhdGljIHZvaWQgc2VuZEtleURvd24oRXZhcyogZXZhcywgS2V5RXZlbnRJbmZvKiBr
ZXlFdmVudEluZm8pCiAKICAgICBBU1NFUlQoZXZhcyk7CiAgICAgc2V0RXZhc01vZGlmaWVycyhl
dmFzLCBtb2RpZmllcnMpOwotICAgIGV2YXNfZXZlbnRfZmVlZF9rZXlfZG93bihldmFzLCBrZXlO
YW1lLCBrZXlOYW1lLCBrZXlOYW1lLCAwLCAwLCAwKTsKLSAgICBldmFzX2V2ZW50X2ZlZWRfa2V5
X3VwKGV2YXMsIGtleU5hbWUsIGtleU5hbWUsIGtleU5hbWUsIDAsIDEsIDApOworICAgIGlmIChr
ZXlFdmVudEluZm8tPmhhc1Zpc2libGVTdHJpbmcpIHsKKyAgICAgICAgZXZhc19ldmVudF9mZWVk
X2tleV9kb3duKGV2YXMsIGtleU5hbWUsIGtleU5hbWUsIGtleU5hbWUsIDAsIDAsIDApOworICAg
ICAgICBldmFzX2V2ZW50X2ZlZWRfa2V5X3VwKGV2YXMsIGtleU5hbWUsIGtleU5hbWUsIGtleU5h
bWUsIDAsIDEsIDApOworICAgIH0gZWxzZSB7CisgICAgICAgIGV2YXNfZXZlbnRfZmVlZF9rZXlf
ZG93bihldmFzLCBrZXlOYW1lLCBrZXlOYW1lLCAwLCAwLCAwLCAwKTsKKyAgICAgICAgZXZhc19l
dmVudF9mZWVkX2tleV91cChldmFzLCBrZXlOYW1lLCBrZXlOYW1lLCAwLCAwLCAxLCAwKTsKKyAg
ICB9CiAgICAgc2V0RXZhc01vZGlmaWVycyhldmFzLCBFdmFzS2V5TW9kaWZpZXJOb25lKTsKIAog
ICAgIER1bXBSZW5kZXJUcmVlU3VwcG9ydEVmbDo6ZGVsaXZlckFsbE11dGF0aW9uc0lmTmVjZXNz
YXJ5KCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKaW5kZXggMWJmZGRmY2NiYzRjNWU0MWE4NjY1ZjVjNDk1MzMyYWNhNTQxOTVhZS4u
NDUwZWQyMDRmM2NhMWE5MjNjMmZkN2FkNzljYTQzMzVmNjFhYWIxOSAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDE3IEBACisyMDEyLTA1LTA4ICBLYW5naWwgSGFuICA8a2FuZ2lsLmhhbkBzYW1zdW5nLmNvbT4K
KworICAgICAgICBbRUZMXVtEUlRdIEV2ZW50U2VuZGVyIGRvZXNuJ3QgcHJvdmlkZSBjb3JyZWN0
IGtleSBzdHJpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTg0NzEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgQ3VycmVudCBldmVudFNlbmRlciBzaG93cyBhbGwgc3RyaW5nIHZhbHVlcyBpbmNsdWRpbmcg
b25lcyBzaG91bGQgb25seSBiZSB1c2VkIGluIHNvdXJjZSBjb2RlLgorICAgICAgICBGb3IgZXhh
bXBsZSwgJ1JpZ2h0JyB3aWxsIGJlIHZpc2libGUgb24gaW5wdXQgZmllbGQgd2hlbiAncmlnaHQg
YXJyb3cnIGtleSBpcyBwcmVzc2VkLgorICAgICAgICBOb3RoaW5nIGhhcyB0byBiZSBzaG93biBp
biB0aGlzIGNpcmN1bXN0YW5jZS4KKyAgICAgICAgVGhlcmVmb3JlLCB0aGlzIHBhdGNoIGZpeGVk
IGluY29ycmVjdGx5IHByb3ZpZGVkIHZhbHVlIGJ5IGV2ZW50U2VuZGVyIGluIERSVC4KKworICAg
ICAgICAqIHBsYXRmb3JtL2VmbC9Ta2lwcGVkOgorCiAyMDEyLTA1LTA4ICBPamFuIFZhZmFpICA8
b2phbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgU3VwcHJlc3MgZmFpbGluZyB0ZXN0IHdoaWxl
IHRoZSBmaXggaXMgYmVpbmcgd29ya2VkIG91dC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL2VmbC9Ta2lwcGVkIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsL1NraXBwZWQKaW5k
ZXggMGY1ODk3Y2M1NTgyYjlkZjM1YTFmOTg2MDFhOTAzNzBlM2VkYzg3Yi4uYTczNTIwZjlkOThl
YTg1MTg4YzNmNWRlNzM2NTk4OGFkN2U3YjZhZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vZWZsL1NraXBwZWQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsL1NraXBwZWQK
QEAgLTIwOSwxMSArMjA5LDYgQEAgZmFzdC9sb2FkZXIvZm9ybS1zdWJtaXNzaW9uLWFmdGVyLWJl
Zm9yZXVubG9hZC1jYW5jZWwuaHRtbAogIyBFRkwncyBEUlQgbmVlZHMgYSBQbGFpblRleHRDb250
cm9sbGVyIGltcGxlbWVudGF0aW9uCiBlZGl0aW5nL3RleHQtaXRlcmF0b3IvYmFzaWMtaXRlcmF0
aW9uLmh0bWwKIAotIyBFRkwncyBEUlQga2V5IGRvd24gYnVnCi0jIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NDcxMAotZWRpdGluZy9pbnB1dC9wYXNzd29yZC1lY2hv
LXBhc3Nub2RlLmh0bWwKLWVkaXRpbmcvaW5wdXQvcGFzc3dvcmQtZWNoby1wYXNzbm9kZTIuaHRt
bAotCiAjIEVGTCdzIGVkaXRvciBkb2Vzbid0IGNhbmNlbCBjb21wb3NpdGlvbiBhcyBjaGFuZ2Ug
b2YgdmFsdWUKICMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg1MTIy
CiBlZGl0aW5nL2lucHV0L3NldHRpbmctaW5wdXQtdmFsdWUtY2FuY2VsLWltZS1jb21wb3NpdGlv
bi5odG1sCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>141667</attachid>
            <date>2012-05-14 02:04:45 -0700</date>
            <delta_ts>2012-05-15 22:05:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-84710-20120514180444.patch</filename>
            <type>text/plain</type>
            <size>10296</size>
            <attacher name="Kangil Han">kangil.han</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE2ODY0CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYTcxNDc1ZGIwY2E2NTNlZDBhZTdkMjQ3Yzc3NzFjYzM3
ZDFlMWM3NC4uNDVhYTkyMjk5ZTVhMmYyOTRkMDc5NGUwYWExYjY0NTE1MWM3MzlmZiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIz
IEBACisyMDEyLTA1LTE0ICBLYW5naWwgSGFuICA8a2FuZ2lsLmhhbkBzYW1zdW5nLmNvbT4KKwor
ICAgICAgICBbRUZMXVtEUlRdIEZpeCBldmVudFNlbmRlciBrZXkgcHJvdmlkaW5nCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NDcxMAorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEN1cnJlbnRseSBldmVudFNl
bmRlciBkb2Vzbid0IHByb3ZpZGUga2V5IGV2ZW50IGNvcnJlY3RseS4KKyAgICAgICAgRm9yIGV4
YW1wbGUsICdSaWdodCcgd2lsbCBiZSB2aXNpYmxlIHdoZW4gJ3JpZ2h0IGFycm93JyBrZXkgZXZl
bnQgaXMgZmlyZWQuCisgICAgICAgIEdpdmVuIGNpcmN1bXN0YW5jZSwgbm90aGluZyBoYXMgdG8g
YmUgc2hvd24uCisgICAgICAgIFRoZXJlZm9yZSwgdGhpcyBwYXRjaCBmaXhlZCBpbmNvcnJlY3Rs
eSBwcm92aWRlZCBrZXkgZXZlbnQuCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9lZmwvRXZl
bnRTZW5kZXIuY3BwOgorICAgICAgICAoS2V5RXZlbnRJbmZvOjpLZXlFdmVudEluZm8pOgorICAg
ICAgICAoS2V5RXZlbnRJbmZvKToKKyAgICAgICAgKGtleVBhZE5hbWVGcm9tSlNWYWx1ZSk6Cisg
ICAgICAgIChrZXlOYW1lRnJvbUpTVmFsdWUpOgorICAgICAgICAoY3JlYXRlS2V5RXZlbnRJbmZv
KToKKyAgICAgICAgKHNlbmRLZXlEb3duKToKKwogMjAxMi0wNS0xMiAgVGltIEhvcnRvbiAgPHRp
bW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KIAogICAgICAgICBydW4tc2FmYXJpIGFuZCBjby4gc2hv
dWxkIHN1cHBvcnQgLS1ndWFyZC1tYWxsb2MgY29tbWFuZCBsaW5lIGFyZ3VtZW50CmRpZmYgLS1n
aXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvRXZlbnRTZW5kZXIuY3BwIGIvVG9vbHMvRHVt
cFJlbmRlclRyZWUvZWZsL0V2ZW50U2VuZGVyLmNwcAppbmRleCBlZDYwNmZmNzU5NmQyMGM4MzIz
YjM3MWVkZDVjMDYwNWY5MjAwZTAzLi4xNmQ5MTE4Yzk4MGMxYTBkZTU5ZDYwZjM5M2Y4NDU0ZTc5
NTJkZjNlIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvRXZlbnRTZW5kZXIu
Y3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2VmbC9FdmVudFNlbmRlci5jcHAKQEAgLTEw
OSwxMyArMTA5LDE1IEBAIGVudW0gRXZlbnRRdWV1ZVN0cmF0ZWd5IHsKIH07CiAKIHN0cnVjdCBL
ZXlFdmVudEluZm8gewotICAgIEtleUV2ZW50SW5mbyhjb25zdCBDU3RyaW5nJiBrZXlOYW1lLCBF
dmFzS2V5TW9kaWZpZXIgbW9kaWZpZXJzKQorICAgIEtleUV2ZW50SW5mbyhjb25zdCBDU3RyaW5n
JiBrZXlOYW1lLCBjb25zdCBDU3RyaW5nJiBrZXlTdHJpbmcsIEV2YXNLZXlNb2RpZmllciBtb2Rp
ZmllcnMpCiAgICAgICAgIDoga2V5TmFtZShrZXlOYW1lKQorICAgICAgICAsIGtleVN0cmluZyhr
ZXlTdHJpbmcpCiAgICAgICAgICwgbW9kaWZpZXJzKG1vZGlmaWVycykKICAgICB7CiAgICAgfQog
CiAgICAgY29uc3QgQ1N0cmluZyBrZXlOYW1lOworICAgIGNvbnN0IENTdHJpbmcga2V5U3RyaW5n
OwogICAgIEV2YXNLZXlNb2RpZmllciBtb2RpZmllcnM7CiB9OwogCkBAIC0zNjAsOTQgKzM2Miw5
NCBAQCBzdGF0aWMgSlNWYWx1ZVJlZiBjb250aW51b3VzTW91c2VTY3JvbGxCeUNhbGxiYWNrKEpT
Q29udGV4dFJlZiBjb250ZXh0LCBKU09iamVjdAogICAgIHJldHVybiBKU1ZhbHVlTWFrZVVuZGVm
aW5lZChjb250ZXh0KTsKIH0KIAotc3RhdGljIGNvbnN0IENTdHJpbmcga2V5UGFkTmFtZUZyb21K
U1ZhbHVlKEpTU3RyaW5nUmVmIGNoYXJhY3RlcikKK3N0YXRpYyBLZXlFdmVudEluZm8qIGtleVBh
ZE5hbWVGcm9tSlNWYWx1ZShKU1N0cmluZ1JlZiBjaGFyYWN0ZXIsIEV2YXNLZXlNb2RpZmllciBt
b2RpZmllcnMpCiB7CiAgICAgaWYgKGVxdWFscyhjaGFyYWN0ZXIsICJsZWZ0QXJyb3ciKSkKLSAg
ICAgICAgcmV0dXJuICJLUF9MZWZ0IjsKKyAgICAgICAgcmV0dXJuIG5ldyBLZXlFdmVudEluZm8o
IktQX0xlZnQiLCAiIiwgbW9kaWZpZXJzKTsKICAgICBpZiAoZXF1YWxzKGNoYXJhY3RlciwgInJp
Z2h0QXJyb3ciKSkKLSAgICAgICAgcmV0dXJuICJLUF9SaWdodCI7CisgICAgICAgIHJldHVybiBu
ZXcgS2V5RXZlbnRJbmZvKCJLUF9SaWdodCIsICIiLCBtb2RpZmllcnMpOwogICAgIGlmIChlcXVh
bHMoY2hhcmFjdGVyLCAidXBBcnJvdyIpKQotICAgICAgICByZXR1cm4gIktQX1VwIjsKKyAgICAg
ICAgcmV0dXJuIG5ldyBLZXlFdmVudEluZm8oIktQX1VwIiwgIiIsIG1vZGlmaWVycyk7CiAgICAg
aWYgKGVxdWFscyhjaGFyYWN0ZXIsICJkb3duQXJyb3ciKSkKLSAgICAgICAgcmV0dXJuICJLUF9E
b3duIjsKKyAgICAgICAgcmV0dXJuIG5ldyBLZXlFdmVudEluZm8oIktQX0Rvd24iLCAiIiwgbW9k
aWZpZXJzKTsKICAgICBpZiAoZXF1YWxzKGNoYXJhY3RlciwgInBhZ2VVcCIpKQotICAgICAgICBy
ZXR1cm4gIktQX1ByaW9yIjsKKyAgICAgICAgcmV0dXJuIG5ldyBLZXlFdmVudEluZm8oIktQX1By
aW9yIiwgIiIsIG1vZGlmaWVycyk7CiAgICAgaWYgKGVxdWFscyhjaGFyYWN0ZXIsICJwYWdlRG93
biIpKQotICAgICAgICByZXR1cm4gIktQX05leHQiOworICAgICAgICByZXR1cm4gbmV3IEtleUV2
ZW50SW5mbygiS1BfTmV4dCIsICIiLCBtb2RpZmllcnMpOwogICAgIGlmIChlcXVhbHMoY2hhcmFj
dGVyLCAiaG9tZSIpKQotICAgICAgICByZXR1cm4gIktQX0hvbWUiOworICAgICAgICByZXR1cm4g
bmV3IEtleUV2ZW50SW5mbygiS1BfSG9tZSIsICIiLCBtb2RpZmllcnMpOwogICAgIGlmIChlcXVh
bHMoY2hhcmFjdGVyLCAiZW5kIikpCi0gICAgICAgIHJldHVybiAiS1BfRW5kIjsKKyAgICAgICAg
cmV0dXJuIG5ldyBLZXlFdmVudEluZm8oIktQX0VuZCIsICIiLCBtb2RpZmllcnMpOwogICAgIGlm
IChlcXVhbHMoY2hhcmFjdGVyLCAiaW5zZXJ0IikpCi0gICAgICAgIHJldHVybiAiS1BfSW5zZXJ0
IjsKKyAgICAgICAgcmV0dXJuIG5ldyBLZXlFdmVudEluZm8oIktQX0luc2VydCIsICIiLCBtb2Rp
ZmllcnMpOwogICAgIGlmIChlcXVhbHMoY2hhcmFjdGVyLCAiZGVsZXRlIikpCi0gICAgICAgIHJl
dHVybiAiS1BfRGVsZXRlIjsKKyAgICAgICAgcmV0dXJuIG5ldyBLZXlFdmVudEluZm8oIktQX0Rl
bGV0ZSIsICIiLCBtb2RpZmllcnMpOwogCi0gICAgcmV0dXJuIGNoYXJhY3Rlci0+dXN0cmluZygp
LnV0ZjgoKTsKKyAgICByZXR1cm4gbmV3IEtleUV2ZW50SW5mbyhjaGFyYWN0ZXItPnVzdHJpbmco
KS51dGY4KCksIGNoYXJhY3Rlci0+dXN0cmluZygpLnV0ZjgoKSwgbW9kaWZpZXJzKTsKIH0KIAot
c3RhdGljIGNvbnN0IENTdHJpbmcga2V5TmFtZUZyb21KU1ZhbHVlKEpTU3RyaW5nUmVmIGNoYXJh
Y3RlcikKK3N0YXRpYyBLZXlFdmVudEluZm8qIGtleU5hbWVGcm9tSlNWYWx1ZShKU1N0cmluZ1Jl
ZiBjaGFyYWN0ZXIsIEV2YXNLZXlNb2RpZmllciBtb2RpZmllcnMpCiB7CiAgICAgaWYgKGVxdWFs
cyhjaGFyYWN0ZXIsICJsZWZ0QXJyb3ciKSkKLSAgICAgICAgcmV0dXJuICJMZWZ0IjsKKyAgICAg
ICAgcmV0dXJuIG5ldyBLZXlFdmVudEluZm8oIkxlZnQiLCAiIiwgbW9kaWZpZXJzKTsKICAgICBp
ZiAoZXF1YWxzKGNoYXJhY3RlciwgInJpZ2h0QXJyb3ciKSkKLSAgICAgICAgcmV0dXJuICJSaWdo
dCI7CisgICAgICAgIHJldHVybiBuZXcgS2V5RXZlbnRJbmZvKCJSaWdodCIsICIiLCBtb2RpZmll
cnMpOwogICAgIGlmIChlcXVhbHMoY2hhcmFjdGVyLCAidXBBcnJvdyIpKQotICAgICAgICByZXR1
cm4gIlVwIjsKKyAgICAgICAgcmV0dXJuIG5ldyBLZXlFdmVudEluZm8oIlVwIiwgIiIsIG1vZGlm
aWVycyk7CiAgICAgaWYgKGVxdWFscyhjaGFyYWN0ZXIsICJkb3duQXJyb3ciKSkKLSAgICAgICAg
cmV0dXJuICJEb3duIjsKKyAgICAgICAgcmV0dXJuIG5ldyBLZXlFdmVudEluZm8oIkRvd24iLCAi
IiwgbW9kaWZpZXJzKTsKICAgICBpZiAoZXF1YWxzKGNoYXJhY3RlciwgInBhZ2VVcCIpKQotICAg
ICAgICByZXR1cm4gIlByaW9yIjsKKyAgICAgICAgcmV0dXJuIG5ldyBLZXlFdmVudEluZm8oIlBy
aW9yIiwgIiIsIG1vZGlmaWVycyk7CiAgICAgaWYgKGVxdWFscyhjaGFyYWN0ZXIsICJwYWdlRG93
biIpKQotICAgICAgICByZXR1cm4gIk5leHQiOworICAgICAgICByZXR1cm4gbmV3IEtleUV2ZW50
SW5mbygiTmV4dCIsICIiLCBtb2RpZmllcnMpOwogICAgIGlmIChlcXVhbHMoY2hhcmFjdGVyLCAi
aG9tZSIpKQotICAgICAgICByZXR1cm4gIkhvbWUiOworICAgICAgICByZXR1cm4gbmV3IEtleUV2
ZW50SW5mbygiSG9tZSIsICIiLCBtb2RpZmllcnMpOwogICAgIGlmIChlcXVhbHMoY2hhcmFjdGVy
LCAiZW5kIikpCi0gICAgICAgIHJldHVybiAiRW5kIjsKKyAgICAgICAgcmV0dXJuIG5ldyBLZXlF
dmVudEluZm8oIkVuZCIsICIiLCBtb2RpZmllcnMpOwogICAgIGlmIChlcXVhbHMoY2hhcmFjdGVy
LCAiaW5zZXJ0IikpCi0gICAgICAgIHJldHVybiAiSW5zZXJ0IjsKKyAgICAgICAgcmV0dXJuIG5l
dyBLZXlFdmVudEluZm8oIkluc2VydCIsICIiLCBtb2RpZmllcnMpOwogICAgIGlmIChlcXVhbHMo
Y2hhcmFjdGVyLCAiZGVsZXRlIikpCi0gICAgICAgIHJldHVybiAiRGVsZXRlIjsKKyAgICAgICAg
cmV0dXJuIG5ldyBLZXlFdmVudEluZm8oIkRlbGV0ZSIsICIiLCBtb2RpZmllcnMpOwogICAgIGlm
IChlcXVhbHMoY2hhcmFjdGVyLCAicHJpbnRTY3JlZW4iKSkKLSAgICAgICAgcmV0dXJuICJQcmlu
dCI7CisgICAgICAgIHJldHVybiBuZXcgS2V5RXZlbnRJbmZvKCJQcmludCIsICIiLCBtb2RpZmll
cnMpOwogICAgIGlmIChlcXVhbHMoY2hhcmFjdGVyLCAibWVudSIpKQotICAgICAgICByZXR1cm4g
Ik1lbnUiOworICAgICAgICByZXR1cm4gbmV3IEtleUV2ZW50SW5mbygiTWVudSIsICIiLCBtb2Rp
ZmllcnMpOwogICAgIGlmIChlcXVhbHMoY2hhcmFjdGVyLCAiRjEiKSkKLSAgICAgICAgcmV0dXJu
ICJGMSI7CisgICAgICAgIHJldHVybiBuZXcgS2V5RXZlbnRJbmZvKCJGMSIsICIiLCBtb2RpZmll
cnMpOwogICAgIGlmIChlcXVhbHMoY2hhcmFjdGVyLCAiRjIiKSkKLSAgICAgICAgcmV0dXJuICJG
MiI7CisgICAgICAgIHJldHVybiBuZXcgS2V5RXZlbnRJbmZvKCJGMiIsICIiLCBtb2RpZmllcnMp
OwogICAgIGlmIChlcXVhbHMoY2hhcmFjdGVyLCAiRjMiKSkKLSAgICAgICAgcmV0dXJuICJGMyI7
CisgICAgICAgIHJldHVybiBuZXcgS2V5RXZlbnRJbmZvKCJGMyIsICIiLCBtb2RpZmllcnMpOwog
ICAgIGlmIChlcXVhbHMoY2hhcmFjdGVyLCAiRjQiKSkKLSAgICAgICAgcmV0dXJuICJGNCI7Cisg
ICAgICAgIHJldHVybiBuZXcgS2V5RXZlbnRJbmZvKCJGNCIsICIiLCBtb2RpZmllcnMpOwogICAg
IGlmIChlcXVhbHMoY2hhcmFjdGVyLCAiRjUiKSkKLSAgICAgICAgcmV0dXJuICJGNSI7CisgICAg
ICAgIHJldHVybiBuZXcgS2V5RXZlbnRJbmZvKCJGNSIsICIiLCBtb2RpZmllcnMpOwogICAgIGlm
IChlcXVhbHMoY2hhcmFjdGVyLCAiRjYiKSkKLSAgICAgICAgcmV0dXJuICJGNiI7CisgICAgICAg
IHJldHVybiBuZXcgS2V5RXZlbnRJbmZvKCJGNiIsICIiLCBtb2RpZmllcnMpOwogICAgIGlmIChl
cXVhbHMoY2hhcmFjdGVyLCAiRjciKSkKLSAgICAgICAgcmV0dXJuICJGNyI7CisgICAgICAgIHJl
dHVybiBuZXcgS2V5RXZlbnRJbmZvKCJGNyIsICIiLCBtb2RpZmllcnMpOwogICAgIGlmIChlcXVh
bHMoY2hhcmFjdGVyLCAiRjgiKSkKLSAgICAgICAgcmV0dXJuICJGOCI7CisgICAgICAgIHJldHVy
biBuZXcgS2V5RXZlbnRJbmZvKCJGOCIsICIiLCBtb2RpZmllcnMpOwogICAgIGlmIChlcXVhbHMo
Y2hhcmFjdGVyLCAiRjkiKSkKLSAgICAgICAgcmV0dXJuICJGOSI7CisgICAgICAgIHJldHVybiBu
ZXcgS2V5RXZlbnRJbmZvKCJGOSIsICIiLCBtb2RpZmllcnMpOwogICAgIGlmIChlcXVhbHMoY2hh
cmFjdGVyLCAiRjEwIikpCi0gICAgICAgIHJldHVybiAiRjEwIjsKKyAgICAgICAgcmV0dXJuIG5l
dyBLZXlFdmVudEluZm8oIkYxMCIsICIiLCBtb2RpZmllcnMpOwogICAgIGlmIChlcXVhbHMoY2hh
cmFjdGVyLCAiRjExIikpCi0gICAgICAgIHJldHVybiAiRjExIjsKKyAgICAgICAgcmV0dXJuIG5l
dyBLZXlFdmVudEluZm8oIkYxMSIsICIiLCBtb2RpZmllcnMpOwogICAgIGlmIChlcXVhbHMoY2hh
cmFjdGVyLCAiRjEyIikpCi0gICAgICAgIHJldHVybiAiRjEyIjsKKyAgICAgICAgcmV0dXJuIG5l
dyBLZXlFdmVudEluZm8oIkYxMiIsICIiLCBtb2RpZmllcnMpOwogCiAgICAgaW50IGNoYXJDb2Rl
ID0gSlNTdHJpbmdHZXRDaGFyYWN0ZXJzUHRyKGNoYXJhY3RlcilbMF07CiAgICAgaWYgKGNoYXJD
b2RlID09ICdcbicgfHwgY2hhckNvZGUgPT0gJ1xyJykKLSAgICAgICAgcmV0dXJuICJSZXR1cm4i
OworICAgICAgICByZXR1cm4gbmV3IEtleUV2ZW50SW5mbygiUmV0dXJuIiwgIlJldHVybiIsIG1v
ZGlmaWVycyk7CiAgICAgaWYgKGNoYXJDb2RlID09ICdcdCcpCi0gICAgICAgIHJldHVybiAiVGFi
IjsKKyAgICAgICAgcmV0dXJuIG5ldyBLZXlFdmVudEluZm8oIlRhYiIsICJUYWIiLCBtb2RpZmll
cnMpOwogICAgIGlmIChjaGFyQ29kZSA9PSAnXHg4JykKLSAgICAgICAgcmV0dXJuICJCYWNrU3Bh
Y2UiOworICAgICAgICByZXR1cm4gbmV3IEtleUV2ZW50SW5mbygiQmFja1NwYWNlIiwgIkJhY2tT
cGFjZSIsIG1vZGlmaWVycyk7CiAgICAgaWYgKGNoYXJDb2RlID09ICcgJykKLSAgICAgICAgcmV0
dXJuICJzcGFjZSI7CisgICAgICAgIHJldHVybiBuZXcgS2V5RXZlbnRJbmZvKCJzcGFjZSIsICIg
IiwgbW9kaWZpZXJzKTsKIAotICAgIHJldHVybiBjaGFyYWN0ZXItPnVzdHJpbmcoKS51dGY4KCk7
CisgICAgcmV0dXJuIG5ldyBLZXlFdmVudEluZm8oY2hhcmFjdGVyLT51c3RyaW5nKCkudXRmOCgp
LCBjaGFyYWN0ZXItPnVzdHJpbmcoKS51dGY4KCksIG1vZGlmaWVycyk7CiB9CiAKIHN0YXRpYyBL
ZXlFdmVudEluZm8qIGNyZWF0ZUtleUV2ZW50SW5mbyhKU0NvbnRleHRSZWYgY29udGV4dCwgc2l6
ZV90IGFyZ3VtZW50Q291bnQsIGNvbnN0IEpTVmFsdWVSZWYgYXJndW1lbnRzW10sIEpTVmFsdWVS
ZWYqIGV4Y2VwdGlvbikKQEAgLTQ3MSw4ICs0NzMsNyBAQCBzdGF0aWMgS2V5RXZlbnRJbmZvKiBj
cmVhdGVLZXlFdmVudEluZm8oSlNDb250ZXh0UmVmIGNvbnRleHQsIHNpemVfdCBhcmd1bWVudENv
dQogICAgIGlmIChhcmd1bWVudENvdW50ID49IDIpCiAgICAgICAgIG1vZGlmaWVycyA9IG1vZGlm
aWVyc0Zyb21KU1ZhbHVlKGNvbnRleHQsIGFyZ3VtZW50c1sxXSk7CiAKLSAgICBjb25zdCBDU3Ry
aW5nIGtleU5hbWUgPSAobG9jYXRpb24gPT0gRG9tS2V5TG9jYXRpb25OdW1wYWQpID8ga2V5UGFk
TmFtZUZyb21KU1ZhbHVlKGNoYXJhY3Rlci5nZXQoKSkgOiBrZXlOYW1lRnJvbUpTVmFsdWUoY2hh
cmFjdGVyLmdldCgpKTsKLSAgICByZXR1cm4gbmV3IEtleUV2ZW50SW5mbyhrZXlOYW1lLCBtb2Rp
ZmllcnMpOworICAgIHJldHVybiAobG9jYXRpb24gPT0gRG9tS2V5TG9jYXRpb25OdW1wYWQpID8g
a2V5UGFkTmFtZUZyb21KU1ZhbHVlKGNoYXJhY3Rlci5nZXQoKSwgbW9kaWZpZXJzKSA6IGtleU5h
bWVGcm9tSlNWYWx1ZShjaGFyYWN0ZXIuZ2V0KCksIG1vZGlmaWVycyk7CiB9CiAKIHN0YXRpYyB2
b2lkIHNlbmRLZXlEb3duKEV2YXMqIGV2YXMsIEtleUV2ZW50SW5mbyoga2V5RXZlbnRJbmZvKQpA
QCAtNDgxLDE0ICs0ODIsMTUgQEAgc3RhdGljIHZvaWQgc2VuZEtleURvd24oRXZhcyogZXZhcywg
S2V5RXZlbnRJbmZvKiBrZXlFdmVudEluZm8pCiAgICAgICAgIHJldHVybjsKIAogICAgIGNvbnN0
IGNoYXIqIGtleU5hbWUgPSBrZXlFdmVudEluZm8tPmtleU5hbWUuZGF0YSgpOworICAgIGNvbnN0
IGNoYXIqIGtleVN0cmluZyA9IGtleUV2ZW50SW5mby0+a2V5U3RyaW5nLmRhdGEoKTsKICAgICBF
dmFzS2V5TW9kaWZpZXIgbW9kaWZpZXJzID0ga2V5RXZlbnRJbmZvLT5tb2RpZmllcnM7CiAKICAg
ICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmw6OmxheW91dEZyYW1lKGJyb3dzZXItPm1haW5GcmFt
ZSgpKTsKIAogICAgIEFTU0VSVChldmFzKTsKICAgICBzZXRFdmFzTW9kaWZpZXJzKGV2YXMsIG1v
ZGlmaWVycyk7Ci0gICAgZXZhc19ldmVudF9mZWVkX2tleV9kb3duKGV2YXMsIGtleU5hbWUsIGtl
eU5hbWUsIGtleU5hbWUsIDAsIDAsIDApOwotICAgIGV2YXNfZXZlbnRfZmVlZF9rZXlfdXAoZXZh
cywga2V5TmFtZSwga2V5TmFtZSwga2V5TmFtZSwgMCwgMSwgMCk7CisgICAgZXZhc19ldmVudF9m
ZWVkX2tleV9kb3duKGV2YXMsIGtleU5hbWUsIGtleU5hbWUsIGtleVN0cmluZywgMCwgMCwgMCk7
CisgICAgZXZhc19ldmVudF9mZWVkX2tleV91cChldmFzLCBrZXlOYW1lLCBrZXlOYW1lLCBrZXlT
dHJpbmcsIDAsIDEsIDApOwogICAgIHNldEV2YXNNb2RpZmllcnMoZXZhcywgRXZhc0tleU1vZGlm
aWVyTm9uZSk7CiAKICAgICBEdW1wUmVuZGVyVHJlZVN1cHBvcnRFZmw6OmRlbGl2ZXJBbGxNdXRh
dGlvbnNJZk5lY2Vzc2FyeSgpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGRmOWM1MTEwNTMxZjA2NjM3MGVjNDUzN2FmNGZj
MGQwMDdlOWUyZjAuLmJlNzg4MDNiYmFmNmJkM2VhYTRlM2Q1M2RkYTYyYWFiYjU0ZmNlYjQgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxNyBAQAorMjAxMi0wNS0xNCAgS2FuZ2lsIEhhbiAgPGthbmdpbC5oYW5A
c2Ftc3VuZy5jb20+CisKKyAgICAgICAgW0VGTF1bRFJUXSBGaXggZXZlbnRTZW5kZXIga2V5IHBy
b3ZpZGluZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
ODQ3MTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBD
dXJyZW50bHkgZXZlbnRTZW5kZXIgZG9lc24ndCBwcm92aWRlIGtleSBldmVudCBjb3JyZWN0bHku
CisgICAgICAgIEZvciBleGFtcGxlLCAnUmlnaHQnIHdpbGwgYmUgdmlzaWJsZSB3aGVuICdyaWdo
dCBhcnJvdycga2V5IGV2ZW50IGlzIGZpcmVkLgorICAgICAgICBHaXZlbiBjaXJjdW1zdGFuY2Us
IG5vdGhpbmcgaGFzIHRvIGJlIHNob3duLgorICAgICAgICBUaGVyZWZvcmUsIHRoaXMgcGF0Y2gg
Zml4ZWQgaW5jb3JyZWN0bHkgcHJvdmlkZWQga2V5IGV2ZW50LgorCisgICAgICAgICogcGxhdGZv
cm0vZWZsL1NraXBwZWQ6CisKIDIwMTItMDUtMTIgIEFiaGlzaGVrIEFyeWEgIDxpbmZlcm5vQGNo
cm9taXVtLm9yZz4KIAogICAgICAgICBDcmFzaCBpbiBIVE1MU2VsZWN0RWxlbWVudDo6c2V0T3B0
aW9uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvU2tpcHBlZCBiL0xheW91
dFRlc3RzL3BsYXRmb3JtL2VmbC9Ta2lwcGVkCmluZGV4IDVmMjc5ZGZkMjNkY2U1NDg3ZmNmYjg4
YjE3ZTFkNTA5MDkyN2FiYjkuLjBmMGU1MzU5YmY1YTRhNmFkMzU3YmU4ZDBkMDcwNWM3YmI4NDgw
ZTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9Ta2lwcGVkCisrKyBiL0xh
eW91dFRlc3RzL3BsYXRmb3JtL2VmbC9Ta2lwcGVkCkBAIC0xNzgsMTEgKzE3OCw2IEBAIGZhc3Qv
bG9hZGVyL2Zvcm0tc3VibWlzc2lvbi1hZnRlci1iZWZvcmV1bmxvYWQtY2FuY2VsLmh0bWwKICMg
RUZMJ3MgRFJUIG5lZWRzIGEgUGxhaW5UZXh0Q29udHJvbGxlciBpbXBsZW1lbnRhdGlvbgogZWRp
dGluZy90ZXh0LWl0ZXJhdG9yL2Jhc2ljLWl0ZXJhdGlvbi5odG1sCiAKLSMgRUZMJ3MgRFJUIGtl
eSBkb3duIGJ1ZwotIyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODQ3
MTAKLWVkaXRpbmcvaW5wdXQvcGFzc3dvcmQtZWNoby1wYXNzbm9kZS5odG1sCi1lZGl0aW5nL2lu
cHV0L3Bhc3N3b3JkLWVjaG8tcGFzc25vZGUyLmh0bWwKLQogIyBFRkwncyBMYXlvdXRUZXN0Q29u
dHJvbGxlciBkb2VzIG5vdCBpbXBsZW1lbnQgc2V0TWVkaWFUeXBlCiBmYXN0L21lZGlhL3ByaW50
LXJlc3RvcmVzLXByZXZpb3VzLW1lZGlhdHlwZS5odG1sCiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>