1. 15 Mar, 2019 1 commit
  2. 11 Mar, 2019 1 commit
  3. 07 Mar, 2019 4 commits
    • Benjamin Berg's avatar
      libnm: Fix reporting of unknown device types · 6b2aaba6
      Benjamin Berg authored
      nm_device_get_device_type would report the device type as it was send on
      DBus, while fetching the property would mean that only a known device
      types is reported.
      
      Make both results consistent by coercing in nm_device_get_device_type
      rather than when setting the property.
      
      (cherry picked from commit a6a185ba)
      6b2aaba6
    • Benjamin Berg's avatar
      core,wifi-p2p: Fix Wi-Fi P2P device type · 2d547059
      Benjamin Berg authored
      The device type was set to the GType rather than a new value in the
      NMDeviceType enum.
      
      Add the corresponding enum entry, fix the device type and set the
      routing priority to the same value as generic devices.
      
      (cherry picked from commit 8d9365a9)
      2d547059
    • Thomas Haller's avatar
      libnm: rename and expose nm_utils_base64secret_decode() in libnm · 0d178a96
      Thomas Haller authored
      A NetworkManager client requires an API to validate and decode
      a base64 secret -- like it is used by WireGuard. If we don't have
      this as part of the API, it's inconvenient. Expose it.
      
      Rename it from _nm_utils_wireguard_decode_key(), to give it a more
      general name.
      
      Also, rename _nm_utils_wireguard_normalize_key() to
      nm_utils_base64secret_normalize(). But this one we keep as internal
      API. The user will care more about validating and decoding the base64
      key. To convert the key back to base64, we don't need a public API in
      libnm.
      
      This is another ABI change since 1.16-rc1.
      
      (cherry picked from commit e46ba018)
      0d178a96
    • Marco Trevisan's avatar
      nm: Fix syntax on introspection annotations · b5bbf8ed
      Marco Trevisan authored
      Various annotations were added using multiple colons, while only one has
      to be added or g-ir-introspect will consider them part of the description
      
      !94
      (cherry picked from commit 73005fcf)
      b5bbf8ed
  4. 05 Mar, 2019 2 commits
  5. 26 Feb, 2019 1 commit
  6. 22 Feb, 2019 4 commits
  7. 21 Feb, 2019 4 commits
    • Thomas Haller's avatar
      wifi-p2p: drop WiFi-P2P "group-owner" property from D-Bus API and libnm · b7d4ad85
      Thomas Haller authored
      It's not yet implemented server-side.
      
      Until it is clear that we need this property and until it is implemented,
      drop it again from public API.
      
      See-also: !80 (comment 118004)
      b7d4ad85
    • Jonathan Kang's avatar
      Add polkit action for Wi-Fi scans · 243af16c
      Jonathan Kang authored
      Previously, Wi-Fi scans uses polkit action
      "org.freedesktop.NetworkManager.network-control". This is introduced
      in commit 5e3e19d0. But in a system with restrict polkit rules, for
      example "org.freedesktop.NetworkManager.network-control" was set as
      auth_admin. When you open the network panel of GNOME Control Center, a
      polkit dialog will keep showing up asking for admin password, as GNOME
      Control Center scans the Wi-Fi list every 15 seconds.
      
      Fix that by adding a new polkit action
      "org.freedesktop.NetworkManager.wifi.scan" so that distributions can
      add specific rule to allow Wi-Fi scans.
      
      [thaller@redhat.com: fix macro in "shared/nm-common-macros.h"]
      
      !68
      243af16c
    • Benjamin Berg's avatar
      Remove WFD IEs property from P2P device · 3d12dbc0
      Benjamin Berg authored
      While this can be considered a property of the P2P device, the API will
      require setting it through the settings when activating a connection. As
      such, having a (read only) property on the device is not very useful, so
      remove it again.
      3d12dbc0
    • Benjamin Berg's avatar
      core/setting-wifi-p2p: Add WFD IEs property to P2P settings · 8ed7aef2
      Benjamin Berg authored
      This is a protocol specific extension to Wi-Fi frames which need to be
      set in certain conditions. The P2P device will use this to update the
      corresponding wpa_supplicant property.
      8ed7aef2
  8. 19 Feb, 2019 3 commits
    • Thomas Haller's avatar
      libnm: fix leaking checkpoints from NMManager · 10600bdb
      Thomas Haller authored
      Fixes: c3efedf5
      10600bdb
    • Thomas Haller's avatar
      libnm: fix memleak for NMDeviceTun:hw-address · 41ea9fff
      Thomas Haller authored
      Fixes: 337304f1
      41ea9fff
    • Thomas Haller's avatar
      libnm: fix duplicate free in nm_client_checkpoint_rollback() · 25a3825b
      Thomas Haller authored
          #0  0x00007fffea7481e5 in _g_log_abort (breakpoint=1) at gmessages.c:554
          #1  0x00007fffea74951d in g_logv (log_domain=0x7fffea78e00e "GLib", log_level=G_LOG_LEVEL_CRITICAL, format=<optimized out>, args=args@entry=0x7fffffffcbb0)
              at gmessages.c:1371
          #2  0x00007fffea7496f3 in g_log
              (log_domain=log_domain@entry=0x7fffea78e00e "GLib", log_level=log_level@entry=G_LOG_LEVEL_CRITICAL, format=format@entry=0x7fffea798320 "%s: assertion '%s' failed")
              at gmessages.c:1413
          #3  0x00007fffea749f2d in g_return_if_fail_warning
              (log_domain=log_domain@entry=0x7fffea78e00e "GLib", pretty_function=pretty_function@entry=0x7fffea799d40 <__func__.4759> "g_atomic_ref_count_dec", expression=expression@entry=0x7fffea799ca1 "g_atomic_int_get (arc) > 0") at gmessages.c:2762
          #4  0x00007fffea754c12 in g_atomic_ref_count_dec (arc=arc@entry=0x5555558c5280) at grefcount.c:260
          #5  0x00007fffea7302c6 in g_hash_table_unref (hash_table=0x5555558c5240) at ghash.c:1101
          #6  0x00007fffea4b6dbc in clear_op_res (simple=0x55555587ed90 [GSimpleAsyncResult]) at gsimpleasyncresult.c:248
          #7  0x00007fffea4b6dbc in g_simple_async_result_finalize (object=0x55555587ed90 [GSimpleAsyncResult]) at gsimpleasyncresult.c:268
          #8  0x00007fffea67b949 in g_object_unref (_object=<optimized out>) at gobject.c:3346
          #9  0x00007fffea67b949 in g_object_unref (_object=0x55555587ed90) at gobject.c:3238
          #10 0x00007fffe95dea2d in checkpoint_rollback_cb (object=<optimized out>, result=<optimized out>, user_data=0x55555587ed90) at libnm/nm-manager.c:1584
          #11 0x00007fffea4ca834 in g_task_return_now (task=0x5555558b5c80 [GTask]) at gtask.c:1148
          #12 0x00007fffea4cb196 in g_task_return (task=0x5555558b5c80 [GTask], type=<optimized out>) at gtask.c:1206
          #13 0x00007fffea5096bb in reply_cb (connection=<optimized out>, res=<optimized out>, user_data=0x5555558b5c80) at gdbusproxy.c:2596
          #14 0x00007fffea4ca834 in g_task_return_now (task=0x5555558b5d50 [GTask]) at gtask.c:1148
          #15 0x00007fffea4cb196 in g_task_return (task=0x5555558b5d50 [GTask], type=<optimized out>) at gtask.c:1206
          #16 0x00007fffea4fdd4a in g_dbus_connection_call_done (source=<optimized out>, result=0x5555558b5e20, user_data=0x5555558b5d50) at gdbusconnection.c:5715
          #17 0x00007fffea4ca834 in g_task_return_now (task=0x5555558b5e20 [GTask]) at gtask.c:1148
          #18 0x00007fffea4ca86d in complete_in_idle_cb (task=task@entry=0x5555558b5e20) at gtask.c:1162
          #19 0x00007fffea73e97b in g_idle_dispatch (source=0x7fffdc04eb90, callback=0x7fffea4ca860 <complete_in_idle_cb>, user_data=0x5555558b5e20) at gmain.c:5620
          #20 0x00007fffea74206d in g_main_dispatch (context=0x5555557c8410) at gmain.c:3182
          #21 0x00007fffea74206d in g_main_context_dispatch (context=context@entry=0x5555557c8410) at gmain.c:3847
          #22 0x00007fffea742438 in g_main_context_iterate (context=0x5555557c8410, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3920
          #23 0x00007fffea742762 in g_main_loop_run (loop=0x55555584ed00) at gmain.c:4116
      
      Fixes: c3efedf5
      25a3825b
  9. 12 Feb, 2019 2 commits
  10. 06 Feb, 2019 3 commits
    • Thomas Haller's avatar
      build/meson: add dependency of libnm to libnm-core · db980702
      Thomas Haller authored
      We need to build libnm-core first. Especially, because libnm
      sources require the "libnm-core/nm-core-enum-types.h" header
      to be generated first.
      
      Add a missing dependency.
      db980702
    • Thomas Haller's avatar
      build/meson: cleanup of libnm/meson.build · 052734a8
      Thomas Haller authored
      "libnm/fake-typelib/meson.build" modifies the variable "sources",
      which is defined by the outer "libnm/meson.build" file.
      
      That is confusing. If a variable is not only used within one "meson.build"
      file alone, it should have a unique name. Rename the variable to
      "libnm_utils_sources".
      
      Also avoid local variable "deps" which is only used at one place.
      052734a8
    • Thomas Haller's avatar
      all: don't use "static inline" in source files · d25ed082
      Thomas Haller authored
      For static functions inside a module, the compiler determines on its own
      whether to inline the function.
      
      Also, "inline" was used at some places that don't immediatly look like
      candidates for inlining. It was most likely a copy&paste error.
      d25ed082
  11. 05 Feb, 2019 10 commits
  12. 01 Feb, 2019 5 commits
    • Thomas Haller's avatar
      wifi-p2p: rename Wi-Fi P2P · 09090f26
      Thomas Haller authored
      After renaming the files, also rename all the content
      to follow the "Wi-Fi P2P" naming scheme.
      09090f26
    • Thomas Haller's avatar
      wifi-p2p: rename files for consistent Wi-Fi P2P naming · 0420fa1f
      Thomas Haller authored
      We named the types inconsistently:
      
        - "p2p-wireless" ("libnm-core/nm-setting-p2p-wireless.h")
      
        - "p2p" ("libnm/nm-p2p-peer.h")
      
        - "p2p-wifi" ("src/devices/wifi/nm-device-p2p-wifi.h")
      
      It seems to me, "libnm/nm-p2p-peer.h" should be qualified with a "Wi-Fi"
      specific name. It's not just peer-to-peer, it's Wi-Fi P2P.
      Yes, there is an inconsistency now, because there is already
      "libnm/nm-access-point.h".
      
      It seems to me (from looking at the internet), that the name "Wi-Fi P2P"
      is more common than "P2P Wi-Fi" -- although both are used. There is also
      the name "Wi-Fi Direct". But it's not clear which name should be
      preferred here, so stick to "Wi-Fi P2P".
      
      In this first commit only rename the files. The following commit will
      rename the content.
      0420fa1f
    • Thomas Haller's avatar
      libnm/device-p2p-wifi: drop API that still needs consideration · 6e45cd90
      Thomas Haller authored
      Having synchronous API is wrong, or at least questionable.
      Granted, libnm isn't currently very good about the exact order
      of things to happen. However synchronous API by design delays events
      while waiting for the response and hence messes up the ordering.
      
      Maybe synchronous API should not be added to libnm.
      
      Or at least, if we have synchronous API, we certainly need an asynchrnous
      variant as well (which is still missing).
      
      As synchronous API is not preferred, it should also be named
      nm_some_thing_sync(), accompanied by nm_some_thing() and
      nm_some_thing_finish(). The name for the synchronous method should be the
      odd one and we shouldn't have an nm_some_thing_async(). Yes, libnm is not
      consistend about that.
      
      I am going to drop this API for the moment.
      6e45cd90
    • Thomas Haller's avatar
      libnm/device-p2p-wifi: drop unused code · 4f8852b2
      Thomas Haller authored
      If this is going to be implemented, revert the patch.
      4f8852b2
    • Thomas Haller's avatar
      libnm: various cleanup of NMP2PPeer and NMDeviceP2PWifi · c6c41eb1
      Thomas Haller authored
      - fix leaking hw_address in finalize().
      
      - reorder code.
      
      - avoid double tabs in GObject property definitions.
      
      - hide struct definitions from header.
      
      - don't use signal slots in class structure.
      
      - use NM_GOBJECT_PROPERTIES_DEFINE_BASE().
      
      - add missing NM_AVAILABLE_IN_1_16 annotations.
      c6c41eb1