<html>
<body>
<div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
<table bgcolor="#f9f3c9" width="100%" cellpadding="12" style="border: 1px #c9c399 solid; border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
<tr>
<td>
This is an automatically generated e-mail. To reply, visit:
<a href="https://git.reviewboard.kde.org/r/124140/">https://git.reviewboard.kde.org/r/124140/</a>
</td>
</tr>
</table>
<br />
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<p style="margin-top: 0;">On July 1st, 2015, 5:33 a.m. UTC, <b>Albert Vaca Cintora</b> wrote:</p>
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; border-collapse: collapse; margin: 2px padding: 2px;">
<thead>
<tr>
<th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; font-size: 9pt; padding: 4px 8px; text-align: left;">
<a href="https://git.reviewboard.kde.org/r/124140/diff/2-3/?file=381389#file381389line330" style="color: black; font-weight: bold; text-decoration: underline;">src/org/kde/kdeconnect/Device.java</a>
<span style="font-weight: normal;">
(Diff revisions 2 - 3)
</span>
</th>
</tr>
</thead>
<tbody style="background-color: #e4d9cb; padding: 4px 8px; text-align: center;">
<tr>
<td colspan="4"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">private void pairingDone() {</pre></td>
</tr>
</tbody>
<tbody>
<tr>
<th bgcolor="#e9eaa8" style="border-right: 1px solid #C0C0C0;" align="right"><font size="2">323</font></th>
<td bgcolor="#fdfebc" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span class="n">linkProvider</span><span class="o">.</span><span class="na">pairingHandler</span><span class="o">.</span><span class="na">pairingDone</span><span class="o">(</span><span class="k">this</span><span class="o">);</span></pre></td>
<th bgcolor="#e9eaa8" style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font size="2">317</font></th>
<td bgcolor="#fdfebc" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span class="n">editor</span><span class="o">.</span><span class="na">putString</span><span class="o">(</span><span class="s">"deviceName"</span><span class="o">,</span> <span class="n">name</span><span class="o">);</span></pre></td>
</tr>
</tbody>
</table>
<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">How come you had to add this? Weren't we saving the name before?</pre>
</blockquote>
</blockquote>
<pre style="margin-left: 1em; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">I moved that to pairing handler, later it is added back to device.</p></pre>
<br />
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<p style="margin-top: 0;">On July 1st, 2015, 5:33 a.m. UTC, <b>Albert Vaca Cintora</b> wrote:</p>
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; border-collapse: collapse; margin: 2px padding: 2px;">
<thead>
<tr>
<th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; font-size: 9pt; padding: 4px 8px; text-align: left;">
<a href="https://git.reviewboard.kde.org/r/124140/diff/2-3/?file=381391#file381391line29" style="color: black; font-weight: bold; text-decoration: underline;">src/org/kde/kdeconnect/Helpers/SecurityHelpers/SslHelper.java</a>
<span style="font-weight: normal;">
(Diff revisions 2 - 3)
</span>
</th>
</tr>
</thead>
<tbody>
<tr>
<th bgcolor="#e9eaa8" style="border-right: 1px solid #C0C0C0;" align="right"><font size="2">29</font></th>
<td bgcolor="#fdfebc" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "><span class="kn">import</span> <span class="nn">org.<span class="hl">bounc</span>ycastle.asn1.x500.X500NameBuilder</span><span class="o">;</span></pre></td>
<th bgcolor="#e9eaa8" style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font size="2">29</font></th>
<td bgcolor="#fdfebc" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "><span class="kn">import</span> <span class="nn">org.<span class="hl">spong</span>ycastle.asn1.x500.X500NameBuilder</span><span class="o">;</span></pre></td>
</tr>
</tbody>
</table>
<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">What's the difference between bouncycastle and spongycastle?</pre>
</blockquote>
</blockquote>
<pre style="margin-left: 1em; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">"The Android platform unfortunately ships with a cut-down version of Bouncy Castle - as well as being crippled, it also makes installing an updated version of the libraries difficult due to classloader conflicts.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Spongy Castle is the stock Bouncy Castle libraries with a couple of small changes to make it work on Android"</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">This happened on old android devices, where certificate generation failed due class not found error from bouncycastle.</p></pre>
<br />
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<p style="margin-top: 0;">On July 1st, 2015, 5:33 a.m. UTC, <b>Albert Vaca Cintora</b> wrote:</p>
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; border-collapse: collapse; margin: 2px padding: 2px;">
<thead>
<tr>
<th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; font-size: 9pt; padding: 4px 8px; text-align: left;">
<a href="https://git.reviewboard.kde.org/r/124140/diff/2-3/?file=381391#file381391line66" style="color: black; font-weight: bold; text-decoration: underline;">src/org/kde/kdeconnect/Helpers/SecurityHelpers/SslHelper.java</a>
<span style="font-weight: normal;">
(Diff revisions 2 - 3)
</span>
</th>
</tr>
</thead>
<tbody style="background-color: #e4d9cb; padding: 4px 8px; text-align: center;">
<tr>
<td colspan="4"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">public class SslHelper {</pre></td>
</tr>
</tbody>
<tbody>
<tr>
<th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" align="right"><font size="2"></font></th>
<td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>
<th bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font size="2">66</font></th>
<td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span class="kd">public</span> <span class="kd">static</span> <span class="kd">final</span> <span class="n">BouncyCastleProvider</span> <span class="n">BC</span> <span class="o">=</span> <span class="k">new</span> <span class="n">BouncyCastleProvider</span><span class="o">();</span></pre></td>
</tr>
</tbody>
</table>
<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Why this security provider is not conscrypt?</pre>
</blockquote>
</blockquote>
<pre style="margin-left: 1em; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Because conscrypt cannot generate certificates, only bouncy castle can. Bouncycastle cannot handle TLS connections like conscrypt.</p></pre>
<br />
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<p style="margin-top: 0;">On July 1st, 2015, 5:33 a.m. UTC, <b>Albert Vaca Cintora</b> wrote:</p>
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; border-collapse: collapse; margin: 2px padding: 2px;">
<thead>
<tr>
<th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; font-size: 9pt; padding: 4px 8px; text-align: left;">
<a href="https://git.reviewboard.kde.org/r/124140/diff/2-3/?file=381391#file381391line174" style="color: black; font-weight: bold; text-decoration: underline;">src/org/kde/kdeconnect/Helpers/SecurityHelpers/SslHelper.java</a>
<span style="font-weight: normal;">
(Diff revisions 2 - 3)
</span>
</th>
</tr>
</thead>
<tbody style="background-color: #e4d9cb; padding: 4px 8px; text-align: center;">
<tr>
<td colspan="4"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">public void checkClientTrusted(X509Certificate[] certs, String authType) {</pre></td>
</tr>
</tbody>
<tbody>
<tr>
<th bgcolor="#e9eaa8" style="border-right: 1px solid #C0C0C0;" align="right"><font size="2">171</font></th>
<td bgcolor="#fdfebc" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span class="n">SSLContext</span> <span class="n">tlsContext</span> <span class="o">=</span> <span class="n">SSLContext</span><span class="o">.</span><span class="na">getInstance</span><span class="o">(</span><span class="s">"TLS"</span><span class="o">);</span></pre></td>
<th bgcolor="#e9eaa8" style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font size="2">172</font></th>
<td bgcolor="#fdfebc" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "> <span class="n">SSLContext</span> <span class="n">tlsContext</span> <span class="o">=</span> <span class="n">SSLContext</span><span class="o">.</span><span class="na">getInstance</span><span class="o">(</span><span class="s">"TLS<span class="hl">v1.2</span>"</span><span class="o">);</span></pre></td>
</tr>
</tbody>
</table>
<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">TLSv1.2 is only supported on Android API 16+, according to this link: http://developer.android.com/reference/javax/net/ssl/SSLSocket.html</pre>
</blockquote>
</blockquote>
<pre style="margin-left: 1em; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">I am using SSLEngine[1] and it says that supported on API 20+. With new provider this should not be an issue, tested on device with api level 17 and 18.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">[1]http://developer.android.com/reference/javax/net/ssl/SSLEngine.html</p></pre>
<br />
<p>- Vineet</p>
<br />
<p>On June 30th, 2015, 10:12 p.m. UTC, Vineet Garg wrote:</p>
<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="12" style="border: 1px #888a85 solid; border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
<tr>
<td>
<div>Review request for kdeconnect and Albert Vaca Cintora.</div>
<div>By Vineet Garg.</div>
<p style="color: grey;"><i>Updated June 30, 2015, 10:12 p.m.</i></p>
<div style="margin-top: 1.5em;">
<b style="color: #575012; font-size: 10pt;">Repository: </b>
kdeconnect-android
</div>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
<tr>
<td>
<pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><ul style="padding: 0;text-rendering: inherit;margin: 0 0 0 1em;line-height: inherit;white-space: normal;">
<li style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;">Since MINA was tying hands in adding SSL, ported over Netty which has a good, clean and easy interface and a larger user and developer base.</li>
<li style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;">Added support to setup links on SSL</li>
<li style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;">Links automatically removed if wrong certificate is sent</li>
<li style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;">Shows keys based on hash of certificate to check right certificates are received</li>
<li style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;">Added a preference to use SSL, as it is experienced to cause high CPU usage on devices.</li>
<li style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;">Corrected unit tests, LanLinkProvider is removed as it is nearly impossible to write it with current design. Will find a way</li>
</ul></pre>
</td>
</tr>
</table>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
<tr>
<td>
<pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Tesed on some device with where both supports SSL, also with PC where ssl is not supported, working fine. Need a little bit more testing with more devices.</p></pre>
</td>
</tr>
</table>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">
<li>AndroidManifest.xml <span style="color: grey">(0da70ba)</span></li>
<li>build.gradle <span style="color: grey">(6520c1c)</span></li>
<li>libs/conscrypt.jar <span style="color: grey">(PRE-CREATION)</span></li>
<li>libs/conscrypt.readme <span style="color: grey">(PRE-CREATION)</span></li>
<li>libs/conscrypt_jni.jar <span style="color: grey">(PRE-CREATION)</span></li>
<li>proguard-rules.pro <span style="color: grey">(ac9cda5)</span></li>
<li>res/values/strings.xml <span style="color: grey">(c128342)</span></li>
<li>src/org/kde/kdeconnect/Backends/BaseLink.java <span style="color: grey">(579a7af)</span></li>
<li>src/org/kde/kdeconnect/Backends/BaseLinkProvider.java <span style="color: grey">(cfaf621)</span></li>
<li>src/org/kde/kdeconnect/Backends/BasePairingHandler.java <span style="color: grey">(PRE-CREATION)</span></li>
<li>src/org/kde/kdeconnect/Backends/LanBackend/LanLink.java <span style="color: grey">(5994142)</span></li>
<li>src/org/kde/kdeconnect/Backends/LanBackend/LanLinkProvider.java <span style="color: grey">(ae26958)</span></li>
<li>src/org/kde/kdeconnect/Backends/LanBackend/LanPairingHandler.java <span style="color: grey">(PRE-CREATION)</span></li>
<li>src/org/kde/kdeconnect/Backends/LoopbackBackend/LoopbackLink.java <span style="color: grey">(add92f8)</span></li>
<li>src/org/kde/kdeconnect/Backends/LoopbackBackend/LoopbackLinkProvider.java <span style="color: grey">(bd9c41b)</span></li>
<li>src/org/kde/kdeconnect/Backends/LoopbackBackend/LoopbackPairingHandler.java <span style="color: grey">(PRE-CREATION)</span></li>
<li>src/org/kde/kdeconnect/BackgroundService.java <span style="color: grey">(5e3d8c2)</span></li>
<li>src/org/kde/kdeconnect/Device.java <span style="color: grey">(3262aef)</span></li>
<li>src/org/kde/kdeconnect/Helpers/SecurityHelpers/RsaHelper.java <span style="color: grey">(PRE-CREATION)</span></li>
<li>src/org/kde/kdeconnect/Helpers/SecurityHelpers/SslHelper.java <span style="color: grey">(PRE-CREATION)</span></li>
<li>src/org/kde/kdeconnect/NetworkPackage.java <span style="color: grey">(f62b5d0)</span></li>
<li>src/org/kde/kdeconnect/UserInterface/PairActivity.java <span style="color: grey">(7a45751)</span></li>
<li>tests/org/kde/kdeconnect/DeviceTest.java <span style="color: grey">(5d3383d)</span></li>
<li>tests/org/kde/kdeconnect/LanLinkProviderTest.java <span style="color: grey">(fe7863a)</span></li>
<li>tests/org/kde/kdeconnect/LanLinkTest.java <span style="color: grey">(d3d94c9)</span></li>
<li>tests/org/kde/kdeconnect/NetworkPackageTest.java <span style="color: grey">(a21114e)</span></li>
</ul>
<p><a href="https://git.reviewboard.kde.org/r/124140/diff/" style="margin-left: 3em;">View Diff</a></p>
</td>
</tr>
</table>
</div>
</body>
</html>