Rather than […] slideshow […]
- Queries
- All Stories
- Search
- Advanced Search
Advanced Search
May 23 2020
May 21 2020
It would be better if the onboarding screens were split into another issue. I am in favor of them, but neutral on the other things. It is a feature addition, while the others are feature modifications.
May 10 2020
Apr 28 2020
Sep 19 2017
I think it would be better if I finished the UI toggle first, then added this, so that we can reduce the risk of breaking certain peoples' connections.
Sep 4 2017
To make this easier to review, there are 4 main parts:
The 3 codepaths can be found in NetworkHelper. They were the following (but now changed):
- "255.255.255.255"
- Broadcast addresses from NetworkInterfaces. A list of these can be generated on Linux Java 8 using:
Collections.list(NetworkInterface.getNetworkInterfaces()).stream() .filter(x -> isInterfaceNameCompatible(x.getName())) .map(NetworkInterface::getInterfaceAddresses).flatMap(List::stream) .map(InterfaceAddress::getBroadcast).filter(Objects::nonNull) .collect(Collectors.toList());
- Network neighbors, (from ARP, or other places). On Android/Linux shell:
$ cat /proc/net/arp $ ip n $ arp
The ARP codepath has been removed in the latest change, and exactly one of the other two can be active at a time. Previously, enabling multiple codepaths would cause things to randomly and silently break.
- Finish broadcast networking & Remove debug
Sep 3 2017
Right now there are three different neighbor discovery codepaths. Only the new per-interface link-local one seems to work, and because of this, is enabled.
Effects of most recent changes, tested with one computer and one phone:
- Switch to per-interface broadcasts & Fix tethering
Sep 2 2017
Can everyone verify from the logcat that it detects broadcast addresses, and it properly marks them as usable?
In particular, the regular WiFi use case needs to be checked, as it is the setup that most people use:
- Connect to the same network, a KDE computer using any type of connection, and an Android device using WiFi.
- On the Android, the logcat should show the "wlan0" interface being found, marked as usable, and give a broadcast address. Note this address as the "broadcast address."
- Run the command "ip a" on the KDE computer. Find the interface used to connect to the network, and note the address below next to "inet." Note this address as the "computer address."
- Check that the "computer address" will receive packets sent to the "broadcast address."
I plan on fully moving isOnMobileNetwork() to getNetworkBroadcastDestinations(). This is because isOnMobileNetwork() currently prevents the "255.255.255.255"-destined packet from being sent from LanLinkProvider, but subnet-specific destinations from getNetworkBroadcastDestinations() will only be found when we will want to use them. If no destinations are discovered, then behavior will be similar to when isOnMobileNetwork() == true. In the GUI, the message could be changed from "you are on a mobile data connection" to something like "It looks like you aren't connected to any compatible networks. Try connecting to a local network."