<p dir="ltr">Hi<br>
As far as I have tested, it is working perfectly fine.<br>
Sure I can add it again<br>
It was general earlier too. I just disabled server in Android 5.0.<br>
I opened a issue on github about this, and it is marked as a defect and milestone for next release. So may be we will get a nice working release i.e. netty 4.0.31. Till then we can use this custom built version.</p>
<p dir="ltr">Thanks</p>
<div class="gmail_quote">On Aug 21, 2015 10:32 PM, "Albert Vaca" <<a href="mailto:albertvaka@gmail.com">albertvaka@gmail.com</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Hi Vineet, <br><br>So with this version of Netty, we don't need the fix for Android 5?<br><br></div>Regardless of that, I think the problem of infinite reverse connections is still a bug that can happen in other cases and we should keep the timer approach to fix it. Can you put it back but this time generic (not only for Android 5)?<br><div class="gmail_extra"><br></div><div class="gmail_extra">Albert<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Aug 20, 2015 at 11:25 AM, Vineet Garg <span dir="ltr"><<a href="mailto:grgvineet@gmail.com" target="_blank">grgvineet@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Git commit 8cd59e701af9259509c6214d9ddbff09c97e154c by Vineet Garg.<br>
Committed on 20/08/2015 at 18:18.<br>
Pushed by vineetgarg into branch 'ssl'.<br>
<br>
Using custom built Netty 4.0.25, with fix for high memory usage.<br>
This version does not have any error, as of now and working fine<br>
<br>
Remove timer based blacklist for reverse connection since it is not needed now<br>
<br>
M  +-    --    libs/netty-handler.jar<br>
M  +1    -28   src/org/kde/kdeconnect/Backends/LanBackend/LanLinkProvider.java<br>
<br>
<a href="http://commits.kde.org/kdeconnect-android/8cd59e701af9259509c6214d9ddbff09c97e154c" rel="noreferrer" target="_blank">http://commits.kde.org/kdeconnect-android/8cd59e701af9259509c6214d9ddbff09c97e154c</a><br>
<br>
diff --git a/libs/netty-handler.jar b/libs/netty-handler.jar<br>
index b49a5e0..7e283cf 100644<br>
Binary files a/libs/netty-handler.jar and b/libs/netty-handler.jar differ<br>
diff --git a/src/org/kde/kdeconnect/Backends/LanBackend/LanLinkProvider.java b/src/org/kde/kdeconnect/Backends/LanBackend/LanLinkProvider.java<br>
index 2d573da..37c350b 100644<br>
--- a/src/org/kde/kdeconnect/Backends/LanBackend/LanLinkProvider.java<br>
+++ b/src/org/kde/kdeconnect/Backends/LanBackend/LanLinkProvider.java<br>
@@ -21,8 +21,6 @@<br>
 package org.kde.kdeconnect.Backends.LanBackend;<br>
<br>
 import android.content.Context;<br>
-import android.net.wifi.WifiManager;<br>
-import android.os.Build;<br>
 import android.preference.PreferenceManager;<br>
 import android.support.v4.util.LongSparseArray;<br>
 import android.util.Base64;<br>
@@ -41,10 +39,8 @@ import java.net.InetSocketAddress;<br>
 import java.security.cert.Certificate;<br>
 import java.util.ArrayList;<br>
 import java.util.HashMap;<br>
-import java.util.Set;<br>
 import java.util.Timer;<br>
 import java.util.TimerTask;<br>
-import java.util.concurrent.TimeUnit;<br>
<br>
 import javax.net.ssl.SSLEngine;<br>
 import javax.net.ssl.SSLHandshakeException;<br>
@@ -92,9 +88,6 @@ public class LanLinkProvider extends BaseLinkProvider {<br>
     private TcpHandler tcpHandler = new TcpHandler();<br>
     private UdpHandler udpHandler = new UdpHandler();<br>
<br>
-    private ArrayList<String> reverseConnectionBlacklist = new ArrayList<>();<br>
-    private Timer reverseConnectionTimer;<br>
-<br>
     @ChannelHandler.Sharable<br>
     private class TcpHandler extends SimpleChannelInboundHandler<String>{<br>
         @Override<br>
@@ -264,22 +257,7 @@ public class LanLinkProvider extends BaseLinkProvider {<br>
                             if (!future.isSuccess()) {<br>
                                 Log.e("KDE/LanLinkProvider", "Cannot connect to " + identityPackage.getString("deviceId"));<br>
                                 // Try reverse connection<br>
-<br>
-                                if (!reverseConnectionBlacklist.contains(identityPackage.getString("deviceId"))) {<br>
-                                    // We are waiting for 3 seconds after trying reverse connection, to avoid any further emmission<br>
-                                    // Without this, infinite loop is created between two devices with Android 5.0, because server will not work on it<br>
-                                    // and it will cause trouble for ohter devices too<br>
-                                    reverseConnectionTimer = new Timer();<br>
-                                    reverseConnectionTimer.schedule(new TimerTask() {<br>
-                                        @Override<br>
-                                        public void run() {<br>
-                                            reverseConnectionBlacklist.remove(identityPackage.getString("deviceId"));<br>
-                                        }<br>
-                                    }, 3*1000);<br>
-                                    reverseConnectionBlacklist.add(identityPackage.getString("deviceId"));<br>
-                                    onNetworkChange();<br>
-                                }<br>
-<br>
+                                onNetworkChange();<br>
                                 return;<br>
                             }<br>
<br>
@@ -430,11 +408,6 @@ public class LanLinkProvider extends BaseLinkProvider {<br>
<br>
         clientGroup = new NioEventLoopGroup();<br>
<br>
-        if (Build.VERSION.SDK_INT == Build.VERSION_CODES.LOLLIPOP) {<br>
-            // Server not working in Android Lollipop due to ssl bug<br>
-            return ;<br>
-        }<br>
-<br>
         bossGroup = new NioEventLoopGroup(1);<br>
         workerGroup = new NioEventLoopGroup();<br>
         try{<br>
<br>
</blockquote></div><br></div></div>
</blockquote></div>