1. 15 Jan, 2015 7 commits
    • Aleksander Morgado's avatar
      platform: avoid storing unknown netlink object types (bgo #742928) · 6c1a6d2d
      Aleksander Morgado authored
      Testing WWAN connections through a Nokia Series 40 phone, addresses of family
      AF_PHONET end up triggering an assert() in object_has_ifindex(), just because
      object_type_from_nl_object() only handles AF_INET and AF_INET6 address.
      
      In order to avoid this kind of problems, we'll try to make sure that the object
      caches kept by NM only store known object types.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=742928
      
          Connect: ppp0 <--> /dev/ttyACM0
          nm-pppd-plugin-Message: nm-ppp-plugin: (nm_phasechange): status 5 / phase 'establish'
          NetworkManager[27434]: <info>  (ppp0): new Generic device (driver: 'unknown' ifindex: 12)
          NetworkManager[27434]: <info>  (ppp0): exported as /org/freedesktop/NetworkManager/Devices/4
          [Thread 0x7ffff1ecf700 (LWP 27439) exited]
          NetworkManager[27434]: <info>  (ttyACM0): device state change: ip-config -> deactivating (reason 'user-requested') [70 110 39]
          Terminating on signal 15
          nm-pppd-plugin-Message: nm-ppp-plugin: (nm_phasechange): status 10 / phase 'terminate'
          **
          NetworkManager:ERROR:platform/nm-linux-platform.c:1534:object_has_ifindex: code should not be reached
      
          Program received signal SIGABRT, Aborted.
          0x00007ffff4692a97 in raise () from /usr/lib/libc.so.6
          (gdb) bt
          #0  0x00007ffff4692a97 in raise () from /usr/lib/libc.so.6
          #1  0x00007ffff4693e6a in abort () from /usr/lib/libc.so.6
          #2  0x00007ffff4c8d7f5 in g_assertion_message () from /usr/lib/libglib-2.0.so.0
          #3  0x00007ffff4c8d88a in g_assertion_message_expr () from /usr/lib/libglib-2.0.so.0
          #4  0x0000000000472b91 in object_has_ifindex (object=0x8a8320, ifindex=12) at platform/nm-linux-platform.c:1534
          #5  0x0000000000472bec in check_cache_items (platform=0x7fe8a0, cache=0x7fda30, ifindex=12) at platform/nm-linux-platform.c:1549
          #6  0x0000000000472de3 in announce_object (platform=0x7fe8a0, object=0x8a8c30, change_type=NM_PLATFORM_SIGNAL_REMOVED, reason=NM_PLATFORM_REASON_EXTERNAL) at platform/nm-linux-platform.c:1617
          #7  0x0000000000473dd2 in event_notification (msg=0x8a7970, user_data=0x7fe8a0) at platform/nm-linux-platform.c:1992
          #8  0x00007ffff5ee14de in nl_recvmsgs_report () from /usr/lib/libnl-3.so.200
          #9  0x00007ffff5ee1849 in nl_recvmsgs () from /usr/lib/libnl-3.so.200
          #10 0x00000000004794df in event_handler (channel=0x7fc930, io_condition=G_IO_IN, user_data=0x7fe8a0) at platform/nm-linux-platform.c:4152
          #11 0x00007ffff4c6791d in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
          #12 0x00007ffff4c67cf8 in ?? () from /usr/lib/libglib-2.0.so.0
          #13 0x00007ffff4c68022 in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
          #14 0x00000000004477ee in main (argc=1, argv=0x7fffffffeaa8) at main.c:447
          (gdb) fr 4
          #4  0x0000000000472b91 in object_has_ifindex (object=0x8a8320, ifindex=12) at platform/nm-linux-platform.c:1534
          1534                    g_assert_not_reached ();
      6c1a6d2d
    • Dan Winship's avatar
      connectivity: avoid redundant connectivity checks · 66b8f2b7
      Dan Winship authored
      Don't start an automatic connectivity check right when NMManager tells
      us we're online; only do it if the manager doesn't request an explicit
      connectivity check immediately afterward.
      66b8f2b7
    • Dan Winship's avatar
      connectivity: simplify redundant code · 0997c4b2
      Dan Winship authored
      Merge the two nm_connectivity_set_online() calls into one, after
      tweaking NMConnectivity to always update its internal state before
      alerting callers to the new state.
      0997c4b2
    • Dan Winship's avatar
      connectivity: fix manager state during connectivity check (bgo #742823) · 5e182d55
      Dan Winship authored
      When a connection has finished activating, but we don't know yet that
      we have full connectivity, then find_best_device_state() should return
      CONNECTED_SITE, not CONNECTING. Fixes a bug where the manager state
      would repeatedly switch between those two states.
      5e182d55
    • Dan Winship's avatar
      connectivity: improve debug logging · 53f2642c
      Dan Winship authored
      nm-connectivity was logging both "started" and "finished" for periodic
      connectivity checks, but was only logging "finished" for manual ones,
      which made the logs look weird. Fix it to log both periodic and manual
      starts, and differentiate them.
      
      Also add some additional logging to indicate when set_online() is
      called, and when :state changes.
      53f2642c
    • Jiří Klimeš's avatar
      ifcfg-rh: update test files not to use obsolete GATEWAY<n> variables · 233498e0
      Jiří Klimeš authored
      But add a dedicated test reading GATEWAY1 to ensure we are still backwards
      compatible.
      233498e0
    • Jiří Klimeš's avatar
      ifcfg-rh: read custom IP address for shared connections (rh #1174632) · c8fe3bba
      Jiří Klimeš authored
      Custom IP ranges for shared connection were implemeted in bgo #6759732
      (commit 32a001f5). The first IP address
      is used and a range is calculated.
      However, the commit missed to update ifcfg-rh plugin to read the address.
      
      Test case:
      * use ifcfg-rh plugin for NetworkManager
      $ nmcli con add type eth con-name shared-ip ifname eth0
      $ nmcli con mod shared-ip ipv4.addresses 9.8.7.6/24 ipv4.method shared
      $ nmcli con show shared-ip
      $ nmcli con show shared-ip  <--- ip address 9.8.7.6 was missing
      
      https://bugzilla.redhat.com/show_bug.cgi?id=1174632
      c8fe3bba
  2. 14 Jan, 2015 1 commit
  3. 13 Jan, 2015 21 commits
  4. 12 Jan, 2015 11 commits