1. 25 Sep, 2013 1 commit
  2. 24 Sep, 2013 1 commit
  3. 17 Sep, 2013 1 commit
    • Jiří Klimeš's avatar
      core,settings: do not call functions with connection==NULL (rh #1008151) · 76c34d48
      Jiří Klimeš authored
      check 'req' and 'connection' variables. Apparently, they can be NULL
      on some circumstances.
      
      NetworkManager[2830]: <info> (p6p1): device state change: secondaries -> disconnected (reason 'connection-removed') [90 30 38]
      NetworkManager[2830]: <info> (p6p1): deactivating device (reason 'connection-removed') [38]
      kernel: [ 2623.609111] NetworkManager[2830]: segfault at 50 ip 00007f1a309bf6a1 sp 00007fffc59e67e0 error 6 in NetworkManager[7f1a30915000+104000]
      NetworkManager[2830]: (nm-device.c:5043):nm_device_state_changed: runtime check failed: (in_state_changed == FALSE)
      NetworkManager[2830]: <info> (p6p1): device state change: disconnected -> failed (reason 'secondary-connection-failed') [30 120 54]
      NetworkManager[2830]: nm_act_request_get_connection: assertion `NM_IS_ACT_REQUEST (req)' failed
      NetworkManager[2830]: nm_connection_get_id: assertion `connection != NULL' failed
      NetworkManager[2830]: <warn> Activation (p6p1) failed for connection '(null)'
      NetworkManager[2830]: nm_settings_connection_get_timestamp: assertion `connection != NULL' failed
      abrt[2882]: Saved core dump of pid 2830 (/usr/sbin/NetworkManager) to /var/tmp/abrt/ccpp-2013-09-15-11:38:39-2830 (18952192 bytes)
      systemd[1]: NetworkManager.service: main process exited, code=dumped, status=11/SEGV
      systemd[1]: Unit NetworkManager.service entered failed state.
      
      https://bugzilla.redhat.com/show_bug.cgi?id=1008151
      76c34d48
  4. 13 Sep, 2013 1 commit
  5. 12 Sep, 2013 3 commits
  6. 05 Sep, 2013 2 commits
  7. 04 Sep, 2013 2 commits
  8. 30 Aug, 2013 1 commit
  9. 29 Aug, 2013 1 commit
  10. 26 Aug, 2013 1 commit
    • Dan Williams's avatar
      core: fix setting is_software for software devices created by NM · 179dae7c
      Dan Williams authored
      These devices don't have a platform device at creation time, thus
      is_software wasn't getting set properly.  Move the is_software
      decision to constructed() because by this point, the iface and
      ifindex (if present) will be known for all cases and thus we can
      figure out if it's a software device or not in one place.
      179dae7c
  11. 22 Aug, 2013 4 commits
  12. 16 Aug, 2013 2 commits
    • Dan Winship's avatar
      core: add NMManager:startup property · bc091f2f
      Dan Winship authored
      Add a property on NMManager indicating that it is currently starting
      up and activating startup-time/boot-time network connections.
      
      "startup" is initially TRUE, and becomes FALSE once all NMDevices
      report that they have no pending activity (eg, trying to activate,
      waiting for a wifi scan to complete, etc). This is tracked via a new
      NMDevice:has-pending-activity property, which is maintained partially
      by the device itself, and partially by other parts of the code.
      bc091f2f
    • Dan Winship's avatar
      core: remove some dead code in NMDevice · 75ea0b05
      Dan Winship authored
      75ea0b05
  13. 15 Aug, 2013 1 commit
  14. 12 Aug, 2013 1 commit
  15. 07 Aug, 2013 2 commits
    • Dan Williams's avatar
      core: update UDI when it's available · 0c8d8b4d
      Dan Williams authored
      Software devices don't have a UDI until udev finds them, and since we need
      to know about the software devices before udev finds them the UDI will be
      missing.  Instead of requiring a UDI on NMDevice creation, update the
      property from the NMPlatform link change signal when udev does find the
      device.
      
      Now that a UDI is no longer required for device creation, software devices
      added by NM would be created in the platform_link_added_cb() signal
      handler triggered by the various software device creation methods in
      system_create_virtual_device() (eg nm_platform_bridge_add() etc).  Then
      the NMDevice created in system_create_virtual_device() would be a duplicate
      and cause problems when it was added.  Since system_create_virtual_device()
      needs to do setup on some devices, suppress the device creation from the
      platform link added handler in this function.
      
      Much of this is a hack which should be cleaned up later.
      0c8d8b4d
    • Thomas Haller's avatar
      fixup! core: fix cleanup of NMDevices that fail construction · 81ed5307
      Thomas Haller authored
      The unref in finalize is not needed, because the hash table gets already freed
      in dispose.
      
      Note that setting available_connections to NULL in dispose is not really
      needed, because (altough dispose might be called more than once) there
      is a guarded by "priv->disposed = TRUE;". But leave it for clearity in
      case somebody tries to access the pointer (which shouldn't happen).
      Signed-off-by: Thomas Haller's avatarThomas Haller <thaller@redhat.com>
      81ed5307
  16. 06 Aug, 2013 2 commits
  17. 03 Aug, 2013 2 commits
  18. 02 Aug, 2013 6 commits
  19. 31 Jul, 2013 1 commit
    • Dan Williams's avatar
      platform: work around missing kernel netlink notifications of default route changes · 42b43239
      Dan Williams authored
      It appears the kernel does not send notifications via netlink if the
      default route is removed in some cases.  This causes the platform
      route cache to become stale, and thus when the default route is
      reset by NM the platform thinks the route already exists, and does
      not add it.  But the route doesn't exist, becuase the kernel silently
      removed it without telling anyone.
      
      Fix that with a big hammer by flushing/refilling the route cache when
      devices are deactivated (deletion of their addresses causes the default
      route to be removed by the kernel) and when the default route is
      updated by NM itself.
      
      Pavel: if we find a more granular method, we should probably revert
      this as the cache refill can be expensive.
      42b43239
  20. 30 Jul, 2013 1 commit
  21. 29 Jul, 2013 1 commit
  22. 22 Jul, 2013 2 commits
    • Dan Williams's avatar
      core: let device classes indicate their HW address will never change (bgo #701744) · fe5f0d20
      Dan Williams authored
      Bluetooth device hardware addresses won't change during the lifetime
      of the object (since that would mean a completely new device) and
      they also won't have an ifindex because they aren't netdevices.
      
      Various bits of the core periodically call nm_device_update_hw_address()
      to update a device's hardware address, but this function expects that
      any device with a hardware address also has an ifindex.  Except that
      Bluetooth devices don't because they aren't netdevices.
      
      Modify the get_hw_address_length() function to return a boolean
      indicating whether or not the address can ever change, and set that
      for BT devices.  nm_device_update_hw_address() then exits early if
      there's no point in re-checking the hardware address, avoiding the
      assertion.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=701744
      fe5f0d20
    • Dan Winship's avatar
      core: change the rules for ignore-carrier · 17e91fd4
      Dan Winship authored
      The previous ignore-carrier rules did not work well with dynamic IP
      (dhcp/slaac) connections. Change the rule so that only static IP
      connections can be activated when carrier is not present (but both
      static and dynamic connections will remain up when carrier is lost).
      17e91fd4
  23. 20 Jul, 2013 1 commit