Errors when dns66 stops working
GRBurst opened this issue · comments
Sometimes, the APP stops working. I saw other issues stating it happens when they switch from wlan to Mobil or vice versa, but I can not confirm this to be true in my cases. Hence I created a new issue.
When it happens today, there are two different errors in the logcat that are related to dns66:
- AdVpnThread
Network exception in vpn thread, reconnecting
java.lang.IllegalArgumentException: arr is empty.
at org.pcap4j.util.ByteArrays.validateBounds(ByteArrays.java:953)
at org.pcap4j.util.ByteArrays.toHexString(ByteArrays.java:771)
at org.pcap4j.util.ByteArrays.toHexString(ByteArrays.java:760)
at org.pcap4j.packet.UnknownTcpOption.toString(UnknownTcpOption.java:147)
at java.lang.String.valueOf(String.java:2924)
at java.lang.StringBuilder.append(StringBuilder.java:132)
at org.pcap4j.packet.TcpPacket$TcpHeader.buildString(TcpPacket.java:945)
at org.pcap4j.packet.AbstractPacket$AbstractHeader$4.buildValue(AbstractPacket.java:416)
at org.pcap4j.packet.AbstractPacket$AbstractHeader$4.buildValue(AbstractPacket.java:413)
at org.pcap4j.util.LazyValue.getValue(LazyValue.java:41)
at org.pcap4j.packet.AbstractPacket$AbstractHeader.toString(AbstractPacket.java:530)
at org.pcap4j.packet.AbstractPacket.buildString(AbstractPacket.java:236)
at org.pcap4j.packet.AbstractPacket$4.buildValue(AbstractPacket.java:68)
at org.pcap4j.packet.AbstractPacket$4.buildValue(AbstractPacket.java:65)
at org.pcap4j.util.LazyValue.getValue(LazyValue.java:41)
at org.pcap4j.packet.AbstractPacket.toString(AbstractPacket.java:252)
at java.lang.String.valueOf(String.java:2924)
at java.lang.StringBuilder.append(StringBuilder.java:132)
at org.jak_linux.dns66.vpn.DnsPacketProxy.handleDnsRequest(DnsPacketProxy.java:152)
at org.jak_linux.dns66.vpn.AdVpnThread.readPacketFromDevice(AdVpnThread.java:319)
at org.jak_linux.dns66.vpn.AdVpnThread.doOne(AdVpnThread.java:284)
at org.jak_linux.dns66.vpn.AdVpnThread.runVpn(AdVpnThread.java:220)
at org.jak_linux.dns66.vpn.AdVpnThread.run(AdVpnThread.java:157)
at java.lang.Thread.run(Thread.java:919)
- DnsPacketProxy
handleDnsRequest: Cannot handle packets to192.0.2.255
java.lang.ArrayIndexOutOfBoundsException: length=10; index=-3
at java.util.ArrayList.get(ArrayList.java:439)
at org.jak_linux.dns66.vpn.DnsPacketProxy.translateDestinationAdress(DnsPacketProxy.java:214)
at org.jak_linux.dns66.vpn.DnsPacketProxy.handleDnsRequest(DnsPacketProxy.java:156)
at org.jak_linux.dns66.vpn.AdVpnThread.readPacketFromDevice(AdVpnThread.java:319)
at org.jak_linux.dns66.vpn.AdVpnThread.doOne(AdVpnThread.java:284)
at org.jak_linux.dns66.vpn.AdVpnThread.runVpn(AdVpnThread.java:220)
at org.jak_linux.dns66.vpn.AdVpnThread.run(AdVpnThread.java:157)
at java.lang.Thread.run(Thread.java:919)
Seems like boundary + empty checks should resolve the problem. Using Android 10 btw.
I also enabled "Watch connection", " Resume on startup" and "ipv6 support".
Hope that helps. Feel free to reach out in case you need more informative :-)
Best wishes
Thank you for your bug report, I'll try to find some time to investigate and fix this.
The second one is not a bug, it's just an informative message, and expected.