1. 13 Oct, 2018 8 commits
  2. 12 Oct, 2018 3 commits
  3. 11 Oct, 2018 17 commits
    • Thomas Haller's avatar
      wwan: don't assume DNS info is always available for IPv6 · cec7ade8
      Thomas Haller authored
      See also "5df024f5 wwan: don't assume DNS info is always available"
      which does the same for IPv4.
      cec7ade8
    • Beniamino Galvani's avatar
      cli: check we have an active connection before showing hint · c0fc85f3
      Beniamino Galvani authored
      If the activation fails even before the active connection instance is
      created, we get the following:
      
       $ nmcli connection up vpn1
       libnm-CRITICAL **: nm_active_connection_get_connection: assertion 'NM_IS_ACTIVE_CONNECTION (connection)' failed
       nmcli-CRITICAL **: active_connection_hint: assertion 'connection' failed
       Error: Connection activation failed: Not authorized to control networking.
      
      Check that we have an active connection before showing the hint.
      
      Fixes: bc6c042d
      c0fc85f3
    • Thomas Haller's avatar
    • Andrew Zaborowski's avatar
      wifi/iwd: use KnownNetwork DBus properties on Network objects · b3dad27a
      Andrew Zaborowski authored
      Instead of walking through the list all known networks and comparing
      name & SSIDs to judge whether a network is an IWD KnownNetwork, look at
      the Network.KnownNetwork pre-IWD-0.8 property.
      b3dad27a
    • Andrew Zaborowski's avatar
      wifi/iwd: always update can_connect in state_changed · 2fff4e14
      Andrew Zaborowski authored
      Ensure priv->can_connect is up to date on IWD state changed.  If we
      exited the function early priv->can_connect would sometimes be wrongly
      TRUE and we'd start a new autoconnect too early after IP configuration
      had failed for example.
      2fff4e14
    • Andrew Zaborowski's avatar
      wifi/iwd: add Ad-hoc mode support · 979c632e
      Andrew Zaborowski authored
      979c632e
    • Andrew Zaborowski's avatar
      wifi/iwd: add AP mode support · a6f13d3c
      Andrew Zaborowski authored
      Handle AP mode connections by setting the Mode property on IWD's Device
      interface to "ap" (which will make the Station interface go away, the
      Powered property -- normally controlled by set_enabled -- to switch to
      FALSE and back to TRUE, and then the AccessPoint interface to appear)
      and then calling the AccessPoint.Start method.  This is all done in the
      CONFIG phase in NM.  We also attempt to always set Mode back to
      "station" and wait for the Station interface to reappear before going to
      the NM DISCONNECTED state.  All this complicates the code a little.
      
      While making the necessary changes simplify a lot of the checks which
      are implied by other things we've checked already, for example
      priv->can_scan and priv->can_connect can now only be TRUE when device is
      powered up and in station mode (Station interface is present) so we can
      skip other checks.  Also assume that check_connection_compatible has
      been called before other methods are called so we can skip multiple
      connection mode checks and checks that a IWD KnownNetwork exsists for
      EAP connections.
      
      act_stage1_prepare and act_stage2_config now borrow more code from
      nm-device-wifi.c because both backend now handle multiple modes.
      a6f13d3c
    • Andrew Zaborowski's avatar
      wifi/iwd: use nm_utils_error_is_cancelled consistently · 6e95029b
      Andrew Zaborowski authored
      Use nm_utils_error_is_cancelled instead of checking
      g_error_matches (error, G_IO_ERROR, G_IO_ERROR_CANCELLED), set
      consider_is_disposing false.  Also use the DBUS_INTERFACE_PROPERTIES
      macro.
      6e95029b
    • Andrew Zaborowski's avatar
      wifi/iwd: free variants returned by g_dbus_proxy_call_finish · 6e1935eb
      Andrew Zaborowski authored
      Make sure we g_variant_unref() the values returned from
      g_dbus_proxy_call_finish.  In get_ordered_networks_cb also make sure we
      don't access the NMDeviceIwd data until after we know the call has not
      been cancelled.  Switch from _nm_dbus_proxy_call_finish to
      g_dbus_proxy_call_finish where we don't care about the variant type
      returned.
      6e1935eb
    • Andrew Zaborowski's avatar
      wifi: skip nm_platform_wifi_get_capabilities/get_mode for IWD backend · 178af026
      Andrew Zaborowski authored
      Only call nm_platform_wifi_get_capabilities and
      nm_platform_wifi_get_mode with the wpa_supplicant backend.  They're used
      to initialize the wireless-capabilities property and to skip creating
      NMDevices for interfaces in unknown wifi mode which IWD handles already.
      178af026
    • Andrew Zaborowski's avatar
      wifi/iwd: set capabilities property based on IWD support · 7a6d5ab5
      Andrew Zaborowski authored
      Parse the Adapter.SupportedModes dbus property and set the
      gobject property wireless-capabilities based on that.
      7a6d5ab5
    • Thomas Haller's avatar
    • Thomas Haller's avatar
      ndisc: always emit changed signal if an ndisc parameter changes · 98ec56c6
      Thomas Haller authored
      Note how the nm_ndisc_add_*() return a boolean to indicate whether
      anything changes. That is taken to decide whether to emit a changed
      signal.
      
      Previously, we would not consider all fields which are exposed
      as public API.
      
      Note that nm-ip6-config.c would care about the lifetime of NMNDiscAddress.
      For that, nm_ndisc_add_address() would correctly consider a change of
      the lifetime as relevant. So, this was for the most part not broken.
      However, for example nm_ndisc_add_route() would ignore changes to the
      gateway.
      
      Always signal changes if anything changes at all. It's more correct
      and robust.
      98ec56c6
    • Thomas Haller's avatar
      ndisc/trivial: move code · 4f78d82f
      Thomas Haller authored
      4f78d82f
    • Thomas Haller's avatar
      ndisc: abort handling IO in event_ready() if we are unable to switch namespace · d444fcde
      Thomas Haller authored
      It should never happen that we are unable to switch the namespace.
      However, in case it does, we cannot just return G_SOURCE_CONTINUE,
      because we will just endlessly trying to process IO without actually
      reading from the socket.
      
      This shouldn't happen, but the instance is hosed and something is
      very wrong. No longer handle the socket to avoid an endless loop.
      d444fcde
    • Thomas Haller's avatar
      ndisc: keep NMNDisc instance alive while processing IO in event_ready() · 9aa628ce
      Thomas Haller authored
      event_ready() calls ndp_callall_eventfd_handler(), which invokes
      our own callback, which may invoke change notification.
      
      At that point, it's not guaranteed that the signal handler won't
      destroy the ndisc instance, which means, the "struct ndp" gets destroyed
      while invoking callbacks. That's bad, because libndp is not robust
      against that.
      
      Ensure the object stays alive long enough.
      9aa628ce
    • Thomas Haller's avatar
      ndisc: first reschedule timeout before invoking change event in check_timestamps() · 1f856b7c
      Thomas Haller authored
      It's just ugly to invoke external code in the middel of an operation.
      You never know, whether the handler won' unref the ndisc instance.
      1f856b7c
  4. 10 Oct, 2018 8 commits
  5. 09 Oct, 2018 3 commits
  6. 08 Oct, 2018 1 commit