Skip to content
  • Thomas Haller's avatar
    libnm: add nm_remote_connection_update2() · d00eb95c
    Thomas Haller authored
    - only add an async version. I think sync requests are fundamentally flawed
      because they mess up the order of D-Bus messages. Hence, also don't
      call the function *_async(), like we do for other functions. As there
      is only the async form, it doesn't have a suffix.
    
    - Don't accept a NMConnection as @settings argument, but a GVariant.
      In general, keep the libnm API closer to the D-Bus API and don't hide
      the underlying function with a less powerful form. The user still can
      conveniently call the function with
    
        nm_remote_connection_update2 (connection,
                                      nm_connection_to_dbus (NM_CONNECTION (connection),
                                                             NM_CONNECTION_SERIALIZE_ALL),
                                      save_to_disk
                                        ? NM_SETTINGS_UPDATE2_FLAG_TO_DISK
                                        : NM_SETTINGS_UPDATE2_FLAG_IN_MEMORY,
                                      NULL,
                                      cancellable,
                                      callback,
                                      user_data);
    
      I believe the parts of libnm that invoke D-Bus methods, should be
      close to the D-Bus API. Not like nm_remote_connection_commit_changes()
      which has no corresponding D-Bus method.
    d00eb95c