Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-65586

Improve Bearer Plugins

    XMLWordPrintable

    Details

      Description

      Before Qt 5.9.3, Qt shipped with two types of bearer plugin (on macOS and Windows):

      • Generic, which enumerates network interfaces
      • WiFi, which enumerates WiFi networks

      The WiFi enumeration turned out to be disruptive, and the WiFi plugin has now been disabled. This is not believed to have any effect on bearer management, since in practice the Generic plugin was preferred. See QTBUG-40332.

      However, the Generic plugin is also not working optimally due to the fact that it tends to always report that there is at least one active interface - even if the system does not have general network connectivity. This is due to the presence of special-purpose interfaces such as tunneling interfaces and the Apple Wireless Direct Link (iDevice peer-to-peer) interface.

      We should develop new bearer plugins that use native connectivity APIs, and replace the generic plugin on the Apple platforms and Windows.

      The end goal is to make QNetworkAccessManager::networkAccessible() work. It should return "Accessible" if the system is connected to either ethernet or wifi. It should return NotAccessible if the device is in airplane mode. (The function goes as far as the local network, and does not determine if the internet is reachable.)

      Native API:

      • Windows:INetworkListManager::get_IsConnected, INetworkEvents::NetworkConnectivityChanged
      • macOS,iOS: Reachability

        Attachments

          Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            Activity

              People

              Assignee:
              manordheim Mårten Nordheim
              Reporter:
              sorvig Morten Sørvig
              Votes:
              17 Vote for this issue
              Watchers:
              29 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:

                  Gerrit Reviews Side Panel

                  Error rendering 'com.meetme.plugins.jira.gerrit-plugin:gerrit-reviews-side-panel'. Please contact your Jira administrators.