-
Notifications
You must be signed in to change notification settings - Fork 5
Open
Description
I have two devices that were connected but have somehow become disconnected. One of the two devices doesn't realize this.
The oblivious device (Android 9):
Logcat from the oblivious device (it knows!):
I Caused by: android.system.ErrnoException: sendto failed: ENETUNREACH (Network is unreachable)
I at libcore.io.Linux.sendtoBytes(Native Method)
I at libcore.io.Linux.sendto(Linux.java:227)
I at libcore.io.BlockGuardOs.sendto(BlockGuardOs.java:307)
I at libcore.io.IoBridge.sendto(IoBridge.java:542)
I ... 12 more
I V: t+315.22s : [VirtualNode 169.254.73.179] received MMCP message (MmcpOriginatorMessage) from 169.254.44.101
I V: t+315.22s : [OriginatingMessageManager for /169.254.73.179] received originating message from 169.254.44.101 via 169.254.44.101
I V: t+315.22s : [OriginatingMessageManager for /169.254.73.179] received originating message from 169.254.44.101 via 169.254.44.101 messageId=196 hopCount=1 sentTime=1741281077543 Currently known: senttime=1741281074544 hop count = 1 isMoreRecentOrBetter=true
I V: t+315.22s : [OriginatingMessageManager for /169.254.73.179] update originator messages: currently known nodes = 169.254.44.101
W requestLayout() improperly called by androidx.compose.ui.platform.ViewLayerContainer{2aeeda1 V.E...... ......ID 0,0-0,0} during layout: running second layout pass
I V: t+316.02s : [OriginatingMessageManager for /169.254.73.179] sending originating message messageId=109 sentTime=1741281088352
I W: t+316.03s : [OriginatingMessageManager for /169.254.73.179] : sendOriginatingMessagesRunnable: exception sending to 169.254.44.101 through /fe80::29a:cdff:fe56:865%p2p0:45497 java.io.IOException: sendto failed: ENETUNREACH (Network is unreachable)
I at libcore.io.IoBridge.maybeThrowAfterSendto(IoBridge.java:576)
I at libcore.io.IoBridge.sendto(IoBridge.java:544)
I at java.net.PlainDatagramSocketImpl.send(PlainDatagramSocketImpl.java:125)
I at java.net.DatagramSocket.send(DatagramSocket.java:721)
I at com.ustadmobile.meshrabiya.vnet.VirtualNodeDatagramSocket.send(VirtualNodeDatagramSocket.kt:89)
I at com.ustadmobile.meshrabiya.vnet.OriginatingMessageManager.sendOriginatingMessageRunnable$lambda$3(OriginatingMessageManager.kt:106)
I at com.ustadmobile.meshrabiya.vnet.OriginatingMessageManager.$r8$lambda$86AJACYDp5EpSDScyONjL9vuXGg(Unknown Source:0)
I at com.ustadmobile.meshrabiya.vnet.OriginatingMessageManager$$ExternalSyntheticLambda2.run(D8$$SyntheticClass:0)
I at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:458)
I at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:307)
I at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:302)
I at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
I at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
I at java.lang.Thread.run(Thread.java:764)
I Caused by: android.system.ErrnoException: sendto failed: ENETUNREACH (Network is unreachable)
I at libcore.io.Linux.sendtoBytes(Native Method)
I at libcore.io.Linux.sendto(Linux.java:227)
I at libcore.io.BlockGuardOs.sendto(BlockGuardOs.java:307)
I at libcore.io.IoBridge.sendto(IoBridge.java:542)
I ... 12 more
I V: t+318.22s : [VirtualNode 169.254.73.179] received MMCP message (MmcpOriginatorMessage) from 169.254.44.101
I V: t+318.22s : [OriginatingMessageManager for /169.254.73.179] received originating message from 169.254.44.101 via 169.254.44.101
I V: t+318.22s : [OriginatingMessageManager for /169.254.73.179] received originating message from 169.254.44.101 via 169.254.44.101 messageId=197 hopCount=1 sentTime=1741281080544 Currently known: senttime=1741281077543 hop count = 1 isMoreRecentOrBetter=true
I V: t+318.22s : [OriginatingMessageManager for /169.254.73.179] update originator messages: currently known nodes = 169.254.44.101
W requestLayout() improperly called by androidx.compose.ui.platform.ViewLayerContainer{2aeeda1 V.E...... ......ID 0,0-0,0} during layout: running second layout pass
I V: t+319.03s : [OriginatingMessageManager for /169.254.73.179] sending originating message messageId=110 sentTime=1741281091353
I W: t+319.03s : [OriginatingMessageManager for /169.254.73.179] : sendOriginatingMessagesRunnable: exception sending to 169.254.44.101 through /fe80::29a:cdff:fe56:865%p2p0:45497 java.io.IOException: sendto failed: ENETUNREACH (Network is unreachable)
I at libcore.io.IoBridge.maybeThrowAfterSendto(IoBridge.java:576)
I at libcore.io.IoBridge.sendto(IoBridge.java:544)
I at java.net.PlainDatagramSocketImpl.send(PlainDatagramSocketImpl.java:125)
I at java.net.DatagramSocket.send(DatagramSocket.java:721)
I at com.ustadmobile.meshrabiya.vnet.VirtualNodeDatagramSocket.send(VirtualNodeDatagramSocket.kt:89)
I at com.ustadmobile.meshrabiya.vnet.OriginatingMessageManager.sendOriginatingMessageRunnable$lambda$3(OriginatingMessageManager.kt:106)
I at com.ustadmobile.meshrabiya.vnet.OriginatingMessageManager.$r8$lambda$86AJACYDp5EpSDScyONjL9vuXGg(Unknown Source:0)
I at com.ustadmobile.meshrabiya.vnet.OriginatingMessageManager$$ExternalSyntheticLambda2.run(D8$$SyntheticClass:0)
I at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:458)
I at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:307)
I at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:302)
I at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
I at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
I at java.lang.Thread.run(Thread.java:764)
I Caused by: android.system.ErrnoException: sendto failed: ENETUNREACH (Network is unreachable)
I at libcore.io.Linux.sendtoBytes(Native Method)
I at libcore.io.Linux.sendto(Linux.java:227)
I at libcore.io.BlockGuardOs.sendto(BlockGuardOs.java:307)
I at libcore.io.IoBridge.sendto(IoBridge.java:542)
I ... 12 more
The fix: Display a status message so the user knows that ping is actually failing (the way Windows does), or don't display any output (the way Linux does).
Metadata
Metadata
Assignees
Labels
No labels
