Sdbus-C++ upgrade.

This commit is contained in:
Robin E. R. Davies
2025-08-16 16:29:31 -04:00
parent 8f96ae70c6
commit 088bbe868a
62 changed files with 4316 additions and 328 deletions
+18 -3
View File
@@ -5,7 +5,7 @@ project(pipedal
HOMEPAGE_URL "https://rerdavies.github.io/pipedal"
)
EXECUTE_PROCESS( COMMAND dpkg --print-architecture COMMAND tr -d '\n' OUTPUT_VARIABLE DEBIAN_ARCHITECTURE )
execute_process( COMMAND dpkg --print-architecture COMMAND tr -d '\n' OUTPUT_VARIABLE DEBIAN_ARCHITECTURE )
set (DISPLAY_VERSION "PiPedal v1.4.87-Experimental")
set (PACKAGE_ARCHITECTURE ${DEBIAN_ARCHITECTURE})
@@ -18,6 +18,16 @@ enable_testing()
#add_subdirectory("submodules/pipedal_p2pd")
add_subdirectory("modules/SQLiteCpp")
set(SDBUSCPP_BUILD_CODEGEN on)
set(SDBUSCPP_INSTALL off)
set(SDBUSCPP_BUILD_DOCS off)
set(SDBUSCPP_BUILD_DOXYGEN_DOCS off)
set(SDBUSCPP_BUILD_TESTS off)
#set(BUILD_SHARED_LIBS on)
add_subdirectory("modules/sdbus-cpp")
add_subdirectory("PiPedalCommon")
add_subdirectory("vite")
@@ -96,7 +106,10 @@ set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "IoT guitar effect pedal for Raspberry Pi"
set(CPACK_DEBIAN_PACKAGE_SECTION sound)
set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS ON)
set(CPACK_DEBIAN_PACKAGE_CONTROL_STRICT_PERMISSION TRUE)
set(CPACK_DEBIAN_PACKAGE_DEPENDS "libicu-dev ,lv2-dev, ffmpeg, authbind, curl, gpg, alsa-base| pipewire, alsa-utils" )
# Accept either libzip4 or libzip5 to satisfy libzip 4 linkage (because Ubuntu nonsense)
set(CPACK_DEBIAN_PACKAGE_DEPENDS "libicu-dev ,lv2-dev, ffmpeg, authbind, curl, gpg, alsa-base| pipewire, alsa-utils")
set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE ${DEBIAN_ARCHITECTURE})
set(CPACK_PACKAGING_INSTALL_PREFIX /usr)
set(CPACK_PROJECT_NAME ${PROJECT_NAME})
@@ -111,7 +124,9 @@ endif()
set(CPACK_DEBIAN_PACKAGE_SIGN_ALGORITHM "detached")
set(CPACK_DEBIAN_PACKAGE_SIGN_TYPE "origin")
set(CPACK_DEBIAN_PACKAGE_CONTROL_EXTRA "${CMAKE_CURRENT_SOURCE_DIR}/debian/postinst;${CMAKE_CURRENT_SOURCE_DIR}/debian/prerm")
set(CPACK_DEBIAN_PACKAGE_CONTROL_EXTRA
"${CMAKE_CURRENT_SOURCE_DIR}/debian/shlibs.override;${CMAKE_CURRENT_SOURCE_DIR}/debian/postinst;${CMAKE_CURRENT_SOURCE_DIR}/debian/prerm;${CMAKE_CURRENT_SOURCE_DIR}/debian/shlibs.local"
)
include(CPack)
+14 -3
View File
@@ -2,7 +2,7 @@ Original content in this project is covered under the following license.
MIT License
© 2021-2024 Robin E. R. Davies
© Robin E. R. Davies
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the "Software"),
@@ -25,10 +25,21 @@ THE SOFTWARE.
---
PiPedal also makes use of a wide variety of open-source source-code, data,
and directly- or indirectly-linked libraries that are covered under the following licenses.
and directly- or indirectly-linked libraries that are covered under the following
licenses.
Portions of PiPedal are covered by the folling well-known open-source licenses:
MIT, MIT-like, BSD variants, Mozilla, LGPL, Apache 2.0, CC BY. SIL
as well as a variety of other licenses. None of these licenses are GPL. And none
of these licenses restrict commercial use. However some of them are restrictive,
and are not compatible with GPL licenses. You should NOT combine PiPedal with
GPL-licensed code unless you have taken appropriate steps to remove
source-code, data or dependencies that PiPedal uses which are not
compatible with a GPL license.
---
<p>PiPedal uses open-source software covered by the following copyright notices and licenses.</p>
</div>
<div class='fossCopyrights'>
© 1995-2017 Jean-loup Gailly <br/>
+22
View File
@@ -0,0 +1,22 @@
#!/usr/bin/bash
# Build NetworkManager dbus proxies.
# This script generates the necessary code for the D-Bus proxies used by the NetworkManager.
# It is not performed as part of the build, since this is an infrequently performed operation
# that uses tools built as part of the libsdbus-c++ library.
# Relative path to XML2CPP tool from sdbus-cpp module.
# Assumes at least a partial build.
XML2CPP=../build/modules/sdbus-cpp/tools/sdbus-c++-xml2cpp
set -e
SOURCE_DIR=./src/include/dbus/xml
DEST_DIR=./src/include/dbus
for file in $DEST_DIR/*.hpp; do
if [ -f "$file" ]; then
filename=$(basename "$file" .hpp)
echo $XML2CPP $SOURCE_DIR/${filename}.xml --proxy="$DEST_DIR/${filename}.hpp"
$XML2CPP $SOURCE_DIR/${filename}.xml --proxy="$DEST_DIR/${filename}.hpp"
fi
done
+4 -3
View File
@@ -3,9 +3,9 @@ cmake_minimum_required(VERSION 3.19.0)
# specify the C++ standard
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED True)# apt get lbsdbus-c++-dev
set(CMAKE_CXX_STANDARD_REQUIRED True)
find_package(sdbus-c++ REQUIRED)
include(FindPkgConfig)
@@ -97,7 +97,8 @@ add_library(PiPedalCommon STATIC
ss.hpp
)
target_include_directories(PiPedalCommon PUBLIC "include" ${LIBNL3_INCLUDE_DIRS})
target_link_libraries(PiPedalCommon PUBLIC ${LIBNL3_LIBRARIES} SDBusCpp::sdbus-c++ )
target_link_libraries(PiPedalCommon PUBLIC ${LIBNL3_LIBRARIES} sdbus-c++-objlib
)
+1 -1
View File
@@ -102,7 +102,7 @@ void DBusDispatcher::ThreadProc()
idle = true;
quitting = false;
while (busConnection->processPendingRequest())
while (busConnection->processPendingEvent())
{
idle = false;
}
+2 -2
View File
@@ -38,11 +38,11 @@ std::ostream&operator<<(std::ostream&s, const sdbus::Variant&v)
{
s << '[';
bool first = true;
for (const sdbus::ObjectPath&value: values)
for (const sdbus::Variant&value: values)
{
if (!first) s << ", ";
first = false;
s << value.c_str();
s << value;
}
s << ']';
+10 -10
View File
@@ -188,8 +188,8 @@ namespace pipedal::priv
Device(const std::string &path)
: m_proxy(sdbus::createProxy(
sdbus::createSystemBusConnection(),
"org.freedesktop.NetworkManager",
path))
sdbus::ServiceName("org.freedesktop.NetworkManager"),
sdbus::ObjectPath(path)))
{
}
@@ -217,12 +217,12 @@ namespace pipedal::priv
NetworkManager()
: m_proxy(sdbus::createProxy(
sdbus::createSystemBusConnection(),
"org.freedesktop.NetworkManager",
"/org/freedesktop/NetworkManager")),
sdbus::ServiceName("org.freedesktop.NetworkManager"),
sdbus::ObjectPath("/org/freedesktop/NetworkManager"))),
m_settings_proxy(sdbus::createProxy(
sdbus::createSystemBusConnection(),
"org.freedesktop.NetworkManager",
"/org/freedesktop/NetworkManager/Settings"))
sdbus::ServiceName("org.freedesktop.NetworkManager"),
sdbus::ObjectPath("/org/freedesktop/NetworkManager/Settings")))
{
}
@@ -329,8 +329,8 @@ namespace pipedal::priv
{
auto connection_proxy = sdbus::createProxy(
m_proxy->getConnection(),
"org.freedesktop.NetworkManager",
connection);
sdbus::ServiceName("org.freedesktop.NetworkManager"),
sdbus::ObjectPath(connection));
connection_proxy->callMethod("Delete")
.onInterface("org.freedesktop.NetworkManager.Settings.Connection");
}
@@ -347,7 +347,7 @@ namespace pipedal::priv
{
auto conn_proxy = sdbus::createProxy(
m_proxy->getConnection(),
"org.freedesktop.NetworkManager",
sdbus::ServiceName("org.freedesktop.NetworkManager"),
conn);
sdbus::ObjectPath conn_device;
@@ -374,7 +374,7 @@ namespace pipedal::priv
for (const auto &conn_path : connections)
{
auto conn_proxy = sdbus::createProxy(sdbus::createSystemBusConnection(),
"org.freedesktop.NetworkManager",
sdbus::ServiceName("org.freedesktop.NetworkManager"),
conn_path);
sdbus::Variant settings_variant;
@@ -30,8 +30,9 @@ public:
NetworkManager(DBusDispatcher &dispatcher)
: sdbus::ProxyInterfaces<org::freedesktop::NetworkManager_proxy>(
dispatcher.Connection(),
INTERFACE_NAME,
"/org/freedesktop/NetworkManager")
sdbus::ServiceName(INTERFACE_NAME),
sdbus::ObjectPath("/org/freedesktop/NetworkManager")),
objectPath_("/org/freedesktop/NetworkManager")
{
registerProxy();
}
@@ -46,7 +47,11 @@ public:
DBusEvent<const sdbus::ObjectPath &> OnDeviceAdded;
DBusEvent<const sdbus::ObjectPath &> OnDeviceRemoved;
const sdbus::ObjectPath& getObjectPath() const{ return objectPath_; }
private:
sdbus::ObjectPath objectPath_;
void EventTrace(const char *method, const std::string &message)
{
LogTrace(getObjectPath(), method, message);
@@ -79,8 +84,9 @@ public:
Device(DBusDispatcher &dispatcher, const sdbus::ObjectPath &path)
: sdbus::ProxyInterfaces<org::freedesktop::NetworkManager::Device_proxy>(
dispatcher.Connection(),
"org.freedesktop.NetworkManager",
path)
sdbus::ServiceName("org.freedesktop.NetworkManager"),
path),
objectPath_(path)
{
registerProxy();
}
@@ -103,7 +109,10 @@ public:
return this->DeviceType() == NM_DEVICE_TYPE_WIFI_P2P;
}
const sdbus::ObjectPath&getObjectPath() const { return objectPath_; }
private:
sdbus::ObjectPath objectPath_;
void EventTrace(const char *method, const std::string &message)
{
LogTrace(getObjectPath(), method, message);
@@ -124,8 +133,12 @@ public:
using base = sdbus::ProxyInterfaces<
org::freedesktop::NetworkManager::Device::WifiP2P_proxy>;
WifiP2P(DBusDispatcher &dispatcher, const std::string &objectPath)
: base(dispatcher.Connection(), "org.freedesktop.NetworkManager", objectPath)
WifiP2P(DBusDispatcher &dispatcher, const sdbus::ObjectPath&objectPath)
: base(dispatcher.Connection(),
sdbus::ServiceName("org.freedesktop.NetworkManager"),
objectPath),
objectPath_(objectPath)
{
registerProxy();
}
@@ -135,13 +148,16 @@ public:
}
static ptr Create(DBusDispatcher &dispatcher, const std::string &objectPath)
{
return std::make_unique<WifiP2P>(dispatcher, objectPath);
return std::make_unique<WifiP2P>(dispatcher, sdbus::ObjectPath(objectPath));
}
DBusEvent<const sdbus::ObjectPath &> OnPeerAdded;
DBusEvent<const sdbus::ObjectPath &> OnPeerRemoved;
DBusEvent<uint32_t> OnStateChanged;
const sdbus::ObjectPath&getObjectPath() const { return objectPath_; }
private:
sdbus::ObjectPath objectPath_;
void EventTrace(const char *method, const std::string &message)
{
LogTrace(getObjectPath(), method, message);
@@ -173,7 +189,10 @@ public:
Connection(DBusDispatcher &dispatcher, const sdbus::ObjectPath &objectPath)
: sdbus::ProxyInterfaces<org::freedesktop::NetworkManager::Settings::Connection_proxy>(
dispatcher.Connection(), "org.freedesktop.NetworkManager", objectPath)
dispatcher.Connection(),
sdbus::ServiceName("org.freedesktop.NetworkManager"),
objectPath),
objectPath_(objectPath)
{
registerProxy();
}
@@ -190,7 +209,10 @@ public:
DBusEvent<> OnUpdated;
DBusEvent<> OnRemoved;
const sdbus::ObjectPath&getObjectPath() const { return objectPath_; }
private:
sdbus::ObjectPath objectPath_;
virtual void onUpdated() override
{
OnUpdated.fire();
@@ -208,7 +230,7 @@ public:
WifiP2PPeer(DBusDispatcher &dispatcher, const sdbus::ObjectPath &objectPath)
: sdbus::ProxyInterfaces<org::freedesktop::NetworkManager::WifiP2PPeer_proxy>(
dispatcher.Connection(), "org.freedesktop.NetworkManager", objectPath)
dispatcher.Connection(), sdbus::ServiceName("org.freedesktop.NetworkManager"), objectPath)
{
registerProxy();
}
@@ -243,8 +265,9 @@ public:
DeviceWireless(DBusDispatcher &dispatcher, const sdbus::ObjectPath &path)
: sdbus::ProxyInterfaces<proxy_t>(
dispatcher.Connection(),
"org.freedesktop.NetworkManager",
path)
sdbus::ServiceName("org.freedesktop.NetworkManager"),
path),
objectPath_(path)
{
registerProxy();
}
@@ -259,7 +282,11 @@ public:
}
DBusEvent<const sdbus::ObjectPath&> OnAccessPointAdded;
DBusEvent<const sdbus::ObjectPath&> OnAccessPointRemoved;
const sdbus::ObjectPath& getObjectPath() const{ return objectPath_; }
protected:
sdbus::ObjectPath objectPath_;
void EventTrace(const char *method, const std::string &message)
{
LogTrace(getObjectPath(), method, message);
@@ -288,8 +315,9 @@ public:
AccessPoint(DBusDispatcher &dispatcher, const sdbus::ObjectPath &path)
: sdbus::ProxyInterfaces<proxy_t>(
dispatcher.Connection(),
"org.freedesktop.NetworkManager",
path)
sdbus::ServiceName("org.freedesktop.NetworkManager"),
path),
objectPath_(path)
{
registerProxy();
}
@@ -302,7 +330,10 @@ public:
{
return std::make_unique<self>(dispatcher, path);
}
const sdbus::ObjectPath& getObjectPath() const{ return objectPath_; }
protected:
sdbus::ObjectPath objectPath_;
void EventTrace(const char *method, const std::string &message)
{
LogTrace(getObjectPath(), method, message);
@@ -318,8 +349,9 @@ public:
ActiveConnection(DBusDispatcher &dispatcher, const sdbus::ObjectPath &path)
: sdbus::ProxyInterfaces<proxy_t>(
dispatcher.Connection(),
"org.freedesktop.NetworkManager",
path)
sdbus::ServiceName("org.freedesktop.NetworkManager"),
path),
objectPath_(path)
{
registerProxy();
}
@@ -333,7 +365,11 @@ public:
return std::make_unique<self>(dispatcher, path);
}
DBusEvent<uint32_t,uint32_t> OnStateChanged;
const sdbus::ObjectPath& getObjectPath() const{ return objectPath_; }
protected:
sdbus::ObjectPath objectPath_;
void EventTrace(const char *method, const std::string &message)
{
LogTrace(getObjectPath(), method, message);
@@ -3,8 +3,8 @@
* This file was automatically generated by sdbus-c++-xml2cpp; DO NOT EDIT!
*/
#ifndef __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_AccessPoint_hpp__proxy__H__
#define __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_AccessPoint_hpp__proxy__H__
#ifndef __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_AccessPoint_hpp__proxy__H__
#define __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_AccessPoint_hpp__proxy__H__
#include <sdbus-c++/sdbus-c++.h>
#include <string>
@@ -21,65 +21,74 @@ public:
protected:
AccessPoint_proxy(sdbus::IProxy& proxy)
: proxy_(proxy)
: m_proxy(proxy)
{
}
AccessPoint_proxy(const AccessPoint_proxy&) = delete;
AccessPoint_proxy& operator=(const AccessPoint_proxy&) = delete;
AccessPoint_proxy(AccessPoint_proxy&&) = delete;
AccessPoint_proxy& operator=(AccessPoint_proxy&&) = delete;
~AccessPoint_proxy() = default;
void registerProxy()
{
}
public:
uint32_t Flags()
{
return proxy_.getProperty("Flags").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Flags").onInterface(INTERFACE_NAME).get<uint32_t>();
}
uint32_t WpaFlags()
{
return proxy_.getProperty("WpaFlags").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("WpaFlags").onInterface(INTERFACE_NAME).get<uint32_t>();
}
uint32_t RsnFlags()
{
return proxy_.getProperty("RsnFlags").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("RsnFlags").onInterface(INTERFACE_NAME).get<uint32_t>();
}
std::vector<uint8_t> Ssid()
{
return proxy_.getProperty("Ssid").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Ssid").onInterface(INTERFACE_NAME).get<std::vector<uint8_t>>();
}
uint32_t Frequency()
{
return proxy_.getProperty("Frequency").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Frequency").onInterface(INTERFACE_NAME).get<uint32_t>();
}
std::string HwAddress()
{
return proxy_.getProperty("HwAddress").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("HwAddress").onInterface(INTERFACE_NAME).get<std::string>();
}
uint32_t Mode()
{
return proxy_.getProperty("Mode").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Mode").onInterface(INTERFACE_NAME).get<uint32_t>();
}
uint32_t MaxBitrate()
{
return proxy_.getProperty("MaxBitrate").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("MaxBitrate").onInterface(INTERFACE_NAME).get<uint32_t>();
}
uint8_t Strength()
{
return proxy_.getProperty("Strength").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Strength").onInterface(INTERFACE_NAME).get<uint8_t>();
}
int32_t LastSeen()
{
return proxy_.getProperty("LastSeen").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("LastSeen").onInterface(INTERFACE_NAME).get<int32_t>();
}
private:
sdbus::IProxy& proxy_;
sdbus::IProxy& m_proxy;
};
}}} // namespaces
@@ -3,8 +3,8 @@
* This file was automatically generated by sdbus-c++-xml2cpp; DO NOT EDIT!
*/
#ifndef __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_Connection_Active_hpp__proxy__H__
#define __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_Connection_Active_hpp__proxy__H__
#ifndef __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_Connection_Active_hpp__proxy__H__
#define __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_Connection_Active_hpp__proxy__H__
#include <sdbus-c++/sdbus-c++.h>
#include <string>
@@ -22,103 +22,112 @@ public:
protected:
Active_proxy(sdbus::IProxy& proxy)
: proxy_(proxy)
: m_proxy(proxy)
{
proxy_.uponSignal("StateChanged").onInterface(INTERFACE_NAME).call([this](const uint32_t& state, const uint32_t& reason){ this->onStateChanged(state, reason); });
}
Active_proxy(const Active_proxy&) = delete;
Active_proxy& operator=(const Active_proxy&) = delete;
Active_proxy(Active_proxy&&) = delete;
Active_proxy& operator=(Active_proxy&&) = delete;
~Active_proxy() = default;
void registerProxy()
{
m_proxy.uponSignal("StateChanged").onInterface(INTERFACE_NAME).call([this](const uint32_t& state, const uint32_t& reason){ this->onStateChanged(state, reason); });
}
virtual void onStateChanged(const uint32_t& state, const uint32_t& reason) = 0;
public:
sdbus::ObjectPath Connection()
{
return proxy_.getProperty("Connection").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Connection").onInterface(INTERFACE_NAME).get<sdbus::ObjectPath>();
}
sdbus::ObjectPath SpecificObject()
{
return proxy_.getProperty("SpecificObject").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("SpecificObject").onInterface(INTERFACE_NAME).get<sdbus::ObjectPath>();
}
std::string Id()
{
return proxy_.getProperty("Id").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Id").onInterface(INTERFACE_NAME).get<std::string>();
}
std::string Uuid()
{
return proxy_.getProperty("Uuid").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Uuid").onInterface(INTERFACE_NAME).get<std::string>();
}
std::string Type()
{
return proxy_.getProperty("Type").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Type").onInterface(INTERFACE_NAME).get<std::string>();
}
std::vector<sdbus::ObjectPath> Devices()
{
return proxy_.getProperty("Devices").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Devices").onInterface(INTERFACE_NAME).get<std::vector<sdbus::ObjectPath>>();
}
uint32_t State()
{
return proxy_.getProperty("State").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("State").onInterface(INTERFACE_NAME).get<uint32_t>();
}
uint32_t StateFlags()
{
return proxy_.getProperty("StateFlags").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("StateFlags").onInterface(INTERFACE_NAME).get<uint32_t>();
}
bool Default()
{
return proxy_.getProperty("Default").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Default").onInterface(INTERFACE_NAME).get<bool>();
}
sdbus::ObjectPath Ip4Config()
{
return proxy_.getProperty("Ip4Config").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Ip4Config").onInterface(INTERFACE_NAME).get<sdbus::ObjectPath>();
}
sdbus::ObjectPath Dhcp4Config()
{
return proxy_.getProperty("Dhcp4Config").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Dhcp4Config").onInterface(INTERFACE_NAME).get<sdbus::ObjectPath>();
}
bool Default6()
{
return proxy_.getProperty("Default6").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Default6").onInterface(INTERFACE_NAME).get<bool>();
}
sdbus::ObjectPath Ip6Config()
{
return proxy_.getProperty("Ip6Config").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Ip6Config").onInterface(INTERFACE_NAME).get<sdbus::ObjectPath>();
}
sdbus::ObjectPath Dhcp6Config()
{
return proxy_.getProperty("Dhcp6Config").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Dhcp6Config").onInterface(INTERFACE_NAME).get<sdbus::ObjectPath>();
}
bool Vpn()
{
return proxy_.getProperty("Vpn").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Vpn").onInterface(INTERFACE_NAME).get<bool>();
}
sdbus::ObjectPath Controller()
{
return proxy_.getProperty("Controller").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Controller").onInterface(INTERFACE_NAME).get<sdbus::ObjectPath>();
}
sdbus::ObjectPath Master()
{
return proxy_.getProperty("Master").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Master").onInterface(INTERFACE_NAME).get<sdbus::ObjectPath>();
}
private:
sdbus::IProxy& proxy_;
sdbus::IProxy& m_proxy;
};
}}}} // namespaces
@@ -3,8 +3,8 @@
* This file was automatically generated by sdbus-c++-xml2cpp; DO NOT EDIT!
*/
#ifndef __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_DHCP4Config_hpp__proxy__H__
#define __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_DHCP4Config_hpp__proxy__H__
#ifndef __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_DHCP4Config_hpp__proxy__H__
#define __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_DHCP4Config_hpp__proxy__H__
#include <sdbus-c++/sdbus-c++.h>
#include <string>
@@ -21,20 +21,29 @@ public:
protected:
DHCP4Config_proxy(sdbus::IProxy& proxy)
: proxy_(proxy)
: m_proxy(proxy)
{
}
DHCP4Config_proxy(const DHCP4Config_proxy&) = delete;
DHCP4Config_proxy& operator=(const DHCP4Config_proxy&) = delete;
DHCP4Config_proxy(DHCP4Config_proxy&&) = delete;
DHCP4Config_proxy& operator=(DHCP4Config_proxy&&) = delete;
~DHCP4Config_proxy() = default;
void registerProxy()
{
}
public:
std::map<std::string, sdbus::Variant> Options()
{
return proxy_.getProperty("Options").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Options").onInterface(INTERFACE_NAME).get<std::map<std::string, sdbus::Variant>>();
}
private:
sdbus::IProxy& proxy_;
sdbus::IProxy& m_proxy;
};
}}} // namespaces
@@ -3,8 +3,8 @@
* This file was automatically generated by sdbus-c++-xml2cpp; DO NOT EDIT!
*/
#ifndef __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_DHCP6Config_hpp__proxy__H__
#define __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_DHCP6Config_hpp__proxy__H__
#ifndef __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_DHCP6Config_hpp__proxy__H__
#define __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_DHCP6Config_hpp__proxy__H__
#include <sdbus-c++/sdbus-c++.h>
#include <string>
@@ -21,20 +21,29 @@ public:
protected:
DHCP6Config_proxy(sdbus::IProxy& proxy)
: proxy_(proxy)
: m_proxy(proxy)
{
}
DHCP6Config_proxy(const DHCP6Config_proxy&) = delete;
DHCP6Config_proxy& operator=(const DHCP6Config_proxy&) = delete;
DHCP6Config_proxy(DHCP6Config_proxy&&) = delete;
DHCP6Config_proxy& operator=(DHCP6Config_proxy&&) = delete;
~DHCP6Config_proxy() = default;
void registerProxy()
{
}
public:
std::map<std::string, sdbus::Variant> Options()
{
return proxy_.getProperty("Options").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Options").onInterface(INTERFACE_NAME).get<std::map<std::string, sdbus::Variant>>();
}
private:
sdbus::IProxy& proxy_;
sdbus::IProxy& m_proxy;
};
}}} // namespaces
@@ -3,8 +3,8 @@
* This file was automatically generated by sdbus-c++-xml2cpp; DO NOT EDIT!
*/
#ifndef __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_Device_Statistics_hpp__proxy__H__
#define __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_Device_Statistics_hpp__proxy__H__
#ifndef __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_Device_Statistics_hpp__proxy__H__
#define __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_Device_Statistics_hpp__proxy__H__
#include <sdbus-c++/sdbus-c++.h>
#include <string>
@@ -22,35 +22,44 @@ public:
protected:
Statistics_proxy(sdbus::IProxy& proxy)
: proxy_(proxy)
: m_proxy(proxy)
{
}
Statistics_proxy(const Statistics_proxy&) = delete;
Statistics_proxy& operator=(const Statistics_proxy&) = delete;
Statistics_proxy(Statistics_proxy&&) = delete;
Statistics_proxy& operator=(Statistics_proxy&&) = delete;
~Statistics_proxy() = default;
void registerProxy()
{
}
public:
uint32_t RefreshRateMs()
{
return proxy_.getProperty("RefreshRateMs").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("RefreshRateMs").onInterface(INTERFACE_NAME).get<uint32_t>();
}
void RefreshRateMs(const uint32_t& value)
{
proxy_.setProperty("RefreshRateMs").onInterface(INTERFACE_NAME).toValue(value);
m_proxy.setProperty("RefreshRateMs").onInterface(INTERFACE_NAME).toValue(value);
}
uint64_t TxBytes()
{
return proxy_.getProperty("TxBytes").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("TxBytes").onInterface(INTERFACE_NAME).get<uint64_t>();
}
uint64_t RxBytes()
{
return proxy_.getProperty("RxBytes").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("RxBytes").onInterface(INTERFACE_NAME).get<uint64_t>();
}
private:
sdbus::IProxy& proxy_;
sdbus::IProxy& m_proxy;
};
}}}} // namespaces
@@ -3,8 +3,8 @@
* This file was automatically generated by sdbus-c++-xml2cpp; DO NOT EDIT!
*/
#ifndef __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_Device_WifiP2P_hpp__proxy__H__
#define __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_Device_WifiP2P_hpp__proxy__H__
#ifndef __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_Device_WifiP2P_hpp__proxy__H__
#define __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_Device_WifiP2P_hpp__proxy__H__
#include <sdbus-c++/sdbus-c++.h>
#include <string>
@@ -22,41 +22,50 @@ public:
protected:
WifiP2P_proxy(sdbus::IProxy& proxy)
: proxy_(proxy)
: m_proxy(proxy)
{
proxy_.uponSignal("PeerAdded").onInterface(INTERFACE_NAME).call([this](const sdbus::ObjectPath& peer){ this->onPeerAdded(peer); });
proxy_.uponSignal("PeerRemoved").onInterface(INTERFACE_NAME).call([this](const sdbus::ObjectPath& peer){ this->onPeerRemoved(peer); });
}
WifiP2P_proxy(const WifiP2P_proxy&) = delete;
WifiP2P_proxy& operator=(const WifiP2P_proxy&) = delete;
WifiP2P_proxy(WifiP2P_proxy&&) = delete;
WifiP2P_proxy& operator=(WifiP2P_proxy&&) = delete;
~WifiP2P_proxy() = default;
void registerProxy()
{
m_proxy.uponSignal("PeerAdded").onInterface(INTERFACE_NAME).call([this](const sdbus::ObjectPath& peer){ this->onPeerAdded(peer); });
m_proxy.uponSignal("PeerRemoved").onInterface(INTERFACE_NAME).call([this](const sdbus::ObjectPath& peer){ this->onPeerRemoved(peer); });
}
virtual void onPeerAdded(const sdbus::ObjectPath& peer) = 0;
virtual void onPeerRemoved(const sdbus::ObjectPath& peer) = 0;
public:
void StartFind(const std::map<std::string, sdbus::Variant>& options)
{
proxy_.callMethod("StartFind").onInterface(INTERFACE_NAME).withArguments(options);
m_proxy.callMethod("StartFind").onInterface(INTERFACE_NAME).withArguments(options);
}
void StopFind()
{
proxy_.callMethod("StopFind").onInterface(INTERFACE_NAME);
m_proxy.callMethod("StopFind").onInterface(INTERFACE_NAME);
}
public:
std::string HwAddress()
{
return proxy_.getProperty("HwAddress").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("HwAddress").onInterface(INTERFACE_NAME).get<std::string>();
}
std::vector<sdbus::ObjectPath> Peers()
{
return proxy_.getProperty("Peers").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Peers").onInterface(INTERFACE_NAME).get<std::vector<sdbus::ObjectPath>>();
}
private:
sdbus::IProxy& proxy_;
sdbus::IProxy& m_proxy;
};
}}}} // namespaces
@@ -3,8 +3,8 @@
* This file was automatically generated by sdbus-c++-xml2cpp; DO NOT EDIT!
*/
#ifndef __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_Device_Wireless_hpp__proxy__H__
#define __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_Device_Wireless_hpp__proxy__H__
#ifndef __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_Device_Wireless_hpp__proxy__H__
#define __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_Device_Wireless_hpp__proxy__H__
#include <sdbus-c++/sdbus-c++.h>
#include <string>
@@ -22,14 +22,23 @@ public:
protected:
Wireless_proxy(sdbus::IProxy& proxy)
: proxy_(proxy)
: m_proxy(proxy)
{
proxy_.uponSignal("AccessPointAdded").onInterface(INTERFACE_NAME).call([this](const sdbus::ObjectPath& access_point){ this->onAccessPointAdded(access_point); });
proxy_.uponSignal("AccessPointRemoved").onInterface(INTERFACE_NAME).call([this](const sdbus::ObjectPath& access_point){ this->onAccessPointRemoved(access_point); });
}
Wireless_proxy(const Wireless_proxy&) = delete;
Wireless_proxy& operator=(const Wireless_proxy&) = delete;
Wireless_proxy(Wireless_proxy&&) = delete;
Wireless_proxy& operator=(Wireless_proxy&&) = delete;
~Wireless_proxy() = default;
void registerProxy()
{
m_proxy.uponSignal("AccessPointAdded").onInterface(INTERFACE_NAME).call([this](const sdbus::ObjectPath& access_point){ this->onAccessPointAdded(access_point); });
m_proxy.uponSignal("AccessPointRemoved").onInterface(INTERFACE_NAME).call([this](const sdbus::ObjectPath& access_point){ this->onAccessPointRemoved(access_point); });
}
virtual void onAccessPointAdded(const sdbus::ObjectPath& access_point) = 0;
virtual void onAccessPointRemoved(const sdbus::ObjectPath& access_point) = 0;
@@ -37,65 +46,65 @@ public:
std::vector<sdbus::ObjectPath> GetAccessPoints()
{
std::vector<sdbus::ObjectPath> result;
proxy_.callMethod("GetAccessPoints").onInterface(INTERFACE_NAME).storeResultsTo(result);
m_proxy.callMethod("GetAccessPoints").onInterface(INTERFACE_NAME).storeResultsTo(result);
return result;
}
std::vector<sdbus::ObjectPath> GetAllAccessPoints()
{
std::vector<sdbus::ObjectPath> result;
proxy_.callMethod("GetAllAccessPoints").onInterface(INTERFACE_NAME).storeResultsTo(result);
m_proxy.callMethod("GetAllAccessPoints").onInterface(INTERFACE_NAME).storeResultsTo(result);
return result;
}
void RequestScan(const std::map<std::string, sdbus::Variant>& options)
{
proxy_.callMethod("RequestScan").onInterface(INTERFACE_NAME).withArguments(options);
m_proxy.callMethod("RequestScan").onInterface(INTERFACE_NAME).withArguments(options);
}
public:
std::string HwAddress()
{
return proxy_.getProperty("HwAddress").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("HwAddress").onInterface(INTERFACE_NAME).get<std::string>();
}
std::string PermHwAddress()
{
return proxy_.getProperty("PermHwAddress").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("PermHwAddress").onInterface(INTERFACE_NAME).get<std::string>();
}
uint32_t Mode()
{
return proxy_.getProperty("Mode").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Mode").onInterface(INTERFACE_NAME).get<uint32_t>();
}
uint32_t Bitrate()
{
return proxy_.getProperty("Bitrate").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Bitrate").onInterface(INTERFACE_NAME).get<uint32_t>();
}
std::vector<sdbus::ObjectPath> AccessPoints()
{
return proxy_.getProperty("AccessPoints").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("AccessPoints").onInterface(INTERFACE_NAME).get<std::vector<sdbus::ObjectPath>>();
}
sdbus::ObjectPath ActiveAccessPoint()
{
return proxy_.getProperty("ActiveAccessPoint").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("ActiveAccessPoint").onInterface(INTERFACE_NAME).get<sdbus::ObjectPath>();
}
uint32_t WirelessCapabilities()
{
return proxy_.getProperty("WirelessCapabilities").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("WirelessCapabilities").onInterface(INTERFACE_NAME).get<uint32_t>();
}
int64_t LastScan()
{
return proxy_.getProperty("LastScan").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("LastScan").onInterface(INTERFACE_NAME).get<int64_t>();
}
private:
sdbus::IProxy& proxy_;
sdbus::IProxy& m_proxy;
};
}}}} // namespaces
@@ -3,8 +3,8 @@
* This file was automatically generated by sdbus-c++-xml2cpp; DO NOT EDIT!
*/
#ifndef __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_Device_hpp__proxy__H__
#define __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_Device_hpp__proxy__H__
#ifndef __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_Device_hpp__proxy__H__
#define __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_Device_hpp__proxy__H__
#include <sdbus-c++/sdbus-c++.h>
#include <string>
@@ -21,211 +21,220 @@ public:
protected:
Device_proxy(sdbus::IProxy& proxy)
: proxy_(proxy)
: m_proxy(proxy)
{
proxy_.uponSignal("StateChanged").onInterface(INTERFACE_NAME).call([this](const uint32_t& new_state, const uint32_t& old_state, const uint32_t& reason){ this->onStateChanged(new_state, old_state, reason); });
}
Device_proxy(const Device_proxy&) = delete;
Device_proxy& operator=(const Device_proxy&) = delete;
Device_proxy(Device_proxy&&) = delete;
Device_proxy& operator=(Device_proxy&&) = delete;
~Device_proxy() = default;
void registerProxy()
{
m_proxy.uponSignal("StateChanged").onInterface(INTERFACE_NAME).call([this](const uint32_t& new_state, const uint32_t& old_state, const uint32_t& reason){ this->onStateChanged(new_state, old_state, reason); });
}
virtual void onStateChanged(const uint32_t& new_state, const uint32_t& old_state, const uint32_t& reason) = 0;
public:
void Reapply(const std::map<std::string, std::map<std::string, sdbus::Variant>>& connection, const uint64_t& version_id, const uint32_t& flags)
{
proxy_.callMethod("Reapply").onInterface(INTERFACE_NAME).withArguments(connection, version_id, flags);
m_proxy.callMethod("Reapply").onInterface(INTERFACE_NAME).withArguments(connection, version_id, flags);
}
std::tuple<std::map<std::string, std::map<std::string, sdbus::Variant>>, uint64_t> GetAppliedConnection(const uint32_t& flags)
{
std::tuple<std::map<std::string, std::map<std::string, sdbus::Variant>>, uint64_t> result;
proxy_.callMethod("GetAppliedConnection").onInterface(INTERFACE_NAME).withArguments(flags).storeResultsTo(result);
m_proxy.callMethod("GetAppliedConnection").onInterface(INTERFACE_NAME).withArguments(flags).storeResultsTo(result);
return result;
}
void Disconnect()
{
proxy_.callMethod("Disconnect").onInterface(INTERFACE_NAME);
m_proxy.callMethod("Disconnect").onInterface(INTERFACE_NAME);
}
void Delete()
{
proxy_.callMethod("Delete").onInterface(INTERFACE_NAME);
m_proxy.callMethod("Delete").onInterface(INTERFACE_NAME);
}
public:
std::string Udi()
{
return proxy_.getProperty("Udi").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Udi").onInterface(INTERFACE_NAME).get<std::string>();
}
std::string Path()
{
return proxy_.getProperty("Path").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Path").onInterface(INTERFACE_NAME).get<std::string>();
}
std::string Interface()
{
return proxy_.getProperty("Interface").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Interface").onInterface(INTERFACE_NAME).get<std::string>();
}
std::string IpInterface()
{
return proxy_.getProperty("IpInterface").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("IpInterface").onInterface(INTERFACE_NAME).get<std::string>();
}
std::string Driver()
{
return proxy_.getProperty("Driver").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Driver").onInterface(INTERFACE_NAME).get<std::string>();
}
std::string DriverVersion()
{
return proxy_.getProperty("DriverVersion").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("DriverVersion").onInterface(INTERFACE_NAME).get<std::string>();
}
std::string FirmwareVersion()
{
return proxy_.getProperty("FirmwareVersion").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("FirmwareVersion").onInterface(INTERFACE_NAME).get<std::string>();
}
uint32_t Capabilities()
{
return proxy_.getProperty("Capabilities").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Capabilities").onInterface(INTERFACE_NAME).get<uint32_t>();
}
uint32_t Ip4Address()
{
return proxy_.getProperty("Ip4Address").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Ip4Address").onInterface(INTERFACE_NAME).get<uint32_t>();
}
uint32_t State()
{
return proxy_.getProperty("State").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("State").onInterface(INTERFACE_NAME).get<uint32_t>();
}
sdbus::Struct<uint32_t, uint32_t> StateReason()
{
return proxy_.getProperty("StateReason").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("StateReason").onInterface(INTERFACE_NAME).get<sdbus::Struct<uint32_t, uint32_t>>();
}
sdbus::ObjectPath ActiveConnection()
{
return proxy_.getProperty("ActiveConnection").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("ActiveConnection").onInterface(INTERFACE_NAME).get<sdbus::ObjectPath>();
}
sdbus::ObjectPath Ip4Config()
{
return proxy_.getProperty("Ip4Config").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Ip4Config").onInterface(INTERFACE_NAME).get<sdbus::ObjectPath>();
}
sdbus::ObjectPath Dhcp4Config()
{
return proxy_.getProperty("Dhcp4Config").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Dhcp4Config").onInterface(INTERFACE_NAME).get<sdbus::ObjectPath>();
}
sdbus::ObjectPath Ip6Config()
{
return proxy_.getProperty("Ip6Config").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Ip6Config").onInterface(INTERFACE_NAME).get<sdbus::ObjectPath>();
}
sdbus::ObjectPath Dhcp6Config()
{
return proxy_.getProperty("Dhcp6Config").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Dhcp6Config").onInterface(INTERFACE_NAME).get<sdbus::ObjectPath>();
}
bool Managed()
{
return proxy_.getProperty("Managed").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Managed").onInterface(INTERFACE_NAME).get<bool>();
}
void Managed(const bool& value)
{
proxy_.setProperty("Managed").onInterface(INTERFACE_NAME).toValue(value);
m_proxy.setProperty("Managed").onInterface(INTERFACE_NAME).toValue(value);
}
bool Autoconnect()
{
return proxy_.getProperty("Autoconnect").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Autoconnect").onInterface(INTERFACE_NAME).get<bool>();
}
void Autoconnect(const bool& value)
{
proxy_.setProperty("Autoconnect").onInterface(INTERFACE_NAME).toValue(value);
m_proxy.setProperty("Autoconnect").onInterface(INTERFACE_NAME).toValue(value);
}
bool FirmwareMissing()
{
return proxy_.getProperty("FirmwareMissing").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("FirmwareMissing").onInterface(INTERFACE_NAME).get<bool>();
}
bool NmPluginMissing()
{
return proxy_.getProperty("NmPluginMissing").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("NmPluginMissing").onInterface(INTERFACE_NAME).get<bool>();
}
uint32_t DeviceType()
{
return proxy_.getProperty("DeviceType").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("DeviceType").onInterface(INTERFACE_NAME).get<uint32_t>();
}
std::vector<sdbus::ObjectPath> AvailableConnections()
{
return proxy_.getProperty("AvailableConnections").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("AvailableConnections").onInterface(INTERFACE_NAME).get<std::vector<sdbus::ObjectPath>>();
}
std::string PhysicalPortId()
{
return proxy_.getProperty("PhysicalPortId").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("PhysicalPortId").onInterface(INTERFACE_NAME).get<std::string>();
}
uint32_t Mtu()
{
return proxy_.getProperty("Mtu").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Mtu").onInterface(INTERFACE_NAME).get<uint32_t>();
}
uint32_t Metered()
{
return proxy_.getProperty("Metered").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Metered").onInterface(INTERFACE_NAME).get<uint32_t>();
}
std::vector<std::map<std::string, sdbus::Variant>> LldpNeighbors()
{
return proxy_.getProperty("LldpNeighbors").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("LldpNeighbors").onInterface(INTERFACE_NAME).get<std::vector<std::map<std::string, sdbus::Variant>>>();
}
bool Real()
{
return proxy_.getProperty("Real").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Real").onInterface(INTERFACE_NAME).get<bool>();
}
uint32_t Ip4Connectivity()
{
return proxy_.getProperty("Ip4Connectivity").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Ip4Connectivity").onInterface(INTERFACE_NAME).get<uint32_t>();
}
uint32_t Ip6Connectivity()
{
return proxy_.getProperty("Ip6Connectivity").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Ip6Connectivity").onInterface(INTERFACE_NAME).get<uint32_t>();
}
uint32_t InterfaceFlags()
{
return proxy_.getProperty("InterfaceFlags").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("InterfaceFlags").onInterface(INTERFACE_NAME).get<uint32_t>();
}
std::string HwAddress()
{
return proxy_.getProperty("HwAddress").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("HwAddress").onInterface(INTERFACE_NAME).get<std::string>();
}
std::vector<sdbus::ObjectPath> Ports()
{
return proxy_.getProperty("Ports").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Ports").onInterface(INTERFACE_NAME).get<std::vector<sdbus::ObjectPath>>();
}
private:
sdbus::IProxy& proxy_;
sdbus::IProxy& m_proxy;
};
}}} // namespaces
@@ -3,8 +3,8 @@
* This file was automatically generated by sdbus-c++-xml2cpp; DO NOT EDIT!
*/
#ifndef __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_DnsManager_hpp__proxy__H__
#define __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_DnsManager_hpp__proxy__H__
#ifndef __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_DnsManager_hpp__proxy__H__
#define __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_DnsManager_hpp__proxy__H__
#include <sdbus-c++/sdbus-c++.h>
#include <string>
@@ -21,30 +21,39 @@ public:
protected:
DnsManager_proxy(sdbus::IProxy& proxy)
: proxy_(proxy)
: m_proxy(proxy)
{
}
DnsManager_proxy(const DnsManager_proxy&) = delete;
DnsManager_proxy& operator=(const DnsManager_proxy&) = delete;
DnsManager_proxy(DnsManager_proxy&&) = delete;
DnsManager_proxy& operator=(DnsManager_proxy&&) = delete;
~DnsManager_proxy() = default;
void registerProxy()
{
}
public:
std::string Mode()
{
return proxy_.getProperty("Mode").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Mode").onInterface(INTERFACE_NAME).get<std::string>();
}
std::string RcManager()
{
return proxy_.getProperty("RcManager").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("RcManager").onInterface(INTERFACE_NAME).get<std::string>();
}
std::vector<std::map<std::string, sdbus::Variant>> Configuration()
{
return proxy_.getProperty("Configuration").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Configuration").onInterface(INTERFACE_NAME).get<std::vector<std::map<std::string, sdbus::Variant>>>();
}
private:
sdbus::IProxy& proxy_;
sdbus::IProxy& m_proxy;
};
}}} // namespaces
@@ -3,8 +3,8 @@
* This file was automatically generated by sdbus-c++-xml2cpp; DO NOT EDIT!
*/
#ifndef __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_IP4Config_hpp__proxy__H__
#define __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_IP4Config_hpp__proxy__H__
#ifndef __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_IP4Config_hpp__proxy__H__
#define __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_IP4Config_hpp__proxy__H__
#include <sdbus-c++/sdbus-c++.h>
#include <string>
@@ -21,80 +21,89 @@ public:
protected:
IP4Config_proxy(sdbus::IProxy& proxy)
: proxy_(proxy)
: m_proxy(proxy)
{
}
IP4Config_proxy(const IP4Config_proxy&) = delete;
IP4Config_proxy& operator=(const IP4Config_proxy&) = delete;
IP4Config_proxy(IP4Config_proxy&&) = delete;
IP4Config_proxy& operator=(IP4Config_proxy&&) = delete;
~IP4Config_proxy() = default;
void registerProxy()
{
}
public:
std::vector<std::vector<uint32_t>> Addresses()
{
return proxy_.getProperty("Addresses").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Addresses").onInterface(INTERFACE_NAME).get<std::vector<std::vector<uint32_t>>>();
}
std::vector<std::map<std::string, sdbus::Variant>> AddressData()
{
return proxy_.getProperty("AddressData").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("AddressData").onInterface(INTERFACE_NAME).get<std::vector<std::map<std::string, sdbus::Variant>>>();
}
std::string Gateway()
{
return proxy_.getProperty("Gateway").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Gateway").onInterface(INTERFACE_NAME).get<std::string>();
}
std::vector<std::vector<uint32_t>> Routes()
{
return proxy_.getProperty("Routes").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Routes").onInterface(INTERFACE_NAME).get<std::vector<std::vector<uint32_t>>>();
}
std::vector<std::map<std::string, sdbus::Variant>> RouteData()
{
return proxy_.getProperty("RouteData").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("RouteData").onInterface(INTERFACE_NAME).get<std::vector<std::map<std::string, sdbus::Variant>>>();
}
std::vector<uint32_t> Nameservers()
{
return proxy_.getProperty("Nameservers").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Nameservers").onInterface(INTERFACE_NAME).get<std::vector<uint32_t>>();
}
std::vector<std::map<std::string, sdbus::Variant>> NameserverData()
{
return proxy_.getProperty("NameserverData").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("NameserverData").onInterface(INTERFACE_NAME).get<std::vector<std::map<std::string, sdbus::Variant>>>();
}
std::vector<std::string> Domains()
{
return proxy_.getProperty("Domains").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Domains").onInterface(INTERFACE_NAME).get<std::vector<std::string>>();
}
std::vector<std::string> Searches()
{
return proxy_.getProperty("Searches").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Searches").onInterface(INTERFACE_NAME).get<std::vector<std::string>>();
}
std::vector<std::string> DnsOptions()
{
return proxy_.getProperty("DnsOptions").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("DnsOptions").onInterface(INTERFACE_NAME).get<std::vector<std::string>>();
}
int32_t DnsPriority()
{
return proxy_.getProperty("DnsPriority").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("DnsPriority").onInterface(INTERFACE_NAME).get<int32_t>();
}
std::vector<uint32_t> WinsServers()
{
return proxy_.getProperty("WinsServers").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("WinsServers").onInterface(INTERFACE_NAME).get<std::vector<uint32_t>>();
}
std::vector<std::string> WinsServerData()
{
return proxy_.getProperty("WinsServerData").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("WinsServerData").onInterface(INTERFACE_NAME).get<std::vector<std::string>>();
}
private:
sdbus::IProxy& proxy_;
sdbus::IProxy& m_proxy;
};
}}} // namespaces
@@ -3,8 +3,8 @@
* This file was automatically generated by sdbus-c++-xml2cpp; DO NOT EDIT!
*/
#ifndef __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_IP6Config_hpp__proxy__H__
#define __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_IP6Config_hpp__proxy__H__
#ifndef __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_IP6Config_hpp__proxy__H__
#define __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_IP6Config_hpp__proxy__H__
#include <sdbus-c++/sdbus-c++.h>
#include <string>
@@ -21,65 +21,74 @@ public:
protected:
IP6Config_proxy(sdbus::IProxy& proxy)
: proxy_(proxy)
: m_proxy(proxy)
{
}
IP6Config_proxy(const IP6Config_proxy&) = delete;
IP6Config_proxy& operator=(const IP6Config_proxy&) = delete;
IP6Config_proxy(IP6Config_proxy&&) = delete;
IP6Config_proxy& operator=(IP6Config_proxy&&) = delete;
~IP6Config_proxy() = default;
void registerProxy()
{
}
public:
std::vector<sdbus::Struct<std::vector<uint8_t>, uint32_t, std::vector<uint8_t>>> Addresses()
{
return proxy_.getProperty("Addresses").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Addresses").onInterface(INTERFACE_NAME).get<std::vector<sdbus::Struct<std::vector<uint8_t>, uint32_t, std::vector<uint8_t>>>>();
}
std::vector<std::map<std::string, sdbus::Variant>> AddressData()
{
return proxy_.getProperty("AddressData").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("AddressData").onInterface(INTERFACE_NAME).get<std::vector<std::map<std::string, sdbus::Variant>>>();
}
std::string Gateway()
{
return proxy_.getProperty("Gateway").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Gateway").onInterface(INTERFACE_NAME).get<std::string>();
}
std::vector<sdbus::Struct<std::vector<uint8_t>, uint32_t, std::vector<uint8_t>, uint32_t>> Routes()
{
return proxy_.getProperty("Routes").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Routes").onInterface(INTERFACE_NAME).get<std::vector<sdbus::Struct<std::vector<uint8_t>, uint32_t, std::vector<uint8_t>, uint32_t>>>();
}
std::vector<std::map<std::string, sdbus::Variant>> RouteData()
{
return proxy_.getProperty("RouteData").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("RouteData").onInterface(INTERFACE_NAME).get<std::vector<std::map<std::string, sdbus::Variant>>>();
}
std::vector<std::vector<uint8_t>> Nameservers()
{
return proxy_.getProperty("Nameservers").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Nameservers").onInterface(INTERFACE_NAME).get<std::vector<std::vector<uint8_t>>>();
}
std::vector<std::string> Domains()
{
return proxy_.getProperty("Domains").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Domains").onInterface(INTERFACE_NAME).get<std::vector<std::string>>();
}
std::vector<std::string> Searches()
{
return proxy_.getProperty("Searches").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Searches").onInterface(INTERFACE_NAME).get<std::vector<std::string>>();
}
std::vector<std::string> DnsOptions()
{
return proxy_.getProperty("DnsOptions").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("DnsOptions").onInterface(INTERFACE_NAME).get<std::vector<std::string>>();
}
int32_t DnsPriority()
{
return proxy_.getProperty("DnsPriority").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("DnsPriority").onInterface(INTERFACE_NAME).get<int32_t>();
}
private:
sdbus::IProxy& proxy_;
sdbus::IProxy& m_proxy;
};
}}} // namespaces
@@ -3,8 +3,8 @@
* This file was automatically generated by sdbus-c++-xml2cpp; DO NOT EDIT!
*/
#ifndef __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_Settings_Connection_hpp__proxy__H__
#define __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_Settings_Connection_hpp__proxy__H__
#ifndef __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_Settings_Connection_hpp__proxy__H__
#define __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_Settings_Connection_hpp__proxy__H__
#include <sdbus-c++/sdbus-c++.h>
#include <string>
@@ -22,82 +22,91 @@ public:
protected:
Connection_proxy(sdbus::IProxy& proxy)
: proxy_(proxy)
: m_proxy(proxy)
{
proxy_.uponSignal("Updated").onInterface(INTERFACE_NAME).call([this](){ this->onUpdated(); });
proxy_.uponSignal("Removed").onInterface(INTERFACE_NAME).call([this](){ this->onRemoved(); });
}
Connection_proxy(const Connection_proxy&) = delete;
Connection_proxy& operator=(const Connection_proxy&) = delete;
Connection_proxy(Connection_proxy&&) = delete;
Connection_proxy& operator=(Connection_proxy&&) = delete;
~Connection_proxy() = default;
void registerProxy()
{
m_proxy.uponSignal("Updated").onInterface(INTERFACE_NAME).call([this](){ this->onUpdated(); });
m_proxy.uponSignal("Removed").onInterface(INTERFACE_NAME).call([this](){ this->onRemoved(); });
}
virtual void onUpdated() = 0;
virtual void onRemoved() = 0;
public:
void Update(const std::map<std::string, std::map<std::string, sdbus::Variant>>& properties)
{
proxy_.callMethod("Update").onInterface(INTERFACE_NAME).withArguments(properties);
m_proxy.callMethod("Update").onInterface(INTERFACE_NAME).withArguments(properties);
}
void UpdateUnsaved(const std::map<std::string, std::map<std::string, sdbus::Variant>>& properties)
{
proxy_.callMethod("UpdateUnsaved").onInterface(INTERFACE_NAME).withArguments(properties);
m_proxy.callMethod("UpdateUnsaved").onInterface(INTERFACE_NAME).withArguments(properties);
}
void Delete()
{
proxy_.callMethod("Delete").onInterface(INTERFACE_NAME);
m_proxy.callMethod("Delete").onInterface(INTERFACE_NAME);
}
std::map<std::string, std::map<std::string, sdbus::Variant>> GetSettings()
{
std::map<std::string, std::map<std::string, sdbus::Variant>> result;
proxy_.callMethod("GetSettings").onInterface(INTERFACE_NAME).storeResultsTo(result);
m_proxy.callMethod("GetSettings").onInterface(INTERFACE_NAME).storeResultsTo(result);
return result;
}
std::map<std::string, std::map<std::string, sdbus::Variant>> GetSecrets(const std::string& setting_name)
{
std::map<std::string, std::map<std::string, sdbus::Variant>> result;
proxy_.callMethod("GetSecrets").onInterface(INTERFACE_NAME).withArguments(setting_name).storeResultsTo(result);
m_proxy.callMethod("GetSecrets").onInterface(INTERFACE_NAME).withArguments(setting_name).storeResultsTo(result);
return result;
}
void ClearSecrets()
{
proxy_.callMethod("ClearSecrets").onInterface(INTERFACE_NAME);
m_proxy.callMethod("ClearSecrets").onInterface(INTERFACE_NAME);
}
void Save()
{
proxy_.callMethod("Save").onInterface(INTERFACE_NAME);
m_proxy.callMethod("Save").onInterface(INTERFACE_NAME);
}
std::map<std::string, sdbus::Variant> Update2(const std::map<std::string, std::map<std::string, sdbus::Variant>>& settings, const uint32_t& flags, const std::map<std::string, sdbus::Variant>& args)
{
std::map<std::string, sdbus::Variant> result;
proxy_.callMethod("Update2").onInterface(INTERFACE_NAME).withArguments(settings, flags, args).storeResultsTo(result);
m_proxy.callMethod("Update2").onInterface(INTERFACE_NAME).withArguments(settings, flags, args).storeResultsTo(result);
return result;
}
public:
bool Unsaved()
{
return proxy_.getProperty("Unsaved").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Unsaved").onInterface(INTERFACE_NAME).get<bool>();
}
uint32_t Flags()
{
return proxy_.getProperty("Flags").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Flags").onInterface(INTERFACE_NAME).get<uint32_t>();
}
std::string Filename()
{
return proxy_.getProperty("Filename").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Filename").onInterface(INTERFACE_NAME).get<std::string>();
}
private:
sdbus::IProxy& proxy_;
sdbus::IProxy& m_proxy;
};
}}}} // namespaces
@@ -3,8 +3,8 @@
* This file was automatically generated by sdbus-c++-xml2cpp; DO NOT EDIT!
*/
#ifndef __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_Settings_hpp__proxy__H__
#define __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_Settings_hpp__proxy__H__
#ifndef __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_Settings_hpp__proxy__H__
#define __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_Settings_hpp__proxy__H__
#include <sdbus-c++/sdbus-c++.h>
#include <string>
@@ -21,14 +21,23 @@ public:
protected:
Settings_proxy(sdbus::IProxy& proxy)
: proxy_(proxy)
: m_proxy(proxy)
{
proxy_.uponSignal("NewConnection").onInterface(INTERFACE_NAME).call([this](const sdbus::ObjectPath& connection){ this->onNewConnection(connection); });
proxy_.uponSignal("ConnectionRemoved").onInterface(INTERFACE_NAME).call([this](const sdbus::ObjectPath& connection){ this->onConnectionRemoved(connection); });
}
Settings_proxy(const Settings_proxy&) = delete;
Settings_proxy& operator=(const Settings_proxy&) = delete;
Settings_proxy(Settings_proxy&&) = delete;
Settings_proxy& operator=(Settings_proxy&&) = delete;
~Settings_proxy() = default;
void registerProxy()
{
m_proxy.uponSignal("NewConnection").onInterface(INTERFACE_NAME).call([this](const sdbus::ObjectPath& connection){ this->onNewConnection(connection); });
m_proxy.uponSignal("ConnectionRemoved").onInterface(INTERFACE_NAME).call([this](const sdbus::ObjectPath& connection){ this->onConnectionRemoved(connection); });
}
virtual void onNewConnection(const sdbus::ObjectPath& connection) = 0;
virtual void onConnectionRemoved(const sdbus::ObjectPath& connection) = 0;
@@ -36,75 +45,75 @@ public:
std::vector<sdbus::ObjectPath> ListConnections()
{
std::vector<sdbus::ObjectPath> result;
proxy_.callMethod("ListConnections").onInterface(INTERFACE_NAME).storeResultsTo(result);
m_proxy.callMethod("ListConnections").onInterface(INTERFACE_NAME).storeResultsTo(result);
return result;
}
sdbus::ObjectPath GetConnectionByUuid(const std::string& uuid)
{
sdbus::ObjectPath result;
proxy_.callMethod("GetConnectionByUuid").onInterface(INTERFACE_NAME).withArguments(uuid).storeResultsTo(result);
m_proxy.callMethod("GetConnectionByUuid").onInterface(INTERFACE_NAME).withArguments(uuid).storeResultsTo(result);
return result;
}
sdbus::ObjectPath AddConnection(const std::map<std::string, std::map<std::string, sdbus::Variant>>& connection)
{
sdbus::ObjectPath result;
proxy_.callMethod("AddConnection").onInterface(INTERFACE_NAME).withArguments(connection).storeResultsTo(result);
m_proxy.callMethod("AddConnection").onInterface(INTERFACE_NAME).withArguments(connection).storeResultsTo(result);
return result;
}
sdbus::ObjectPath AddConnectionUnsaved(const std::map<std::string, std::map<std::string, sdbus::Variant>>& connection)
{
sdbus::ObjectPath result;
proxy_.callMethod("AddConnectionUnsaved").onInterface(INTERFACE_NAME).withArguments(connection).storeResultsTo(result);
m_proxy.callMethod("AddConnectionUnsaved").onInterface(INTERFACE_NAME).withArguments(connection).storeResultsTo(result);
return result;
}
std::tuple<sdbus::ObjectPath, std::map<std::string, sdbus::Variant>> AddConnection2(const std::map<std::string, std::map<std::string, sdbus::Variant>>& settings, const uint32_t& flags, const std::map<std::string, sdbus::Variant>& args)
{
std::tuple<sdbus::ObjectPath, std::map<std::string, sdbus::Variant>> result;
proxy_.callMethod("AddConnection2").onInterface(INTERFACE_NAME).withArguments(settings, flags, args).storeResultsTo(result);
m_proxy.callMethod("AddConnection2").onInterface(INTERFACE_NAME).withArguments(settings, flags, args).storeResultsTo(result);
return result;
}
std::tuple<bool, std::vector<std::string>> LoadConnections(const std::vector<std::string>& filenames)
{
std::tuple<bool, std::vector<std::string>> result;
proxy_.callMethod("LoadConnections").onInterface(INTERFACE_NAME).withArguments(filenames).storeResultsTo(result);
m_proxy.callMethod("LoadConnections").onInterface(INTERFACE_NAME).withArguments(filenames).storeResultsTo(result);
return result;
}
bool ReloadConnections()
{
bool result;
proxy_.callMethod("ReloadConnections").onInterface(INTERFACE_NAME).storeResultsTo(result);
m_proxy.callMethod("ReloadConnections").onInterface(INTERFACE_NAME).storeResultsTo(result);
return result;
}
void SaveHostname(const std::string& hostname)
{
proxy_.callMethod("SaveHostname").onInterface(INTERFACE_NAME).withArguments(hostname);
m_proxy.callMethod("SaveHostname").onInterface(INTERFACE_NAME).withArguments(hostname);
}
public:
std::vector<sdbus::ObjectPath> Connections()
{
return proxy_.getProperty("Connections").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Connections").onInterface(INTERFACE_NAME).get<std::vector<sdbus::ObjectPath>>();
}
std::string Hostname()
{
return proxy_.getProperty("Hostname").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Hostname").onInterface(INTERFACE_NAME).get<std::string>();
}
bool CanModify()
{
return proxy_.getProperty("CanModify").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("CanModify").onInterface(INTERFACE_NAME).get<bool>();
}
private:
sdbus::IProxy& proxy_;
sdbus::IProxy& m_proxy;
};
}}} // namespaces
@@ -3,8 +3,8 @@
* This file was automatically generated by sdbus-c++-xml2cpp; DO NOT EDIT!
*/
#ifndef __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_WifiP2PPeer_hpp__proxy__H__
#define __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_WifiP2PPeer_hpp__proxy__H__
#ifndef __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_WifiP2PPeer_hpp__proxy__H__
#define __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_WifiP2PPeer_hpp__proxy__H__
#include <sdbus-c++/sdbus-c++.h>
#include <string>
@@ -21,65 +21,74 @@ public:
protected:
WifiP2PPeer_proxy(sdbus::IProxy& proxy)
: proxy_(proxy)
: m_proxy(proxy)
{
}
WifiP2PPeer_proxy(const WifiP2PPeer_proxy&) = delete;
WifiP2PPeer_proxy& operator=(const WifiP2PPeer_proxy&) = delete;
WifiP2PPeer_proxy(WifiP2PPeer_proxy&&) = delete;
WifiP2PPeer_proxy& operator=(WifiP2PPeer_proxy&&) = delete;
~WifiP2PPeer_proxy() = default;
void registerProxy()
{
}
public:
std::string Name()
{
return proxy_.getProperty("Name").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Name").onInterface(INTERFACE_NAME).get<std::string>();
}
uint32_t Flags()
{
return proxy_.getProperty("Flags").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Flags").onInterface(INTERFACE_NAME).get<uint32_t>();
}
std::string Manufacturer()
{
return proxy_.getProperty("Manufacturer").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Manufacturer").onInterface(INTERFACE_NAME).get<std::string>();
}
std::string Model()
{
return proxy_.getProperty("Model").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Model").onInterface(INTERFACE_NAME).get<std::string>();
}
std::string ModelNumber()
{
return proxy_.getProperty("ModelNumber").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("ModelNumber").onInterface(INTERFACE_NAME).get<std::string>();
}
std::string Serial()
{
return proxy_.getProperty("Serial").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Serial").onInterface(INTERFACE_NAME).get<std::string>();
}
std::vector<uint8_t> WfdIEs()
{
return proxy_.getProperty("WfdIEs").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("WfdIEs").onInterface(INTERFACE_NAME).get<std::vector<uint8_t>>();
}
std::string HwAddress()
{
return proxy_.getProperty("HwAddress").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("HwAddress").onInterface(INTERFACE_NAME).get<std::string>();
}
uint8_t Strength()
{
return proxy_.getProperty("Strength").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Strength").onInterface(INTERFACE_NAME).get<uint8_t>();
}
int32_t LastSeen()
{
return proxy_.getProperty("LastSeen").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("LastSeen").onInterface(INTERFACE_NAME).get<int32_t>();
}
private:
sdbus::IProxy& proxy_;
sdbus::IProxy& m_proxy;
};
}}} // namespaces
@@ -3,8 +3,8 @@
* This file was automatically generated by sdbus-c++-xml2cpp; DO NOT EDIT!
*/
#ifndef __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_hpp__proxy__H__
#define __sdbuscpp__dbus_hpp_org_freedesktop_NetworkManager_hpp__proxy__H__
#ifndef __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_hpp__proxy__H__
#define __sdbuscpp____src_include_dbus_org_freedesktop_NetworkManager_hpp__proxy__H__
#include <sdbus-c++/sdbus-c++.h>
#include <string>
@@ -20,16 +20,25 @@ public:
protected:
NetworkManager_proxy(sdbus::IProxy& proxy)
: proxy_(proxy)
: m_proxy(proxy)
{
proxy_.uponSignal("CheckPermissions").onInterface(INTERFACE_NAME).call([this](){ this->onCheckPermissions(); });
proxy_.uponSignal("StateChanged").onInterface(INTERFACE_NAME).call([this](const uint32_t& state){ this->onStateChanged(state); });
proxy_.uponSignal("DeviceAdded").onInterface(INTERFACE_NAME).call([this](const sdbus::ObjectPath& device_path){ this->onDeviceAdded(device_path); });
proxy_.uponSignal("DeviceRemoved").onInterface(INTERFACE_NAME).call([this](const sdbus::ObjectPath& device_path){ this->onDeviceRemoved(device_path); });
}
NetworkManager_proxy(const NetworkManager_proxy&) = delete;
NetworkManager_proxy& operator=(const NetworkManager_proxy&) = delete;
NetworkManager_proxy(NetworkManager_proxy&&) = delete;
NetworkManager_proxy& operator=(NetworkManager_proxy&&) = delete;
~NetworkManager_proxy() = default;
void registerProxy()
{
m_proxy.uponSignal("CheckPermissions").onInterface(INTERFACE_NAME).call([this](){ this->onCheckPermissions(); });
m_proxy.uponSignal("StateChanged").onInterface(INTERFACE_NAME).call([this](const uint32_t& state){ this->onStateChanged(state); });
m_proxy.uponSignal("DeviceAdded").onInterface(INTERFACE_NAME).call([this](const sdbus::ObjectPath& device_path){ this->onDeviceAdded(device_path); });
m_proxy.uponSignal("DeviceRemoved").onInterface(INTERFACE_NAME).call([this](const sdbus::ObjectPath& device_path){ this->onDeviceRemoved(device_path); });
}
virtual void onCheckPermissions() = 0;
virtual void onStateChanged(const uint32_t& state) = 0;
virtual void onDeviceAdded(const sdbus::ObjectPath& device_path) = 0;
@@ -38,281 +47,281 @@ protected:
public:
void Reload(const uint32_t& flags)
{
proxy_.callMethod("Reload").onInterface(INTERFACE_NAME).withArguments(flags);
m_proxy.callMethod("Reload").onInterface(INTERFACE_NAME).withArguments(flags);
}
std::vector<sdbus::ObjectPath> GetDevices()
{
std::vector<sdbus::ObjectPath> result;
proxy_.callMethod("GetDevices").onInterface(INTERFACE_NAME).storeResultsTo(result);
m_proxy.callMethod("GetDevices").onInterface(INTERFACE_NAME).storeResultsTo(result);
return result;
}
std::vector<sdbus::ObjectPath> GetAllDevices()
{
std::vector<sdbus::ObjectPath> result;
proxy_.callMethod("GetAllDevices").onInterface(INTERFACE_NAME).storeResultsTo(result);
m_proxy.callMethod("GetAllDevices").onInterface(INTERFACE_NAME).storeResultsTo(result);
return result;
}
sdbus::ObjectPath GetDeviceByIpIface(const std::string& iface)
{
sdbus::ObjectPath result;
proxy_.callMethod("GetDeviceByIpIface").onInterface(INTERFACE_NAME).withArguments(iface).storeResultsTo(result);
m_proxy.callMethod("GetDeviceByIpIface").onInterface(INTERFACE_NAME).withArguments(iface).storeResultsTo(result);
return result;
}
sdbus::ObjectPath ActivateConnection(const sdbus::ObjectPath& connection, const sdbus::ObjectPath& device, const sdbus::ObjectPath& specific_object)
{
sdbus::ObjectPath result;
proxy_.callMethod("ActivateConnection").onInterface(INTERFACE_NAME).withArguments(connection, device, specific_object).storeResultsTo(result);
m_proxy.callMethod("ActivateConnection").onInterface(INTERFACE_NAME).withArguments(connection, device, specific_object).storeResultsTo(result);
return result;
}
std::tuple<sdbus::ObjectPath, sdbus::ObjectPath> AddAndActivateConnection(const std::map<std::string, std::map<std::string, sdbus::Variant>>& connection, const sdbus::ObjectPath& device, const sdbus::ObjectPath& specific_object)
{
std::tuple<sdbus::ObjectPath, sdbus::ObjectPath> result;
proxy_.callMethod("AddAndActivateConnection").onInterface(INTERFACE_NAME).withArguments(connection, device, specific_object).storeResultsTo(result);
m_proxy.callMethod("AddAndActivateConnection").onInterface(INTERFACE_NAME).withArguments(connection, device, specific_object).storeResultsTo(result);
return result;
}
std::tuple<sdbus::ObjectPath, sdbus::ObjectPath, std::map<std::string, sdbus::Variant>> AddAndActivateConnection2(const std::map<std::string, std::map<std::string, sdbus::Variant>>& connection, const sdbus::ObjectPath& device, const sdbus::ObjectPath& specific_object, const std::map<std::string, sdbus::Variant>& options)
{
std::tuple<sdbus::ObjectPath, sdbus::ObjectPath, std::map<std::string, sdbus::Variant>> result;
proxy_.callMethod("AddAndActivateConnection2").onInterface(INTERFACE_NAME).withArguments(connection, device, specific_object, options).storeResultsTo(result);
m_proxy.callMethod("AddAndActivateConnection2").onInterface(INTERFACE_NAME).withArguments(connection, device, specific_object, options).storeResultsTo(result);
return result;
}
void DeactivateConnection(const sdbus::ObjectPath& active_connection)
{
proxy_.callMethod("DeactivateConnection").onInterface(INTERFACE_NAME).withArguments(active_connection);
m_proxy.callMethod("DeactivateConnection").onInterface(INTERFACE_NAME).withArguments(active_connection);
}
void Sleep(const bool& sleep)
{
proxy_.callMethod("Sleep").onInterface(INTERFACE_NAME).withArguments(sleep);
m_proxy.callMethod("Sleep").onInterface(INTERFACE_NAME).withArguments(sleep);
}
void Enable(const bool& enable)
{
proxy_.callMethod("Enable").onInterface(INTERFACE_NAME).withArguments(enable);
m_proxy.callMethod("Enable").onInterface(INTERFACE_NAME).withArguments(enable);
}
std::map<std::string, std::string> GetPermissions()
{
std::map<std::string, std::string> result;
proxy_.callMethod("GetPermissions").onInterface(INTERFACE_NAME).storeResultsTo(result);
m_proxy.callMethod("GetPermissions").onInterface(INTERFACE_NAME).storeResultsTo(result);
return result;
}
void SetLogging(const std::string& level, const std::string& domains)
{
proxy_.callMethod("SetLogging").onInterface(INTERFACE_NAME).withArguments(level, domains);
m_proxy.callMethod("SetLogging").onInterface(INTERFACE_NAME).withArguments(level, domains);
}
std::tuple<std::string, std::string> GetLogging()
{
std::tuple<std::string, std::string> result;
proxy_.callMethod("GetLogging").onInterface(INTERFACE_NAME).storeResultsTo(result);
m_proxy.callMethod("GetLogging").onInterface(INTERFACE_NAME).storeResultsTo(result);
return result;
}
uint32_t CheckConnectivity()
{
uint32_t result;
proxy_.callMethod("CheckConnectivity").onInterface(INTERFACE_NAME).storeResultsTo(result);
m_proxy.callMethod("CheckConnectivity").onInterface(INTERFACE_NAME).storeResultsTo(result);
return result;
}
uint32_t state()
{
uint32_t result;
proxy_.callMethod("state").onInterface(INTERFACE_NAME).storeResultsTo(result);
m_proxy.callMethod("state").onInterface(INTERFACE_NAME).storeResultsTo(result);
return result;
}
sdbus::ObjectPath CheckpointCreate(const std::vector<sdbus::ObjectPath>& devices, const uint32_t& rollback_timeout, const uint32_t& flags)
{
sdbus::ObjectPath result;
proxy_.callMethod("CheckpointCreate").onInterface(INTERFACE_NAME).withArguments(devices, rollback_timeout, flags).storeResultsTo(result);
m_proxy.callMethod("CheckpointCreate").onInterface(INTERFACE_NAME).withArguments(devices, rollback_timeout, flags).storeResultsTo(result);
return result;
}
void CheckpointDestroy(const sdbus::ObjectPath& checkpoint)
{
proxy_.callMethod("CheckpointDestroy").onInterface(INTERFACE_NAME).withArguments(checkpoint);
m_proxy.callMethod("CheckpointDestroy").onInterface(INTERFACE_NAME).withArguments(checkpoint);
}
std::map<std::string, uint32_t> CheckpointRollback(const sdbus::ObjectPath& checkpoint)
{
std::map<std::string, uint32_t> result;
proxy_.callMethod("CheckpointRollback").onInterface(INTERFACE_NAME).withArguments(checkpoint).storeResultsTo(result);
m_proxy.callMethod("CheckpointRollback").onInterface(INTERFACE_NAME).withArguments(checkpoint).storeResultsTo(result);
return result;
}
void CheckpointAdjustRollbackTimeout(const sdbus::ObjectPath& checkpoint, const uint32_t& add_timeout)
{
proxy_.callMethod("CheckpointAdjustRollbackTimeout").onInterface(INTERFACE_NAME).withArguments(checkpoint, add_timeout);
m_proxy.callMethod("CheckpointAdjustRollbackTimeout").onInterface(INTERFACE_NAME).withArguments(checkpoint, add_timeout);
}
public:
std::vector<sdbus::ObjectPath> Devices()
{
return proxy_.getProperty("Devices").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Devices").onInterface(INTERFACE_NAME).get<std::vector<sdbus::ObjectPath>>();
}
std::vector<sdbus::ObjectPath> AllDevices()
{
return proxy_.getProperty("AllDevices").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("AllDevices").onInterface(INTERFACE_NAME).get<std::vector<sdbus::ObjectPath>>();
}
std::vector<sdbus::ObjectPath> Checkpoints()
{
return proxy_.getProperty("Checkpoints").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Checkpoints").onInterface(INTERFACE_NAME).get<std::vector<sdbus::ObjectPath>>();
}
bool NetworkingEnabled()
{
return proxy_.getProperty("NetworkingEnabled").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("NetworkingEnabled").onInterface(INTERFACE_NAME).get<bool>();
}
bool WirelessEnabled()
{
return proxy_.getProperty("WirelessEnabled").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("WirelessEnabled").onInterface(INTERFACE_NAME).get<bool>();
}
void WirelessEnabled(const bool& value)
{
proxy_.setProperty("WirelessEnabled").onInterface(INTERFACE_NAME).toValue(value);
m_proxy.setProperty("WirelessEnabled").onInterface(INTERFACE_NAME).toValue(value);
}
bool WirelessHardwareEnabled()
{
return proxy_.getProperty("WirelessHardwareEnabled").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("WirelessHardwareEnabled").onInterface(INTERFACE_NAME).get<bool>();
}
bool WwanEnabled()
{
return proxy_.getProperty("WwanEnabled").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("WwanEnabled").onInterface(INTERFACE_NAME).get<bool>();
}
void WwanEnabled(const bool& value)
{
proxy_.setProperty("WwanEnabled").onInterface(INTERFACE_NAME).toValue(value);
m_proxy.setProperty("WwanEnabled").onInterface(INTERFACE_NAME).toValue(value);
}
bool WwanHardwareEnabled()
{
return proxy_.getProperty("WwanHardwareEnabled").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("WwanHardwareEnabled").onInterface(INTERFACE_NAME).get<bool>();
}
bool WimaxEnabled()
{
return proxy_.getProperty("WimaxEnabled").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("WimaxEnabled").onInterface(INTERFACE_NAME).get<bool>();
}
void WimaxEnabled(const bool& value)
{
proxy_.setProperty("WimaxEnabled").onInterface(INTERFACE_NAME).toValue(value);
m_proxy.setProperty("WimaxEnabled").onInterface(INTERFACE_NAME).toValue(value);
}
bool WimaxHardwareEnabled()
{
return proxy_.getProperty("WimaxHardwareEnabled").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("WimaxHardwareEnabled").onInterface(INTERFACE_NAME).get<bool>();
}
uint32_t RadioFlags()
{
return proxy_.getProperty("RadioFlags").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("RadioFlags").onInterface(INTERFACE_NAME).get<uint32_t>();
}
std::vector<sdbus::ObjectPath> ActiveConnections()
{
return proxy_.getProperty("ActiveConnections").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("ActiveConnections").onInterface(INTERFACE_NAME).get<std::vector<sdbus::ObjectPath>>();
}
sdbus::ObjectPath PrimaryConnection()
{
return proxy_.getProperty("PrimaryConnection").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("PrimaryConnection").onInterface(INTERFACE_NAME).get<sdbus::ObjectPath>();
}
std::string PrimaryConnectionType()
{
return proxy_.getProperty("PrimaryConnectionType").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("PrimaryConnectionType").onInterface(INTERFACE_NAME).get<std::string>();
}
uint32_t Metered()
{
return proxy_.getProperty("Metered").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Metered").onInterface(INTERFACE_NAME).get<uint32_t>();
}
sdbus::ObjectPath ActivatingConnection()
{
return proxy_.getProperty("ActivatingConnection").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("ActivatingConnection").onInterface(INTERFACE_NAME).get<sdbus::ObjectPath>();
}
bool Startup()
{
return proxy_.getProperty("Startup").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Startup").onInterface(INTERFACE_NAME).get<bool>();
}
std::string Version()
{
return proxy_.getProperty("Version").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Version").onInterface(INTERFACE_NAME).get<std::string>();
}
std::vector<uint32_t> VersionInfo()
{
return proxy_.getProperty("VersionInfo").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("VersionInfo").onInterface(INTERFACE_NAME).get<std::vector<uint32_t>>();
}
std::vector<uint32_t> Capabilities()
{
return proxy_.getProperty("Capabilities").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Capabilities").onInterface(INTERFACE_NAME).get<std::vector<uint32_t>>();
}
uint32_t State()
{
return proxy_.getProperty("State").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("State").onInterface(INTERFACE_NAME).get<uint32_t>();
}
uint32_t Connectivity()
{
return proxy_.getProperty("Connectivity").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("Connectivity").onInterface(INTERFACE_NAME).get<uint32_t>();
}
bool ConnectivityCheckAvailable()
{
return proxy_.getProperty("ConnectivityCheckAvailable").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("ConnectivityCheckAvailable").onInterface(INTERFACE_NAME).get<bool>();
}
bool ConnectivityCheckEnabled()
{
return proxy_.getProperty("ConnectivityCheckEnabled").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("ConnectivityCheckEnabled").onInterface(INTERFACE_NAME).get<bool>();
}
void ConnectivityCheckEnabled(const bool& value)
{
proxy_.setProperty("ConnectivityCheckEnabled").onInterface(INTERFACE_NAME).toValue(value);
m_proxy.setProperty("ConnectivityCheckEnabled").onInterface(INTERFACE_NAME).toValue(value);
}
std::string ConnectivityCheckUri()
{
return proxy_.getProperty("ConnectivityCheckUri").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("ConnectivityCheckUri").onInterface(INTERFACE_NAME).get<std::string>();
}
std::map<std::string, sdbus::Variant> GlobalDnsConfiguration()
{
return proxy_.getProperty("GlobalDnsConfiguration").onInterface(INTERFACE_NAME);
return m_proxy.getProperty("GlobalDnsConfiguration").onInterface(INTERFACE_NAME).get<std::map<std::string, sdbus::Variant>>();
}
void GlobalDnsConfiguration(const std::map<std::string, sdbus::Variant>& value)
{
proxy_.setProperty("GlobalDnsConfiguration").onInterface(INTERFACE_NAME).toValue(value);
m_proxy.setProperty("GlobalDnsConfiguration").onInterface(INTERFACE_NAME).toValue(value);
}
private:
sdbus::IProxy& proxy_;
sdbus::IProxy& m_proxy;
};
}} // namespaces
@@ -0,0 +1,23 @@
<?xml version="1.0"?>
<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection
1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
<node>
<interface name="fi.w1.wpa_supplicant1.Group">
<signal name="PeerJoined">
<arg name="peer" type="o"/>
</signal>
<signal name="PeerDisconnected">
<arg name="peer" type="o"/>
</signal>
<property name="Members" type="ao" access="read"/>
<property name="Group" type="o" access="read"/>
<property name="Role" type="s" access="read"/>
<property name="SSID" type="ay" access="read"/>
<property name="BSSID" type="ay" access="read"/>
<property name="Frequency" type="q" access="read"/>
<property name="Passphrase" type="s" access="read"/>
<property name="PSK" type="ay" access="read"/>
<property name="WPSVendorExtensions" type="aay" access="readwrite"/>
</interface>
</node>
@@ -0,0 +1,514 @@
<?xml version="1.0"?>
<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
<node>
<interface name="fi.w1.wpa_supplicant1.Interface">
<method name="Scan">
<arg name="args" type="a{sv}" direction="in"/>
</method>
<method name="SignalPoll">
<arg name="args" type="a{sv}" direction="out"/>
</method>
<method name="Disconnect"/>
<method name="AddNetwork">
<arg name="args" type="a{sv}" direction="in"/>
<arg name="path" type="o" direction="out"/>
</method>
<method name="Reassociate"/>
<method name="Reattach"/>
<method name="Reconnect"/>
<method name="RemoveNetwork">
<arg name="path" type="o" direction="in"/>
</method>
<method name="RemoveAllNetworks"/>
<method name="SelectNetwork">
<arg name="path" type="o" direction="in"/>
</method>
<method name="NetworkReply">
<arg name="path" type="o" direction="in"/>
<arg name="field" type="s" direction="in"/>
<arg name="value" type="s" direction="in"/>
</method>
<method name="Roam">
<arg name="addr" type="s" direction="in"/>
</method>
<method name="AddBlob">
<arg name="name" type="s" direction="in"/>
<arg name="data" type="ay" direction="in"/>
</method>
<method name="GetBlob">
<arg name="name" type="s" direction="in"/>
<arg name="data" type="ay" direction="out"/>
</method>
<method name="RemoveBlob">
<arg name="name" type="s" direction="in"/>
</method>
<method name="SetPKCS11EngineAndModulePath">
<arg name="pkcs11_engine_path" type="s" direction="in"/>
<arg name="pkcs11_module_path" type="s" direction="in"/>
</method>
<method name="FlushBSS">
<arg name="age" type="u" direction="in"/>
</method>
<method name="SubscribeProbeReq"/>
<method name="UnsubscribeProbeReq"/>
<method name="EAPLogoff"/>
<method name="EAPLogon"/>
<method name="AutoScan">
<arg name="arg" type="s" direction="in"/>
</method>
<method name="TDLSDiscover">
<arg name="peer_address" type="s" direction="in"/>
</method>
<method name="TDLSSetup">
<arg name="peer_address" type="s" direction="in"/>
</method>
<method name="TDLSStatus">
<arg name="peer_address" type="s" direction="in"/>
<arg name="status" type="s" direction="out"/>
</method>
<method name="TDLSTeardown">
<arg name="peer_address" type="s" direction="in"/>
</method>
<method name="TDLSChannelSwitch">
<arg name="args" type="a{sv}" direction="in"/>
</method>
<method name="TDLSCancelChannelSwitch">
<arg name="peer_address" type="s" direction="in"/>
</method>
<method name="VendorElemAdd">
<arg name="frame_id" type="i" direction="in"/>
<arg name="ielems" type="ay" direction="in"/>
</method>
<method name="VendorElemGet">
<arg name="frame_id" type="i" direction="in"/>
<arg name="ielems" type="ay" direction="out"/>
</method>
<method name="VendorElemRem">
<arg name="frame_id" type="i" direction="in"/>
<arg name="ielems" type="ay" direction="in"/>
</method>
<method name="SaveConfig"/>
<method name="AbortScan"/>
<method name="AddCred">
<arg name="args" type="a{sv}" direction="in"/>
<arg name="path" type="o" direction="out"/>
</method>
<method name="RemoveCred">
<arg name="path" type="o" direction="in"/>
</method>
<method name="RemoveAllCreds"/>
<method name="InterworkingSelect"/>
<signal name="ScanDone">
<arg name="success" type="b"/>
</signal>
<signal name="BSSAdded">
<arg name="path" type="o"/>
<arg name="properties" type="a{sv}"/>
</signal>
<signal name="BSSRemoved">
<arg name="path" type="o"/>
</signal>
<signal name="BlobAdded">
<arg name="name" type="s"/>
</signal>
<signal name="BlobRemoved">
<arg name="name" type="s"/>
</signal>
<signal name="NetworkAdded">
<arg name="path" type="o"/>
<arg name="properties" type="a{sv}"/>
</signal>
<signal name="NetworkRemoved">
<arg name="path" type="o"/>
</signal>
<signal name="NetworkSelected">
<arg name="path" type="o"/>
</signal>
<signal name="PropertiesChanged">
<arg name="properties" type="a{sv}"/>
</signal>
<signal name="ProbeRequest">
<arg name="args" type="a{sv}"/>
</signal>
<signal name="Certification">
<arg name="certification" type="a{sv}"/>
</signal>
<signal name="EAP">
<arg name="status" type="s"/>
<arg name="parameter" type="s"/>
</signal>
<signal name="StaAuthorized">
<arg name="name" type="s"/>
</signal>
<signal name="StaDeauthorized">
<arg name="name" type="s"/>
</signal>
<signal name="StationAdded">
<arg name="path" type="o"/>
<arg name="properties" type="a{sv}"/>
</signal>
<signal name="StationRemoved">
<arg name="path" type="o"/>
</signal>
<signal name="NetworkRequest">
<arg name="path" type="o"/>
<arg name="field" type="s"/>
<arg name="text" type="s"/>
</signal>
<signal name="InterworkingAPAdded">
<arg name="bss" type="o"/>
<arg name="cred" type="o"/>
<arg name="properties" type="a{sv}"/>
</signal>
<signal name="InterworkingSelectDone"/>
<property name="Capabilities" type="a{sv}" access="read"/>
<property name="State" type="s" access="read"/>
<property name="Scanning" type="b" access="read"/>
<property name="ApScan" type="u" access="readwrite"/>
<property name="BSSExpireAge" type="u" access="readwrite"/>
<property name="BSSExpireCount" type="u" access="readwrite"/>
<property name="Country" type="s" access="readwrite"/>
<property name="Ifname" type="s" access="read"/>
<property name="Driver" type="s" access="read"/>
<property name="BridgeIfname" type="s" access="readwrite"/>
<property name="ConfigFile" type="s" access="read"/>
<property name="CurrentBSS" type="o" access="read"/>
<property name="CurrentNetwork" type="o" access="read"/>
<property name="CurrentAuthMode" type="s" access="read"/>
<property name="Blobs" type="a{say}" access="read"/>
<property name="BSSs" type="ao" access="read"/>
<property name="Networks" type="ao" access="read"/>
<property name="FastReauth" type="b" access="readwrite"/>
<property name="ScanInterval" type="i" access="readwrite"/>
<property name="PKCS11EnginePath" type="s" access="read"/>
<property name="PKCS11ModulePath" type="s" access="read"/>
<property name="DisconnectReason" type="i" access="read"/>
<property name="AuthStatusCode" type="i" access="read"/>
<property name="AssocStatusCode" type="i" access="read"/>
<property name="RoamTime" type="u" access="read"/>
<property name="RoamComplete" type="b" access="read"/>
<property name="SessionLength" type="u" access="read"/>
<property name="BSSTMStatus" type="u" access="read"/>
<property name="Stations" type="ao" access="read"/>
<property name="MACAddressRandomizationMask" type="a{say}" access="readwrite"/>
<property name="CtrlInterface" type="s" access="readwrite"/>
<property name="CtrlInterfaceGroup" type="s" access="readwrite"/>
<property name="EapolVersion" type="s" access="readwrite"/>
<property name="Bgscan" type="s" access="readwrite"/>
<property name="UserMpm" type="s" access="readwrite"/>
<property name="MaxPeerLinks" type="s" access="readwrite"/>
<property name="MeshMaxInactivity" type="s" access="readwrite"/>
<property name="MeshFwding" type="s" access="readwrite"/>
<property name="Dot11RSNASAERetransPeriod" type="s" access="readwrite"/>
<property name="DisableScanOffload" type="s" access="readwrite"/>
<property name="OpenscEnginePath" type="s" access="readwrite"/>
<property name="OpensslCiphers" type="s" access="readwrite"/>
<property name="PcscReader" type="s" access="readwrite"/>
<property name="PcscPin" type="s" access="readwrite"/>
<property name="ExternalSim" type="s" access="readwrite"/>
<property name="DriverParam" type="s" access="readwrite"/>
<property name="Dot11RSNAConfigPMKLifetime" type="s" access="readwrite"/>
<property name="Dot11RSNAConfigPMKReauthThreshold" type="s" access="readwrite"/>
<property name="Dot11RSNAConfigSATimeout" type="s" access="readwrite"/>
<property name="UpdateConfig" type="s" access="readwrite"/>
<property name="Uuid" type="s" access="readwrite"/>
<property name="AutoUuid" type="s" access="readwrite"/>
<property name="DeviceName" type="s" access="readwrite"/>
<property name="Manufacturer" type="s" access="readwrite"/>
<property name="ModelName" type="s" access="readwrite"/>
<property name="ModelNumber" type="s" access="readwrite"/>
<property name="SerialNumber" type="s" access="readwrite"/>
<property name="DeviceType" type="s" access="readwrite"/>
<property name="OsVersion" type="s" access="readwrite"/>
<property name="ConfigMethods" type="s" access="readwrite"/>
<property name="WpsCredProcessing" type="s" access="readwrite"/>
<property name="WpsCredAddSae" type="s" access="readwrite"/>
<property name="WpsVendorExtM1" type="s" access="readwrite"/>
<property name="SecDeviceType" type="s" access="readwrite"/>
<property name="P2pListenRegClass" type="s" access="readwrite"/>
<property name="P2pListenChannel" type="s" access="readwrite"/>
<property name="P2pOperRegClass" type="s" access="readwrite"/>
<property name="P2pOperChannel" type="s" access="readwrite"/>
<property name="P2pGoIntent" type="s" access="readwrite"/>
<property name="P2pSsidPostfix" type="s" access="readwrite"/>
<property name="PersistentReconnect" type="s" access="readwrite"/>
<property name="P2pIntraBss" type="s" access="readwrite"/>
<property name="P2pGroupIdle" type="s" access="readwrite"/>
<property name="P2pGoFreqChangePolicy" type="s" access="readwrite"/>
<property name="P2pPassphraseLen" type="s" access="readwrite"/>
<property name="P2pPrefChan" type="s" access="readwrite"/>
<property name="P2pNoGoFreq" type="s" access="readwrite"/>
<property name="P2pAddCliChan" type="s" access="readwrite"/>
<property name="P2pOptimizeListenChan" type="s" access="readwrite"/>
<property name="P2pGoHt40" type="s" access="readwrite"/>
<property name="P2pGoVht" type="s" access="readwrite"/>
<property name="P2pGoHe" type="s" access="readwrite"/>
<property name="P2pGoEdmg" type="s" access="readwrite"/>
<property name="P2pDisabled" type="s" access="readwrite"/>
<property name="P2pGoCtwindow" type="s" access="readwrite"/>
<property name="P2pNoGroupIface" type="s" access="readwrite"/>
<property name="P2pIgnoreSharedFreq" type="s" access="readwrite"/>
<property name="IpAddrGo" type="s" access="readwrite"/>
<property name="IpAddrMask" type="s" access="readwrite"/>
<property name="IpAddrStart" type="s" access="readwrite"/>
<property name="IpAddrEnd" type="s" access="readwrite"/>
<property name="P2pCliProbe" type="s" access="readwrite"/>
<property name="P2pDeviceRandomMacAddr" type="s" access="readwrite"/>
<property name="P2pDevicePersistentMacAddr" type="s" access="readwrite"/>
<property name="P2pInterfaceRandomMacAddr" type="s" access="readwrite"/>
<property name="P2p6ghzDisable" type="s" access="readwrite"/>
<property name="BssMaxCount" type="s" access="readwrite"/>
<property name="FilterSsids" type="s" access="readwrite"/>
<property name="FilterRssi" type="s" access="readwrite"/>
<property name="MaxNumSta" type="s" access="readwrite"/>
<property name="ApIsolate" type="s" access="readwrite"/>
<property name="DisassocLowAck" type="s" access="readwrite"/>
<property name="Hs20" type="s" access="readwrite"/>
<property name="Interworking" type="s" access="readwrite"/>
<property name="Hessid" type="s" access="readwrite"/>
<property name="AccessNetworkType" type="s" access="readwrite"/>
<property name="GoInterworking" type="s" access="readwrite"/>
<property name="GoAccessNetworkType" type="s" access="readwrite"/>
<property name="GoInternet" type="s" access="readwrite"/>
<property name="GoVenueGroup" type="s" access="readwrite"/>
<property name="GoVenueType" type="s" access="readwrite"/>
<property name="PbcInM1" type="s" access="readwrite"/>
<property name="Autoscan" type="s" access="readwrite"/>
<property name="WpsNfcDevPwId" type="s" access="readwrite"/>
<property name="WpsNfcDhPubkey" type="s" access="readwrite"/>
<property name="WpsNfcDhPrivkey" type="s" access="readwrite"/>
<property name="WpsNfcDevPw" type="s" access="readwrite"/>
<property name="ExtPasswordBackend" type="s" access="readwrite"/>
<property name="P2pGoMaxInactivity" type="s" access="readwrite"/>
<property name="AutoInterworking" type="s" access="readwrite"/>
<property name="Okc" type="s" access="readwrite"/>
<property name="Pmf" type="s" access="readwrite"/>
<property name="SaeGroups" type="s" access="readwrite"/>
<property name="SaePwe" type="s" access="readwrite"/>
<property name="SaePmkidInAssoc" type="s" access="readwrite"/>
<property name="DtimPeriod" type="s" access="readwrite"/>
<property name="BeaconInt" type="s" access="readwrite"/>
<property name="ApAssocrespElements" type="s" access="readwrite"/>
<property name="ApVendorElements" type="s" access="readwrite"/>
<property name="IgnoreOldScanRes" type="s" access="readwrite"/>
<property name="FreqList" type="s" access="readwrite"/>
<property name="InitialFreqList" type="s" access="readwrite"/>
<property name="ScanCurFreq" type="s" access="readwrite"/>
<property name="ScanResValidForConnect" type="s" access="readwrite"/>
<property name="SchedScanInterval" type="s" access="readwrite"/>
<property name="SchedScanStartDelay" type="s" access="readwrite"/>
<property name="TdlsExternalControl" type="s" access="readwrite"/>
<property name="OsuDir" type="s" access="readwrite"/>
<property name="WowlanTriggers" type="s" access="readwrite"/>
<property name="P2pSearchDelay" type="s" access="readwrite"/>
<property name="MacAddr" type="s" access="readwrite"/>
<property name="RandAddrLifetime" type="s" access="readwrite"/>
<property name="PreassocMacAddr" type="s" access="readwrite"/>
<property name="KeyMgmtOffload" type="s" access="readwrite"/>
<property name="PassiveScan" type="s" access="readwrite"/>
<property name="ReassocSameBssOptim" type="s" access="readwrite"/>
<property name="WpsPriority" type="s" access="readwrite"/>
<property name="FstGroupId" type="s" access="readwrite"/>
<property name="FstPriority" type="s" access="readwrite"/>
<property name="FstLlt" type="s" access="readwrite"/>
<property name="CertInCb" type="s" access="readwrite"/>
<property name="WpaRscRelaxation" type="s" access="readwrite"/>
<property name="SchedScanPlans" type="s" access="readwrite"/>
<property name="NonPrefChan" type="s" access="readwrite"/>
<property name="MboCellCapa" type="s" access="readwrite"/>
<property name="DisassocImminentRssiThreshold" type="s" access="readwrite"/>
<property name="Oce" type="s" access="readwrite"/>
<property name="GasAddress3" type="s" access="readwrite"/>
<property name="FtmResponder" type="s" access="readwrite"/>
<property name="FtmInitiator" type="s" access="readwrite"/>
<property name="GasRandAddrLifetime" type="s" access="readwrite"/>
<property name="GasRandMacAddr" type="s" access="readwrite"/>
<property name="DppConfigProcessing" type="s" access="readwrite"/>
<property name="DppName" type="s" access="readwrite"/>
<property name="DppMudUrl" type="s" access="readwrite"/>
<property name="ColocIntfReporting" type="s" access="readwrite"/>
<property name="DisableBtm" type="s" access="readwrite"/>
<property name="ExtendedKeyId" type="s" access="readwrite"/>
<property name="WowlanDisconnectOnDeinit" type="s" access="readwrite"/>
</interface>
<interface name="fi.w1.wpa_supplicant1.Interface.WPS">
<method name="Start">
<arg name="args" type="a{sv}" direction="in"/>
<arg name="output" type="a{sv}" direction="out"/>
</method>
<method name="Cancel"/>
<signal name="Event">
<arg name="name" type="s"/>
<arg name="args" type="a{sv}"/>
</signal>
<signal name="Credentials">
<arg name="credentials" type="a{sv}"/>
</signal>
<signal name="PropertiesChanged">
<arg name="properties" type="a{sv}"/>
</signal>
<property name="ProcessCredentials" type="b" access="readwrite"/>
<property name="ConfigMethods" type="s" access="readwrite"/>
<property name="DeviceName" type="s" access="readwrite"/>
<property name="Manufacturer" type="s" access="readwrite"/>
<property name="ModelName" type="s" access="readwrite"/>
<property name="ModelNumber" type="s" access="readwrite"/>
<property name="SerialNumber" type="s" access="readwrite"/>
<property name="DeviceType" type="ay" access="readwrite"/>
</interface>
<interface name="fi.w1.wpa_supplicant1.Interface.P2PDevice">
<method name="Find">
<arg name="args" type="a{sv}" direction="in"/>
</method>
<method name="StopFind"/>
<method name="Listen">
<arg name="timeout" type="i" direction="in"/>
</method>
<method name="ExtendedListen">
<arg name="args" type="a{sv}" direction="in"/>
</method>
<method name="PresenceRequest">
<arg name="args" type="a{sv}" direction="in"/>
</method>
<method name="ProvisionDiscoveryRequest">
<arg name="peer" type="o" direction="in"/>
<arg name="config_method" type="s" direction="in"/>
</method>
<method name="Connect">
<arg name="args" type="a{sv}" direction="in"/>
<arg name="generated_pin" type="s" direction="out"/>
</method>
<method name="GroupAdd">
<arg name="args" type="a{sv}" direction="in"/>
</method>
<method name="Cancel"/>
<method name="Invite">
<arg name="args" type="a{sv}" direction="in"/>
</method>
<method name="Disconnect"/>
<method name="RejectPeer">
<arg name="peer" type="o" direction="in"/>
</method>
<method name="RemoveClient">
<arg name="args" type="a{sv}" direction="in"/>
</method>
<method name="Flush"/>
<method name="AddService">
<arg name="args" type="a{sv}" direction="in"/>
</method>
<method name="DeleteService">
<arg name="args" type="a{sv}" direction="in"/>
</method>
<method name="FlushService"/>
<method name="ServiceDiscoveryRequest">
<arg name="args" type="a{sv}" direction="in"/>
<arg name="ref" type="t" direction="out"/>
</method>
<method name="ServiceDiscoveryResponse">
<arg name="args" type="a{sv}" direction="in"/>
</method>
<method name="ServiceDiscoveryCancelRequest">
<arg name="args" type="t" direction="in"/>
</method>
<method name="ServiceUpdate"/>
<method name="ServiceDiscoveryExternal">
<arg name="arg" type="i" direction="in"/>
</method>
<method name="AddPersistentGroup">
<arg name="args" type="a{sv}" direction="in"/>
<arg name="path" type="o" direction="out"/>
</method>
<method name="RemovePersistentGroup">
<arg name="path" type="o" direction="in"/>
</method>
<method name="RemoveAllPersistentGroups"/>
<signal name="DeviceFound">
<arg name="path" type="o"/>
</signal>
<signal name="DeviceFoundProperties">
<arg name="path" type="o"/>
<arg name="properties" type="a{sv}"/>
</signal>
<signal name="DeviceLost">
<arg name="path" type="o"/>
</signal>
<signal name="FindStopped"/>
<signal name="ProvisionDiscoveryRequestDisplayPin">
<arg name="peer_object" type="o"/>
<arg name="pin" type="s"/>
</signal>
<signal name="ProvisionDiscoveryResponseDisplayPin">
<arg name="peer_object" type="o"/>
<arg name="pin" type="s"/>
</signal>
<signal name="ProvisionDiscoveryRequestEnterPin">
<arg name="peer_object" type="o"/>
</signal>
<signal name="ProvisionDiscoveryResponseEnterPin">
<arg name="peer_object" type="o"/>
</signal>
<signal name="ProvisionDiscoveryPBCRequest">
<arg name="peer_object" type="o"/>
</signal>
<signal name="ProvisionDiscoveryPBCResponse">
<arg name="peer_object" type="o"/>
</signal>
<signal name="ProvisionDiscoveryFailure">
<arg name="peer_object" type="o"/>
<arg name="status" type="i"/>
</signal>
<signal name="GroupStarted">
<arg name="properties" type="a{sv}"/>
</signal>
<signal name="GroupFormationFailure">
<arg name="reason" type="s"/>
</signal>
<signal name="GONegotiationSuccess">
<arg name="properties" type="a{sv}"/>
</signal>
<signal name="GONegotiationFailure">
<arg name="properties" type="a{sv}"/>
</signal>
<signal name="GONegotiationRequest">
<arg name="path" type="o"/>
<arg name="dev_passwd_id" type="q"/>
<arg name="device_go_intent" type="y"/>
</signal>
<signal name="InvitationResult">
<arg name="invite_result" type="a{sv}"/>
</signal>
<signal name="GroupFinished">
<arg name="properties" type="a{sv}"/>
</signal>
<signal name="ServiceDiscoveryRequest">
<arg name="sd_request" type="a{sv}"/>
</signal>
<signal name="ServiceDiscoveryResponse">
<arg name="sd_response" type="a{sv}"/>
</signal>
<signal name="PersistentGroupAdded">
<arg name="path" type="o"/>
<arg name="properties" type="a{sv}"/>
</signal>
<signal name="PersistentGroupRemoved">
<arg name="path" type="o"/>
</signal>
<signal name="WpsFailed">
<arg name="name" type="s"/>
<arg name="args" type="a{sv}"/>
</signal>
<signal name="InvitationReceived">
<arg name="properties" type="a{sv}"/>
</signal>
<property name="P2PDeviceConfig" type="a{sv}" access="readwrite"/>
<property name="Peers" type="ao" access="read"/>
<property name="Role" type="s" access="read"/>
<property name="Group" type="o" access="read"/>
<property name="PeerGO" type="o" access="read"/>
<property name="PersistentGroups" type="ao" access="read"/>
</interface>
<interface name="fi.w1.wpa_supplicant1.PersistentGroup">
<property name="Properties" type="a{sv}" access="readwrite"/>
</interface>
</node>
@@ -0,0 +1,32 @@
('<?xml version="1.0"?>\n'
'<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection '
'1.0//EN"\n'
'"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">\n'
'<node><interface name="org.freedesktop.DBus.Introspectable"><method '
'name="Introspect"><arg name="data" type="s" '
'direction="out"/></method></interface><interface '
'name="org.freedesktop.DBus.Properties"><method name="Get"><arg '
'name="interface" type="s" direction="in"/><arg name="propname" type="s" '
'direction="in"/><arg name="value" type="v" direction="out"/></method><method '
'name="GetAll"><arg name="interface" type="s" direction="in"/><arg '
'name="props" type="a{sv}" direction="out"/></method><method name="Set"><arg '
'name="interface" type="s" direction="in"/><arg name="propname" type="s" '
'direction="in"/><arg name="value" type="v" '
'direction="in"/></method></interface><interface '
'name="fi.w1.wpa_supplicant1"><method name="CreateInterface"><arg name="args" '
'type="a{sv}" direction="in"/><arg name="path" type="o" '
'direction="out"/></method><method name="RemoveInterface"><arg name="path" '
'type="o" direction="in"/></method><method name="GetInterface"><arg '
'name="ifname" type="s" direction="in"/><arg name="path" type="o" '
'direction="out"/></method><method name="ExpectDisconnect"/><signal '
'name="InterfaceAdded"><arg name="path" type="o"/><arg name="properties" '
'type="a{sv}"/></signal><signal name="InterfaceRemoved"><arg name="path" '
'type="o"/></signal><signal name="PropertiesChanged"><arg name="properties" '
'type="a{sv}"/></signal><property name="DebugLevel" type="s" '
'access="readwrite"/><property name="DebugTimestamp" type="b" '
'access="readwrite"/><property name="DebugShowKeys" type="b" '
'access="readwrite"/><property name="Interfaces" type="ao" '
'access="read"/><property name="EapMethods" type="as" '
'access="read"/><property name="Capabilities" type="as" '
'access="read"/><property name="WFDIEs" type="ay" '
'access="readwrite"/></interface><node name="Interfaces"/></node>\n')
@@ -0,0 +1,26 @@
<?xml version="1.0"?>
<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
<node>
<interface name="fi.w1.wpa_supplicant1.Peer">
<signal name="PropertiesChanged">
<arg name="properties" type="a{sv}"/>
</signal>
<property name="DeviceName" type="s" access="read"/>
<property name="Manufacturer" type="s" access="read"/>
<property name="ModelName" type="s" access="read"/>
<property name="ModelNumber" type="s" access="read"/>
<property name="SerialNumber" type="s" access="read"/>
<property name="PrimaryDeviceType" type="ay" access="read"/>
<property name="config_method" type="q" access="read"/>
<property name="level" type="i" access="read"/>
<property name="devicecapability" type="y" access="read"/>
<property name="groupcapability" type="y" access="read"/>
<property name="SecondaryDeviceTypes" type="aay" access="read"/>
<property name="VendorExtension" type="aay" access="read"/>
<property name="IEs" type="ay" access="read"/>
<property name="DeviceAddress" type="ay" access="read"/>
<property name="Groups" type="ao" access="read"/>
<property name="VSIE" type="ay" access="read"/>
</interface>
</node>
@@ -0,0 +1,37 @@
<?xml version="1.0"?>
<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
<node>
<interface name="fi.w1.wpa_supplicant1">
<method name="CreateInterface">
<arg name="args" type="a{sv}" direction="in"/>
<arg name="path" type="o" direction="out"/>
</method>
<method name="RemoveInterface">
<arg name="path" type="o" direction="in"/>
</method>
<method name="GetInterface">
<arg name="ifname" type="s" direction="in"/>
<arg name="path" type="o" direction="out"/>
</method>
<method name="ExpectDisconnect"/>
<signal name="InterfaceAdded">
<arg name="path" type="o"/>
<arg name="properties" type="a{sv}"/>
</signal>
<signal name="InterfaceRemoved">
<arg name="path" type="o"/>
</signal>
<signal name="PropertiesChanged">
<arg name="properties" type="a{sv}"/>
</signal>
<property name="DebugLevel" type="s" access="readwrite"/>
<property name="DebugTimestamp" type="b" access="readwrite"/>
<property name="DebugShowKeys" type="b" access="readwrite"/>
<property name="Interfaces" type="ao" access="read"/>
<property name="EapMethods" type="as" access="read"/>
<property name="Capabilities" type="as" access="read"/>
<property name="WFDIEs" type="ay" access="readwrite"/>
</interface>
<node name="Interfaces"/>
</node>
@@ -0,0 +1,21 @@
<?xml version="1.0"?>
<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
<node>
<interface name="org.freedesktop.DBus.Properties">
<method name="Get">
<arg name="interface" type="s" direction="in"/>
<arg name="propname" type="s" direction="in"/>
<arg name="value" type="v" direction="out"/>
</method>
<method name="GetAll">
<arg name="interface" type="s" direction="in"/>
<arg name="props" type="a{sv}" direction="out"/>
</method>
<method name="Set">
<arg name="interface" type="s" direction="in"/>
<arg name="propname" type="s" direction="in"/>
<arg name="value" type="v" direction="in"/>
</method>
</interface>
</node>
@@ -0,0 +1,99 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/">
<!--
org.freedesktop.NetworkManager.AccessPoint:
@short_description: Wi-Fi Access Point.
-->
<interface name="org.freedesktop.NetworkManager.AccessPoint">
<!--
Flags:
Flags describing the capabilities of the access point.
Returns: <link linkend="NM80211ApFlags">NM80211ApFlags</link>
-->
<property name="Flags" type="u" access="read"/>
<!--
WpaFlags:
Flags describing the access point's capabilities according to WPA (Wifi
Protected Access).
Returns: <link linkend="NM80211ApSecurityFlags">NM80211ApSecurityFlags</link>
-->
<property name="WpaFlags" type="u" access="read"/>
<!--
RsnFlags:
Flags describing the access point's capabilities according to the RSN
(Robust Secure Network) protocol.
Returns: <link linkend="NM80211ApSecurityFlags">NM80211ApSecurityFlags</link>
-->
<property name="RsnFlags" type="u" access="read"/>
<!--
Ssid:
The Service Set Identifier identifying the access point.
-->
<property name="Ssid" type="ay" access="read">
<!-- gdbus-codegen assumes that "ay" means "non-UTF-8 string" and
won't deal with '\0' bytes correctly.
-->
<annotation name="org.gtk.GDBus.C.ForceGVariant" value="1"/>
</property>
<!--
Frequency:
The radio channel frequency in use by the access point, in MHz.
-->
<property name="Frequency" type="u" access="read"/>
<!--
HwAddress:
The hardware address (BSSID) of the access point.
-->
<property name="HwAddress" type="s" access="read"/>
<!--
Mode:
Describes the operating mode of the access point.
Returns: <link linkend="NM80211Mode">NM80211Mode</link>
-->
<property name="Mode" type="u" access="read"/>
<!--
MaxBitrate:
The maximum bitrate this access point is capable of, in kilobits/second
(Kb/s).
-->
<property name="MaxBitrate" type="u" access="read"/>
<!--
Strength:
The current signal quality of the access point, in percent.
-->
<property name="Strength" type="y" access="read"/>
<!--
LastSeen:
The timestamp (in CLOCK_BOOTTIME seconds) for the last time the access
point was found in scan results. A value of -1 means the access point has
never been found in scan results.
-->
<property name="LastSeen" type="i" access="read"/>
</interface>
</node>
@@ -0,0 +1,43 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/org/freedesktop/NetworkManager/AgentManager">
<!--
org.freedesktop.NetworkManager.AgentManager:
@short_description: Secret Agent Manager.
-->
<interface name="org.freedesktop.NetworkManager.AgentManager">
<!--
Register:
@identifier: Identifies this agent; only one agent in each user session may use the same identifier. Identifier formatting follows the same rules as D-Bus bus names with the exception that the ':' character is not allowed. The valid set of characters is "[A-Z][a-z][0-9]_-." and the identifier is limited in length to 255 characters with a minimum of 3 characters. An example valid identifier is 'org.gnome.nm-applet' (without quotes).
Called by secret Agents to register their ability to provide and save
network secrets.
-->
<method name="Register">
<arg name="identifier" type="s" direction="in"/>
</method>
<!--
RegisterWithCapabilities:
@identifier: See the Register() method's identifier argument.
@capabilities: (<link linkend="NMSecretAgentCapabilities">NMSecretAgentCapabilities</link>) Indicates various agent capabilities to NetworkManager.
Like Register() but indicates agent capabilities to NetworkManager.
-->
<method name="RegisterWithCapabilities">
<arg name="identifier" type="s" direction="in"/>
<arg name="capabilities" type="u" direction="in"/>
</method>
<!--
Unregister:
Called by secret Agents to notify NetworkManager that they will no longer
handle requests for network secrets. Agents are automatically unregistered
when they disconnect from D-Bus.
-->
<method name="Unregister"/>
</interface>
</node>
@@ -0,0 +1,36 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/">
<!--
org.freedesktop.NetworkManager.Checkpoint:
@short_description: Configuration and State Snapshot.
A snapshot of NetworkManager state for a given device list
-->
<interface name="org.freedesktop.NetworkManager.Checkpoint">
<annotation name="org.gtk.GDBus.C.Name" value="Checkpoint"/>
<!--
Devices:
Array of object paths for devices which are part of this
checkpoint.
-->
<property name="Devices" type="ao" access="read"/>
<!--
Created:
The timestamp (in CLOCK_BOOTTIME milliseconds) of checkpoint creation.
-->
<property name="Created" type="x" access="read"/>
<!--
RollbackTimeout:
Timeout in seconds for automatic rollback, or zero.
-->
<property name="RollbackTimeout" type="u" access="read"/>
</interface>
</node>
@@ -0,0 +1,185 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/">
<!--
org.freedesktop.NetworkManager.Connection.Active:
@short_description: Active Connection.
Objects that implement the Connection.Active interface represent an
attempt to connect to a network using the details provided by a Connection
object. The Connection.Active object tracks the life-cycle of the
connection attempt and if successful indicates whether the connected
network is the "default" or preferred network for access. NetworkManager
has the concept of connections, which can be thought of as settings, a
profile or a configuration that can be applied on a networking device.
Such settings-connections are exposed as D-Bus object and the
active-connection expresses this relationship between device and
settings-connection. At any time a settings-connection can only be
activated on one device and vice versa. However, during activation and
deactivation multiple active-connections can reference the same device or
settings-connection as they are waiting to be activated or to be
deactivated.
-->
<interface name="org.freedesktop.NetworkManager.Connection.Active">
<annotation name="org.gtk.GDBus.C.Name" value="ActiveConnection"/>
<!--
Connection:
The path of the connection.
-->
<property name="Connection" type="o" access="read"/>
<!--
SpecificObject:
A specific object associated with the active connection. This property
reflects the specific object used during connection activation, and will
not change over the lifetime of the ActiveConnection once set.
-->
<property name="SpecificObject" type="o" access="read"/>
<!--
Id:
The ID of the connection, provided as a convenience so that clients do not
have to retrieve all connection details.
-->
<property name="Id" type="s" access="read"/>
<!--
Uuid:
The UUID of the connection, provided as a convenience so that clients do
not have to retrieve all connection details.
-->
<property name="Uuid" type="s" access="read"/>
<!--
Type:
The type of the connection, provided as a convenience so that clients do
not have to retrieve all connection details.
-->
<property name="Type" type="s" access="read"/>
<!--
Devices:
Array of object paths representing devices which are part of this active
connection.
-->
<property name="Devices" type="ao" access="read"/>
<!--
State:
The state of this active connection.
Returns: <link linkend="NMActiveConnectionState">NMActiveConnectionState</link>
-->
<property name="State" type="u" access="read"/>
<!--
StateFlags:
The state flags of this active connection.
Returns: <link linkend="NMActivationStateFlags">NMActivationStateFlags</link>
-->
<property name="StateFlags" type="u" access="read"/>
<!--
StateChanged:
@state: (<link linkend="NMActiveConnectionState">NMActiveConnectionState</link>) The new state of the active connection.
@reason: (<link linkend="NMActiveConnectionStateReason">NMActiveConnectionStateReason</link>) Reason code describing the change to the new state.
@since: 1.8
Emitted when the state of the active connection has changed.
-->
<signal name="StateChanged">
<arg name="state" type="u"/>
<arg name="reason" type="u"/>
</signal>
<!--
Default:
Whether this active connection is the default IPv4 connection, i.e.
whether it currently owns the default IPv4 route.
-->
<property name="Default" type="b" access="read"/>
<!--
Ip4Config:
Object path of the Ip4Config object describing the configuration of the
connection. Only valid when the connection is in the
NM_ACTIVE_CONNECTION_STATE_ACTIVATED state.
-->
<property name="Ip4Config" type="o" access="read"/>
<!--
Dhcp4Config:
Object path of the Dhcp4Config object describing the DHCP options returned
by the DHCP server (assuming the connection used DHCP). Only valid when
the connection is in the NM_ACTIVE_CONNECTION_STATE_ACTIVATED state.
-->
<property name="Dhcp4Config" type="o" access="read"/>
<!--
Default6:
Whether this active connection is the default IPv6 connection, i.e.
whether it currently owns the default IPv6 route.
-->
<property name="Default6" type="b" access="read"/>
<!--
Ip6Config:
Object path of the Ip6Config object describing the configuration of the
connection. Only valid when the connection is in the
NM_ACTIVE_CONNECTION_STATE_ACTIVATED state.
-->
<property name="Ip6Config" type="o" access="read"/>
<!--
Dhcp6Config:
Object path of the Dhcp6Config object describing the DHCP options returned
by the DHCP server (assuming the connection used DHCP). Only valid when
the connection is in the NM_ACTIVE_CONNECTION_STATE_ACTIVATED state.
-->
<property name="Dhcp6Config" type="o" access="read"/>
<!--
Vpn:
Whether this active connection is also a VPN connection.
-->
<property name="Vpn" type="b" access="read"/>
<!--
Controller:
@Since: 1.44, 1.42.2
The path to the controller device if the connection is a port. This
property replaces the deprecated 'Master' property.
-->
<property name="Controller" type="o" access="read"/>
<!--
Master:
The path to the controller device if the connection is a port.
This property is deprecated in favor of the 'Controller'
property since 1.44 and 1.42.2.
-->
<property name="Master" type="o" access="read"/>
</interface>
</node>
@@ -0,0 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/">
<!--
org.freedesktop.NetworkManager.DHCP4Config:
@short_description: IPv4 DHCP Client State.
Options and configuration returned by the IPv4 DHCP server.
-->
<interface name="org.freedesktop.NetworkManager.DHCP4Config">
<annotation name="org.gtk.GDBus.C.Name" value="Dhcp4Config"/>
<!--
Options:
Configuration options returned by a DHCP server, if any.
-->
<property name="Options" type="a{sv}" access="read"/>
</interface>
</node>
@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/">
<!--
org.freedesktop.NetworkManager.DHCP6Config:
@short_description: IPv6 DHCP Client State.
Options and configuration returned by the IPv6 DHCP server.
-->
<interface name="org.freedesktop.NetworkManager.DHCP6Config">
<annotation name="org.gtk.GDBus.C.Name" value="Dhcp6Config"/>
<!--
Options:
Configuration options returned by a DHCP server, if any.
-->
<property name="Options" type="a{sv}" access="read"/>
</interface>
</node>
@@ -0,0 +1,40 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/">
<!--
org.freedesktop.NetworkManager.Device.Bond:
@short_description: Bonding Device.
-->
<interface name="org.freedesktop.NetworkManager.Device.Bond">
<!--
HwAddress:
Hardware address of the device.
n
DEPRECATED. Use the "HwAddress" property in "org.freedesktop.NetworkManager.Device" instead which exists since version NetworkManager 1.24.0.
-->
<property name="HwAddress" type="s" access="read"/>
<!--
Carrier:
Indicates whether the physical carrier is found (e.g. whether a cable is
plugged in or not).
DEPRECATED: check for the "lower-up" flag in the "InterfaceFlags"
property on the "org.freedesktop.NetworkManager.Device" interface.
-->
<property name="Carrier" type="b" access="read"/>
<!--
Slaves:
DEPRECATED. Use the "Ports" property in
"org.freedesktop.NetworkManager.Device" instead which exists since
version NetworkManager 1.34.0.
-->
<property name="Slaves" type="ao" access="read"/>
</interface>
</node>
@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/">
<!--
org.freedesktop.NetworkManager.Device.Dummy:
@short_description: Dummy Device.
-->
<interface name="org.freedesktop.NetworkManager.Device.Dummy">
<!--
HwAddress:
Hardware address of the device.
n
DEPRECATED. Use the "HwAddress" property in "org.freedesktop.NetworkManager.Device" instead which exists since version NetworkManager 1.24.0.
-->
<property name="HwAddress" type="s" access="read"/>
</interface>
</node>
@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/">
<!--
org.freedesktop.NetworkManager.Device.Generic:
@short_description: Unrecognized Device.
-->
<interface name="org.freedesktop.NetworkManager.Device.Generic">
<!--
HwAddress:
Hardware address of the device.
n
DEPRECATED. Use the "HwAddress" property in "org.freedesktop.NetworkManager.Device" instead which exists since version NetworkManager 1.24.0.
-->
<property name="HwAddress" type="s" access="read"/>
<!--
TypeDescription:
A (non-localized) description of the interface type, if known.
-->
<property name="TypeDescription" type="s" access="read"/>
</interface>
</node>
@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/">
<!--
org.freedesktop.NetworkManager.Device.Loopback:
@short_description: Loopback Device.
-->
<interface name="org.freedesktop.NetworkManager.Device.Loopback"/>
</node>
@@ -0,0 +1,62 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/">
<!--
org.freedesktop.NetworkManager.Device.Modem:
@short_description: Modem Device.
-->
<interface name="org.freedesktop.NetworkManager.Device.Modem">
<!--
ModemCapabilities:
The generic family of access technologies the modem supports. Not all
capabilities are available at the same time however; some modems require a
firmware reload or other reinitialization to switch between eg CDMA/EVDO
and GSM/UMTS.
Returns: <link linkend="NMDeviceModemCapabilities">NMDeviceModemCapabilities</link>
-->
<property name="ModemCapabilities" type="u" access="read"/>
<!--
CurrentCapabilities:
The generic family of access technologies the modem currently supports
without a firmware reload or reinitialization.
Returns: <link linkend="NMDeviceModemCapabilities">NMDeviceModemCapabilities</link>
-->
<property name="CurrentCapabilities" type="u" access="read"/>
<!--
DeviceId:
@since: 1.20
An identifier used by the modem backend (ModemManager) that aims to
uniquely identify the a device. Can be used to match a connection to a
particular device.
-->
<property name="DeviceId" type="s" access="read" />
<!--
OperatorCode:
@since: 1.20
The MCC and MNC (concatenated) of the network the modem is connected to.
Blank if disconnected or not a 3GPP modem.
-->
<property name="OperatorCode" type="s" access="read" />
<!--
Apn:
@since: 1.20
The access point name the modem is connected to. Blank if disconnected.
-->
<property name="Apn" type="s" access="read" />
</interface>
</node>
@@ -0,0 +1,35 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/">
<!--
org.freedesktop.NetworkManager.Device.Statistics:
@short_description: Device Statistic Counters.
-->
<interface name="org.freedesktop.NetworkManager.Device.Statistics">
<!--
RefreshRateMs:
Refresh rate of the rest of properties of this interface. The properties
are guaranteed to be refreshed each RefreshRateMs milliseconds in case
the underlying counter has changed too.
If zero, there is no guaranteed refresh rate of the properties.
-->
<property name="RefreshRateMs" type="u" access="readwrite"/>
<!--
TxBytes:
Number of transmitted bytes
-->
<property name="TxBytes" type="t" access="read"/>
<!--
RxBytes:
Number of received bytes
-->
<property name="RxBytes" type="t" access="read"/>
</interface>
</node>
@@ -0,0 +1,76 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/">
<!--
org.freedesktop.NetworkManager.Device.WifiP2P:
@short_description: Wi-Fi P2P Device.
@since: 1.16
-->
<interface name="org.freedesktop.NetworkManager.Device.WifiP2P">
<annotation name="org.gtk.GDBus.C.Name" value="Device_Wifi_P2P"/>
<!--
HwAddress:
The active hardware address of the device.
DEPRECATED. Use the "HwAddress" property in "org.freedesktop.NetworkManager.Device" instead which exists since version NetworkManager 1.24.0.
-->
<property name="HwAddress" type="s" access="read"/>
<!--
Peers:
List of object paths of peers visible to this Wi-Fi P2P device.
-->
<property name="Peers" type="ao" access="read"/>
<!--
StartFind:
@options: Options of find.
Start a find operation for Wi-Fi P2P peers.
The %options argument accepts the following keys:
<variablelist>
<varlistentry>
<term><literal>i timeout</literal>:</term>
<listitem><para>Timeout value in the range of 1-600 seconds.</para>
<para>The default is 30 seconds.</para></listitem>
</varlistentry>
</variablelist>
-->
<method name="StartFind">
<arg name="options" type="a{sv}" direction="in"/>
</method>
<!--
StopFind:
Stop an ongoing find operation again.
-->
<method name="StopFind">
</method>
<!--
PeerAdded:
@peer: The object path of the newly found access point.
Emitted when a new Wi-Fi P2P peer is found by the device.
-->
<signal name="PeerAdded">
<arg name="peer" type="o"/>
</signal>
<!--
PeerRemoved:
@peer: The object path of the Wi-Fi P2P peer that has disappeared.
Emitted when a Wi-Fi P2P peer disappears from view of the device.
-->
<signal name="PeerRemoved">
<arg name="peer" type="o"/>
</signal>
</interface>
</node>
@@ -0,0 +1,38 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/">
<!--
org.freedesktop.NetworkManager.Device.WireGuard:
@short_description: WireGuard Device.
-->
<interface name="org.freedesktop.NetworkManager.Device.WireGuard">
<!--
PublicKey:
32-byte public WireGuard key.
-->
<property name="PublicKey" type="ay" access="read">
<!-- gdbus-codegen assumes that "ay" means "non-UTF-8 string" and
won't deal with '\0' bytes correctly.
-->
<annotation name="org.gtk.GDBus.C.ForceGVariant" value="1"/>
</property>
<!--
ListenPort:
Local UDP listening port.
-->
<property name="ListenPort" type="q" access="read"/>
<!--
FwMark:
Optional 32-bit mark used to set routing policy for outgoing encrypted packets.
See: ip-rule(8)
-->
<property name="FwMark" type="u" access="read"/>
</interface>
</node>
@@ -0,0 +1,53 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/">
<!--
org.freedesktop.NetworkManager.Device.Wired:
@short_description: Wired Ethernet Device.
-->
<interface name="org.freedesktop.NetworkManager.Device.Wired">
<annotation name="org.gtk.GDBus.C.Name" value="DeviceEthernet"/>
<!--
HwAddress:
Active hardware address of the device.
DEPRECATED. Use the "HwAddress" property in "org.freedesktop.NetworkManager.Device" instead which exists since version NetworkManager 1.24.0.
-->
<property name="HwAddress" type="s" access="read"/>
<!--
PermHwAddress:
Permanent hardware address of the device.
-->
<property name="PermHwAddress" type="s" access="read"/>
<!--
Speed:
Design speed of the device, in megabits/second (Mb/s).
-->
<property name="Speed" type="u" access="read"/>
<!--
S390Subchannels:
Array of S/390 subchannels for S/390 or z/Architecture devices.
-->
<property name="S390Subchannels" type="as" access="read"/>
<!--
Carrier:
Indicates whether the physical carrier is found (e.g. whether a cable is
plugged in or not).
DEPRECATED: check for the "carrier" flag in the "InterfaceFlags"
property on the "org.freedesktop.NetworkManager.Device" interface.
-->
<property name="Carrier" type="b" access="read"/>
</interface>
</node>
@@ -0,0 +1,131 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/">
<!--
org.freedesktop.NetworkManager.Device.Wireless:
@short_description: Wi-Fi Device.
-->
<interface name="org.freedesktop.NetworkManager.Device.Wireless">
<annotation name="org.gtk.GDBus.C.Name" value="DeviceWifi"/>
<!--
GetAccessPoints:
@access_points: List of access point object paths.
DEPRECATED. Get the list of access points visible to this device. Note
that this list does not include access points which hide their SSID. To
retrieve a list of all access points (including hidden ones) use the
GetAllAccessPoints() method.
-->
<method name="GetAccessPoints">
<arg name="access_points" type="ao" direction="out"/>
</method>
<!--
GetAllAccessPoints:
@access_points: List of access point object paths.
Get the list of all access points visible to this device, including hidden
ones for which the SSID is not yet known.
-->
<method name="GetAllAccessPoints">
<arg name="access_points" type="ao" direction="out"/>
</method>
<!--
RequestScan:
@options: Options of scan. Currently, 'ssids' option with value of "aay" type is supported.
Request the device to scan. To know when the scan is finished, use the "PropertiesChanged" signal from "org.freedesktop.DBus.Properties" to listen to changes to the "LastScan" property.
-->
<method name="RequestScan">
<arg name="options" type="a{sv}" direction="in"/>
</method>
<!--
HwAddress:
The active hardware address of the device.
DEPRECATED. Use the "HwAddress" property in "org.freedesktop.NetworkManager.Device" instead which exists since version NetworkManager 1.24.0.
-->
<property name="HwAddress" type="s" access="read"/>
<!--
PermHwAddress:
The permanent hardware address of the device.
-->
<property name="PermHwAddress" type="s" access="read"/>
<!--
Mode:
The operating mode of the wireless device.
Returns: <link linkend="NM80211Mode">NM80211Mode</link>
-->
<property name="Mode" type="u" access="read"/>
<!--
Bitrate:
The bit rate currently used by the wireless device, in kilobits/second
(Kb/s).
-->
<property name="Bitrate" type="u" access="read"/>
<!--
AccessPoints:
List of object paths of access point visible to this wireless device.
-->
<property name="AccessPoints" type="ao" access="read"/>
<!--
ActiveAccessPoint:
Object path of the access point currently used by the wireless device.
-->
<property name="ActiveAccessPoint" type="o" access="read"/>
<!--
WirelessCapabilities:
The capabilities of the wireless device.
Returns: <link linkend="NMDeviceWifiCapabilities">NMDeviceWifiCapabilities</link>
-->
<property name="WirelessCapabilities" type="u" access="read"/>
<!--
LastScan:
@since: 1.12
The timestamp (in CLOCK_BOOTTIME milliseconds) for the last finished network scan.
A value of -1 means the device never scanned for access points.
-->
<property name="LastScan" type="x" access="read"/>
<!--
AccessPointAdded:
@access_point: The object path of the newly found access point.
Emitted when a new access point is found by the device.
-->
<signal name="AccessPointAdded">
<arg name="access_point" type="o"/>
</signal>
<!--
AccessPointRemoved:
@access_point: The object path of the access point that has disappeared.
Emitted when an access point disappears from view of the device.
-->
<signal name="AccessPointRemoved">
<arg name="access_point" type="o"/>
</signal>
</interface>
</node>
@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/">
<!--
org.freedesktop.NetworkManager.Device.Wpan:
@short_description: IEEE 802.15.4 (WPAN) MAC Layer Device.
-->
<interface name="org.freedesktop.NetworkManager.Device.Wpan">
<!--
HwAddress:
The active hardware address of the device.
DEPRECATED. Use the "HwAddress" property in "org.freedesktop.NetworkManager.Device" instead which exists since version NetworkManager 1.24.0.
-->
<property name="HwAddress" type="s" access="read"/>
</interface>
</node>
@@ -0,0 +1,407 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/">
<!--
org.freedesktop.NetworkManager.Device:
@short_description: Device.
-->
<interface name="org.freedesktop.NetworkManager.Device">
<!--
Udi:
Operating-system specific transient device hardware identifier. This is an
opaque string representing the underlying hardware for the device, and
shouldn't be used to keep track of individual devices. For some device
types (Bluetooth, Modems) it is an identifier used by the hardware service
(ie bluez or ModemManager) to refer to that device, and client programs
use it get additional information from those services which NM does not
provide. The Udi is not guaranteed to be consistent across reboots or
hotplugs of the hardware. If you're looking for a way to uniquely track
each device in your application, use the object path. If you're looking
for a way to track a specific piece of hardware across reboot or hotplug,
use a MAC address or USB serial number.
Note that non-UTF-8 characters are backslash escaped. Use g_strcompress()
to obtain the true (non-UTF-8) string.
-->
<property name="Udi" type="s" access="read"/>
<!--
Path:
The path of the device as exposed by the udev property ID_PATH.
Note that non-UTF-8 characters are backslash escaped. Use g_strcompress()
to obtain the true (non-UTF-8) string.
-->
<property name="Path" type="s" access="read"/>
<!--
Interface:
The name of the device's control (and often data) interface.
Note that non UTF-8 characters are backslash escaped, so the
resulting name may be longer then 15 characters. Use g_strcompress()
to revert the escaping.
-->
<property name="Interface" type="s" access="read"/>
<!--
IpInterface:
The name of the device's data interface when available. This property may
not refer to the actual data interface until the device has successfully
established a data connection, indicated by the device's State becoming
ACTIVATED.
Note that non UTF-8 characters are backslash escaped, so the
resulting name may be longer then 15 characters. Use g_strcompress()
to revert the escaping.
-->
<property name="IpInterface" type="s" access="read"/>
<!--
Driver:
The driver handling the device.
Non-UTF-8 sequences are backslash escaped. Use g_strcompress()
to revert.
-->
<property name="Driver" type="s" access="read"/>
<!--
DriverVersion:
The version of the driver handling the device.
Non-UTF-8 sequences are backslash escaped. Use g_strcompress()
to revert.
-->
<property name="DriverVersion" type="s" access="read"/>
<!--
FirmwareVersion:
The firmware version for the device.
Non-UTF-8 sequences are backslash escaped. Use g_strcompress()
to revert.
-->
<property name="FirmwareVersion" type="s" access="read"/>
<!--
Capabilities:
Flags describing the capabilities of the device.
Returns: <link linkend="NMDeviceCapabilities">NMDeviceCapabilities</link>
-->
<property name="Capabilities" type="u" access="read"/>
<!--
Ip4Address:
DEPRECATED; use the 'Addresses' property of the 'Ip4Config' object
instead. This property always returns 0.0.0.0 (numeric 0) as address.
-->
<property name="Ip4Address" type="u" access="read"/>
<!--
State:
The current state of the device.
Returns: <link linkend="NMDeviceState">NMDeviceState</link>
-->
<property name="State" type="u" access="read"/>
<!--
StateReason:
The current state and reason for changing to that state.
Returns: A tuple of <link linkend="NMDeviceState">NMDeviceState</link> and <link linkend="NMDeviceStateReason">NMDeviceStateReason</link>.
-->
<property name="StateReason" type="(uu)" access="read"/>
<!--
ActiveConnection:
Object path of an ActiveConnection object that "owns" this device during
activation. The ActiveConnection object tracks the life-cycle of a
connection to a specific network and implements the
org.freedesktop.NetworkManager.Connection.Active D-Bus interface.
-->
<property name="ActiveConnection" type="o" access="read"/>
<!--
Ip4Config:
Object path of the Ip4Config object describing the configuration of the
device. Only valid when the device is in the NM_DEVICE_STATE_ACTIVATED
state.
-->
<property name="Ip4Config" type="o" access="read"/>
<!--
Dhcp4Config:
Object path of the Dhcp4Config object describing the DHCP options returned
by the DHCP server. Only valid when the device is in the
NM_DEVICE_STATE_ACTIVATED state.
-->
<property name="Dhcp4Config" type="o" access="read"/>
<!--
Ip6Config:
Object path of the Ip6Config object describing the configuration of the
device. Only valid when the device is in the NM_DEVICE_STATE_ACTIVATED
state.
-->
<property name="Ip6Config" type="o" access="read"/>
<!--
Dhcp6Config:
Object path of the Dhcp6Config object describing the DHCP options returned
by the DHCP server. Only valid when the device is in the
NM_DEVICE_STATE_ACTIVATED state.
-->
<property name="Dhcp6Config" type="o" access="read"/>
<!--
Managed:
Whether or not this device is managed by NetworkManager. Setting this
property has a similar effect to configuring the device as unmanaged via
the keyfile.unmanaged-devices setting in NetworkManager.conf. Changes to
this value are not persistent and lost after NetworkManager restart.
-->
<property name="Managed" type="b" access="readwrite"/>
<!--
Autoconnect:
If TRUE, indicates the device is allowed to autoconnect. If FALSE, manual
intervention is required before the device will automatically connect to a
known network, such as activating a connection using the device, or
setting this property to TRUE. This property cannot be set to TRUE for
default-unmanaged devices, since they never autoconnect.
-->
<property name="Autoconnect" type="b" access="readwrite"/>
<!--
FirmwareMissing:
If TRUE, indicates the device is likely missing firmware necessary for its
operation.
-->
<property name="FirmwareMissing" type="b" access="read"/>
<!--
NmPluginMissing:
If TRUE, indicates the NetworkManager plugin for the device is likely
missing or misconfigured.
-->
<property name="NmPluginMissing" type="b" access="read"/>
<!--
DeviceType:
The general type of the network device; ie Ethernet, Wi-Fi, etc.
Returns: <link linkend="NMDeviceType">NMDeviceType</link>
-->
<property name="DeviceType" type="u" access="read"/>
<!--
AvailableConnections:
An array of object paths of every configured connection that is currently
'available' through this device.
-->
<property name="AvailableConnections" type="ao" access="read"/>
<!--
PhysicalPortId:
If non-empty, an (opaque) indicator of the physical network port
associated with the device. This can be used to recognize when two
seemingly-separate hardware devices are actually just different virtual
interfaces to the same physical port.
-->
<property name="PhysicalPortId" type="s" access="read"/>
<!--
Mtu:
The device MTU (maximum transmission unit).
-->
<property name="Mtu" type="u" access="read"/>
<!--
Metered:
Whether the amount of traffic flowing through the device is subject to
limitations, for example set by service providers.
Returns: <link linkend="NMMetered">NMMetered</link>
-->
<property name="Metered" type="u" access="read"/>
<!--
LldpNeighbors:
Array of LLDP neighbors; each element is a dictionary mapping LLDP TLV
names to variant boxed values.
-->
<property name="LldpNeighbors" type="aa{sv}" access="read"/>
<!--
Real:
True if the device exists, or False for placeholder devices that do not
yet exist but could be automatically created by NetworkManager if one of
their AvailableConnections was activated.
-->
<property name="Real" type="b" access="read"/>
<!--
Ip4Connectivity:
@since: 1.16
The result of the last IPv4 connectivity check.
Returns: <link linkend="NMConnectivityState">NMConnectivityState</link>
-->
<property name="Ip4Connectivity" type="u" access="read"/>
<!--
Ip6Connectivity:
@since: 1.16
The result of the last IPv6 connectivity check.
Returns: <link linkend="NMConnectivityState">NMConnectivityState</link>
-->
<property name="Ip6Connectivity" type="u" access="read"/>
<!--
InterfaceFlags:
@since: 1.22
The flags of the network interface. See
<link linkend="NMDeviceInterfaceFlags">NMDeviceInterfaceFlags</link> for
the currently defined flags.
-->
<property name="InterfaceFlags" type="u" access="read"/>
<!--
HwAddress:
@since: 1.24
The hardware address of the device.
This replaces the other 'HwAddress' properties on the device-specific D-Bus interfaces.
-->
<property name="HwAddress" type="s" access="read"/>
<!--
Ports:
@since: 1.34
The port devices of the controller device.
Array of object paths representing devices which are currently set as
port of this device. This replaces the 'Slaves' properties on the
device-specific D-Bus interfaces.
-->
<property name="Ports" type="ao" access="read"/>
<!--
Reapply:
@connection: The optional connection settings that will be reapplied on the device. If empty, the currently active settings-connection will be used. The connection cannot arbitrarily differ from the current applied-connection otherwise the call will fail. Only certain changes are supported, like adding or removing IP addresses.
@version_id: If non-zero, the current version id of the applied-connection must match. The current version id can be retrieved via GetAppliedConnection. This optional argument allows to catch concurrent modifications between the GetAppliedConnection call and Reapply.
@flags: Flags which would modify the behavior of the Reapply call. Invalid flags are rejected.
Attempts to update the configuration of a device without deactivating it.
NetworkManager has the concept of connections, which are profiles that
contain the configuration for a networking device. Those connections are
exposed via D-Bus as individual objects that can be created, modified and
deleted. When activating such a settings-connection on a device, the
settings-connection is cloned to become an applied-connection and used to
configure the device (see GetAppliedConnection). Subsequent modification
of the settings-connection don't propagate automatically to the device's
applied-connection (with exception of the firewall-zone and the metered
property). For the changes to take effect, you can either re-activate the
settings-connection, or call Reapply. The Reapply call allows you to
directly update the applied-connection and reconfigure the device. Reapply
can also be useful if the currently applied-connection is equal to the
connection that is about to be reapplied. This allows to reconfigure the
device and revert external changes like removing or adding an IP address
(which NetworkManager doesn't revert automatically because it is assumed
that the user made these changes intentionally outside of NetworkManager).
Reapply can make the applied-connection different from the
settings-connection, just like updating the settings-connection can make
them different.
Since 1.42, "preserve-external-ip" flag (0x1) is supported to not remove
externally added IP addresses and routes on the device during reapply.
-->
<method name="Reapply">
<arg name="connection" type="a{sa{sv}}" direction="in"/>
<arg name="version_id" type="t" direction="in"/>
<arg name="flags" type="u" direction="in"/>
</method>
<!--
GetAppliedConnection:
@flags: Flags which would modify the behavior of the GetAppliedConnection call. There are no flags defined currently and the users should use the value of 0.
@connection: The effective connection settings that the connection has currently applied.
@version_id: The version-id of the currently applied connection. This can be specified during Reapply to avoid races where you first fetch the applied connection, modify it and try to reapply it. If the applied connection is modified in the meantime, the version_id gets incremented and Reapply will fail.
Get the currently applied connection on the device. This is a snapshot of
the last activated connection on the device, that is the configuration
that is currently applied on the device. Usually this is the same as
GetSettings of the referenced settings connection. However, it can differ
if the settings connection was subsequently modified or the applied
connection was modified by Reapply. The applied connection is set when
activating a device or when calling Reapply.
-->
<method name="GetAppliedConnection">
<arg name="flags" type="u" direction="in"/>
<arg name="connection" type="a{sa{sv}}" direction="out"/>
<arg name="version_id" type="t" direction="out"/>
</method>
<!--
Disconnect:
Disconnects a device and prevents the device from automatically activating
further connections without user intervention.
-->
<method name="Disconnect"/>
<!--
Delete:
Deletes a software device from NetworkManager and removes the interface
from the system. The method returns an error when called for a hardware
device.
-->
<method name="Delete"/>
<!--
StateChanged:
@new_state: (<link linkend="NMDeviceState">NMDeviceState</link>) The new state of the device.
@old_state: (<link linkend="NMDeviceState">NMDeviceState</link>) The previous state of the device.
@reason: (<link linkend="NMDeviceStateReason">NMDeviceStateReason</link>) A reason for the state transition.
-->
<signal name="StateChanged">
<arg name="new_state" type="u"/>
<arg name="old_state" type="u"/>
<arg name="reason" type="u"/>
</signal>
</interface>
</node>
@@ -0,0 +1,40 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/org/freedesktop/NetworkManager/DnsManager">
<!--
org.freedesktop.NetworkManager.DnsManager:
@short_description: DNS Configuration State.
The interface contains DNS-related information.
-->
<interface name="org.freedesktop.NetworkManager.DnsManager">
<!--
Mode:
The current DNS processing mode.
-->
<property name="Mode" type="s" access="read"/>
<!--
RcManager:
The current resolv.conf management mode.
-->
<property name="RcManager" type="s" access="read"/>
<!--
Configuration:
The current DNS configuration represented as an array of
dictionaries. Each dictionary has the "nameservers",
"priority" keys and, optionally, "interface" and "vpn".
"nameservers" is the list of DNS servers, "priority" their
relative priority, "interface" the interface on which these
servers are contacted, "vpn" a boolean telling whether the
configuration was obtained from a VPN connection.
-->
<property name="Configuration" type="aa{sv}" access="read"/>
</interface>
</node>
@@ -0,0 +1,117 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/">
<!--
org.freedesktop.NetworkManager.IP4Config:
@short_description: IPv4 Configuration Set.
-->
<interface name="org.freedesktop.NetworkManager.IP4Config">
<!--
Addresses:
Array of arrays of IPv4 address/prefix/gateway. All 3 elements of each
array are in network byte order. Essentially: [(addr, prefix, gateway),
(addr, prefix, gateway), ...] Deprecated: use AddressData and Gateway
-->
<property name="Addresses" type="aau" access="read"/>
<!--
AddressData:
Array of IP address data objects. All addresses will include "address" (an
IP address string), and "prefix" (a uint). Some addresses may include
additional attributes.
-->
<property name="AddressData" type="aa{sv}" access="read"/>
<!--
Gateway:
The gateway in use.
-->
<property name="Gateway" type="s" access="read"/>
<!--
Routes:
Arrays of IPv4 route/prefix/next-hop/metric. All 4 elements of each tuple
are in network byte order. 'route' and 'next hop' are IPv4 addresses,
while prefix and metric are simple unsigned integers. Essentially:
[(route, prefix, next-hop, metric), (route, prefix, next-hop, metric),
...] Deprecated: use RouteData
-->
<property name="Routes" type="aau" access="read"/>
<!--
RouteData:
Array of IP route data objects. All routes will include "dest" (an IP
address string) and "prefix" (a uint). Some routes may include "next-hop"
(an IP address string), "metric" (a uint), and additional attributes.
-->
<property name="RouteData" type="aa{sv}" access="read"/>
<!--
Nameservers:
The nameservers in use. Deprecated: use NameserverData
-->
<property name="Nameservers" type="au" access="read"/>
<!--
NameserverData:
@since: 1.14
The nameservers in use. Currently, only the value "address"
is recognized (with an IP address string).
-->
<property name="NameserverData" type="aa{sv}" access="read"/>
<!--
Domains:
A list of domains this address belongs to.
-->
<property name="Domains" type="as" access="read"/>
<!--
Searches:
A list of dns searches.
-->
<property name="Searches" type="as" access="read"/>
<!--
DnsOptions:
A list of DNS options that modify the behavior of the DNS resolver. See
resolv.conf(5) manual page for the list of supported options.
-->
<property name="DnsOptions" type="as" access="read"/>
<!--
DnsPriority:
The relative priority of DNS servers.
-->
<property name="DnsPriority" type="i" access="read"/>
<!--
WinsServers:
The Windows Internet Name Service servers associated with the connection.
Each address is in network byte order. Deprecated: use WinsServerData
-->
<property name="WinsServers" type="au" access="read"/>
<!--
WinsServerData:
@since: 1.14
The Windows Internet Name Service servers associated with the connection.
-->
<property name="WinsServerData" type="as" access="read"/>
</interface>
</node>
@@ -0,0 +1,92 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/">
<!--
org.freedesktop.NetworkManager.IP6Config:
@short_description: IPv6 Configuration Set.
-->
<interface name="org.freedesktop.NetworkManager.IP6Config">
<!--
Addresses:
Array of tuples of IPv6 address/prefix/gateway. Deprecated: use
AddressData and Gateway.
-->
<property name="Addresses" type="a(ayuay)" access="read"/>
<!--
AddressData:
Array of IP address data objects. All addresses will include "address" (an
IP address string), and "prefix" (a uint). Some addresses may include
additional attributes.
-->
<property name="AddressData" type="aa{sv}" access="read"/>
<!--
Gateway:
The gateway in use.
-->
<property name="Gateway" type="s" access="read"/>
<!--
Routes:
Tuples of IPv6 route/prefix/next-hop/metric. Deprecated: use RouteData
-->
<property name="Routes" type="a(ayuayu)" access="read"/>
<!--
RouteData:
Array of IP route data objects. All routes will include "dest" (an IP
address string) and "prefix" (a uint). Some routes may include "next-hop"
(an IP address string), "metric" (a uint), and additional attributes.
-->
<property name="RouteData" type="aa{sv}" access="read"/>
<!--
Nameservers:
The nameservers in use.
-->
<property name="Nameservers" type="aay" access="read">
<!-- gdbus-codegen assumes that "aay" means "array of non-UTF-8
string&quot; and so would make this a char **.
-->
<annotation name="org.gtk.GDBus.C.ForceGVariant" value="1"/>
</property>
<!--
Domains:
A list of domains this address belongs to.
-->
<property name="Domains" type="as" access="read"/>
<!--
Searches:
A list of dns searches.
-->
<property name="Searches" type="as" access="read"/>
<!--
DnsOptions:
A list of DNS options that modify the behavior of the DNS resolver. See
resolv.conf(5) manual page for the list of supported options.
-->
<property name="DnsOptions" type="as" access="read"/>
<!--
DnsPriority:
The relative priority of DNS servers.
-->
<property name="DnsPriority" type="i" access="read"/>
</interface>
</node>
@@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8" ?>
<node name="/">
<!--
org.freedesktop.NetworkManager.PPP:
@short_description: Helper interface for a PPP plugin.
-->
<interface name="org.freedesktop.NetworkManager.PPP">
<annotation name="org.gtk.GDBus.C.Name" value="PPP_Manager"/>
<method name="NeedSecrets">
<arg name="username" type="s" direction="out"/>
<arg name="password" type="s" direction="out"/>
</method>
<method name="SetIp4Config">
<arg name="config" type="a{sv}" direction="in"/>
</method>
<method name="SetIp6Config">
<arg name="config" type="a{sv}" direction="in"/>
</method>
<method name="SetState">
<arg name="state" type="u" direction="in"/>
</method>
<method name="SetIfindex">
<arg name="ifindex" type="i" direction="in"/>
</method>
</interface>
</node>
@@ -0,0 +1,94 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/">
<!--
org.freedesktop.NetworkManager.SecretAgent:
@short_description: User Secret Agent.
Private D-Bus interface used by secret agents that store and provide
secrets to NetworkManager. If an agent provides secrets to NetworkManager
as part of connection creation, and the some of those secrets are "agent
owned" the agent should store those secrets itself and should not expect
its SaveSecrets() method to be called. SaveSecrets() will be called eg if
some program other than the agent itself (like a connection editor)
changes the secrets out of band. The agent should implement this D-Bus
interface on an object with the path
/org/freedesktop/NetworkManager/SecretAgent.
-->
<interface name="org.freedesktop.NetworkManager.SecretAgent">
<!--
GetSecrets:
@connection: Nested settings maps containing the connection for which secrets are being requested. This may contain system-owned secrets if the agent has successfully authenticated to modify system network settings and the GetSecrets request flags allow user interaction.
@connection_path: Object path of the connection for which secrets are being requested.
@setting_name: Setting name for which secrets are being requested.
@hints: Array of strings of key names in the requested setting for which NetworkManager thinks a secrets may be required, and/or well-known identifiers and data that may be useful to the client in processing the secrets request. Note that it's not always possible to determine which secret is required, so in some cases no hints may be given. The Agent should return any secrets it has, or that it thinks are required, regardless of what hints NetworkManager sends in this request. Some hints have special prefixes that provide information to the agent; for example, VPN requests may send server-specific messages prefixed with "x-vpn-message:".
@flags: (<link linkend="NMSecretAgentGetSecretsFlags">NMSecretAgentGetSecretsFlags</link>) Flags which modify the behavior of the secrets request. If true, new secrets are assumed to be invalid or incorrect, and the agent should ask the user for new secrets. If false, existing secrets should be retrieved from storage and returned without interrupting the user.
@secrets: Nested settings maps containing secrets. Each setting MUST contain at least the 'name' field, containing the name of the setting, and one or more secrets.
Retrieve and return stored secrets, if any, or request new secrets from
the agent's user. If user interaction is allowed and the user enters new
secrets, the agent is expected to save the new secrets to persistent
storage (if the secret's flags include AGENT_OWNED) as NetworkManager will
not send these secrets back to the same agent via a SaveSecrets() call. If
the user canceled any interaction, the agent should return the
UserCanceled error (see below).
-->
<method name="GetSecrets">
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_secret_agent_get_secrets"/>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<arg name="connection" type="a{sa{sv}}" direction="in"/>
<arg name="connection_path" type="o" direction="in"/>
<arg name="setting_name" type="s" direction="in"/>
<arg name="hints" type="as" direction="in"/>
<arg name="flags" type="u" direction="in"/>
<arg name="secrets" type="a{sa{sv}}" direction="out"/>
</method>
<!--
CancelGetSecrets:
@connection_path: Object path of the connection for which, if secrets for the given 'setting_name' are being requested, the request should be canceled.
@setting_name: Setting name for which secrets for this connection were originally being requested.
Cancel a pending GetSecrets request for secrets of the given connection.
Any GetSecrets request with the same 'connection_path' and 'setting_name'
that are given in a CancelGetSecrets request should be canceled.
-->
<method name="CancelGetSecrets">
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_secret_agent_cancel_get_secrets"/>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<arg name="connection_path" type="o" direction="in"/>
<arg name="setting_name" type="s" direction="in"/>
</method>
<!--
SaveSecrets:
@connection: Nested settings maps containing the entire connection (including secrets), for which the agent should save the secrets to backing storage. This method will not be called when the agent itself is the process creating or updating a connection; in that case the agent is assumed to have already saved those secrets since it had them already.
@connection_path: Object path of the connection for which the agent should save secrets to backing storage.
Save given secrets to backing storage.
-->
<method name="SaveSecrets">
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_secret_agent_save_secrets"/>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<arg name="connection" type="a{sa{sv}}" direction="in"/>
<arg name="connection_path" type="o" direction="in"/>
</method>
<!--
DeleteSecrets:
@connection: Nested settings maps containing the connection properties (sans secrets), for which the agent should delete the secrets from backing storage.
@connection_path: Object path of the connection for which the agent should delete secrets from backing storage.
Delete secrets from backing storage.
-->
<method name="DeleteSecrets">
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_secret_agent_delete_secrets"/>
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
<arg name="connection" type="a{sa{sv}}" direction="in"/>
<arg name="connection_path" type="o" direction="in"/>
</method>
</interface>
</node>
@@ -0,0 +1,220 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/">
<!--
org.freedesktop.NetworkManager.Settings.Connection:
@short_description: Connection Settings Profile.
Represents a single network connection configuration.
-->
<interface name="org.freedesktop.NetworkManager.Settings.Connection">
<!--
Update:
@properties: New connection settings, properties, and (optionally) secrets.
Update the connection with new settings and properties (replacing all
previous settings and properties) and save the connection to disk. Secrets
may be part of the update request, and will be either stored in persistent
storage or sent to a Secret Agent for storage, depending on the flags
associated with each secret.
-->
<method name="Update">
<arg name="properties" type="a{sa{sv}}" direction="in"/>
</method>
<!--
UpdateUnsaved:
@properties: New connection settings, properties, and (optionally) secrets.
Update the connection with new settings and properties (replacing all
previous settings and properties) but do not immediately save the
connection to disk. Secrets may be part of the update request and may sent
to a Secret Agent for storage, depending on the flags associated with each
secret. Use the 'Save' method to save these changes to disk. Note that
unsaved changes will be lost if the connection is reloaded from disk
(either automatically on file change or due to an explicit
ReloadConnections call).
-->
<method name="UpdateUnsaved">
<arg name="properties" type="a{sa{sv}}" direction="in"/>
</method>
<!--
Delete:
Delete the connection.
-->
<method name="Delete"/>
<!--
GetSettings:
@settings: The nested settings maps describing this object.
Get the settings maps describing this network configuration. This will
never include any secrets required for connection to the network, as those
are often protected. Secrets must be requested separately using the
GetSecrets() call.
-->
<method name="GetSettings">
<arg name="settings" type="a{sa{sv}}" direction="out"/>
</method>
<!--
GetSecrets:
@setting_name: Name of the setting to return secrets for. If empty, all secrets will be returned.
@secrets: Nested settings maps containing secrets.
Get the secrets belonging to this network configuration. Only secrets from
persistent storage or a Secret Agent running in the requestor's session
will be returned. The user will never be prompted for secrets as a result
of this request.
-->
<method name="GetSecrets">
<arg name="setting_name" type="s" direction="in"/>
<arg name="secrets" type="a{sa{sv}}" direction="out"/>
</method>
<!--
ClearSecrets:
Clear the secrets belonging to this network connection profile.
-->
<method name="ClearSecrets"/>
<!--
Save:
Saves a "dirty" connection (that had previously been updated with
UpdateUnsaved) to persistent storage.
-->
<method name="Save"/>
<!--
Updated:
Emitted when any settings or permissions change. When handling this
signal, clients should re-read the connection using the GetSettings method
to get the changes and to ensure the client still has permission to access
the connection.
-->
<signal name="Updated"/>
<!--
Update2:
@settings: New connection settings, properties, and (optionally) secrets. Provide an empty array to use the current settings.
@flags: Optional flags. Unknown flags cause the call to fail.
@args: Optional arguments dictionary, for extentibility. Specifying unknown keys causes the call to fail.
@result: Currently no results are returned.
@since: 1.12
Update the connection with new settings and properties (replacing all
previous settings and properties).
Update2 is an alternative to
<link linkend="gdbus-method-org-freedesktop-NetworkManager-Settings-Connection.Update">Update</link>,
<link linkend="gdbus-method-org-freedesktop-NetworkManager-Settings-Connection.UpdateUnsaved">UpdateUnsaved</link>
and <link linkend="gdbus-method-org-freedesktop-NetworkManager-Settings-Connection.Save">Save</link>
extensible with extra %flags and %args arguments.
The %flags argument accepts the combination of following values,
logically or-ed together:
<variablelist>
<varlistentry>
<term><literal>0x1 (to-disk)</literal>:</term>
<listitem><para>The connection is persisted to disk.</para></listitem>
</varlistentry>
<varlistentry>
<term><literal>0x2 (in-memory)</literal>:</term>
<listitem><para>The change is only made in memory (without touching an eventual
profile on disk). If neither 0x1 nor 0x2 is set, the change is made in memory
only, if the connection is already in memory only.</para></listitem>
</varlistentry>
<varlistentry>
<term><literal>0x4 (in-memory-detached)</literal>:</term>
<listitem><para>Like "in-memory", but behaves slightly different when migrating
the profile from disk to in-memory.</para></listitem>
</varlistentry>
<varlistentry>
<term><literal>0x8 (in-memory-only)</literal>:</term>
<listitem><para>Like "in-memory", but behaves slightly different when migrating
the profile from disk to in-memory.</para></listitem>
</varlistentry>
<varlistentry>
<term><literal>0x10 (volatile)</literal>:</term>
</varlistentry>
<varlistentry>
<term><literal>0x20 (block-autoconnect)</literal>:</term>
<listitem><para>Blocks auto-connect on the updated profile</para></listitem>
</varlistentry>
<varlistentry>
<term><literal>0x40 (no-reapply)</literal>:</term>
<listitem><para>Prevents "connection.zone" and "connection.metered" properties
to take effect on currently active devices.</para></listitem>
</varlistentry>
</variablelist>
The %args argument accepts the following keys:
<variablelist>
<varlistentry>
<term><literal>plugin</literal>:</term>
<listitem><para>The settings plugin the connection will be migrated to
such as "keyfile" or "ifcfg-rh".</para>
<para role="since">Since 1.38</para></listitem>
</varlistentry>
</variablelist>
Secrets may be part of the update request, and will be either stored in persistent
storage or sent to a Secret Agent for storage, depending on the flags
associated with each secret.
-->
<method name="Update2">
<arg name="settings" type="a{sa{sv}}" direction="in"/>
<arg name="flags" type="u" direction="in"/>
<arg name="args" type="a{sv}" direction="in"/>
<arg name="result" type="a{sv}" direction="out"/>
</method>
<!--
Removed:
Emitted when this connection is no longer available. This happens when the
connection is deleted or if it is no longer accessible by any of the
system's logged-in users. After receipt of this signal, the object no
longer exists. Also see the Settings.ConnectionRemoved signal.
-->
<signal name="Removed"/>
<!--
Unsaved:
If set, indicates that the in-memory state of the connection does not
match the on-disk state. This flag will be set when UpdateUnsaved() is
called or when any connection details change, and cleared when the
connection is saved to disk via Save() or from internal operations.
-->
<property name="Unsaved" type="b" access="read"/>
<!--
Flags:
@since: 1.12
Additional flags of the connection profile.
Returns: <link linkend="NMSettingsConnectionFlags">NMSettingsConnectionFlags</link>
-->
<property name="Flags" type="u" access="read"/>
<!--
Filename:
@since: 1.12
File that stores the connection in case the connection is file-backed.
-->
<property name="Filename" type="s" access="read"/>
</interface>
</node>
@@ -0,0 +1,223 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/org/freedesktop/NetworkManager/Settings">
<!--
org.freedesktop.NetworkManager.Settings:
@short_description: Connection Settings Profile Manager.
The Settings interface allows clients to view and administrate the
connections stored and used by NetworkManager.
-->
<interface name="org.freedesktop.NetworkManager.Settings">
<!--
ListConnections:
@connections: List of connections.
List the saved network connections known to NetworkManager.
-->
<method name="ListConnections">
<arg name="connections" type="ao" direction="out"/>
</method>
<!--
GetConnectionByUuid:
@uuid: The UUID to find the connection object path for.
@connection: The connection's object path.
Retrieve the object path of a connection, given that connection's UUID.
-->
<method name="GetConnectionByUuid">
<arg name="uuid" type="s" direction="in"/>
<arg name="connection" type="o" direction="out"/>
</method>
<!--
AddConnection:
@connection: Connection settings and properties.
@path: Object path of the new connection that was just added.
Add new connection and save it to disk. This operation does not start the
network connection unless (1) device is idle and able to connect to the
network described by the new connection, and (2) the connection is allowed
to be started automatically.
-->
<method name="AddConnection">
<arg name="connection" type="a{sa{sv}}" direction="in"/>
<arg name="path" type="o" direction="out"/>
</method>
<!--
AddConnectionUnsaved:
@connection: Connection settings and properties.
@path: Object path of the new connection that was just added.
Add new connection but do not save it to disk immediately. This operation
does not start the network connection unless (1) device is idle and able
to connect to the network described by the new connection, and (2) the
connection is allowed to be started automatically. Use the 'Save' method
on the connection to save these changes to disk.
-->
<method name="AddConnectionUnsaved">
<arg name="connection" type="a{sa{sv}}" direction="in"/>
<arg name="path" type="o" direction="out"/>
</method>
<!--
AddConnection2:
@settings: New connection settings, properties, and (optionally) secrets.
@flags: Flags. Unknown flags cause the call to fail.
@args: Optional arguments dictionary, for extentibility. Specifying unknown keys causes the call to fail.
@path: Object path of the new connection that was just added.
@result: Output argument, currently no additional results are returned.
@since: 1.20
Add a new connection profile.
AddConnection2 is an alternative to
<link linkend="gdbus-method-org-freedesktop-NetworkManager-Settings.AddConnection">AddConnection</link> and
<link linkend="gdbus-method-org-freedesktop-NetworkManager-Settings.AddConnectionUnsaved">AddConnectionUnsaved</link>.
The new variant can do everything that the older variants could, and more.
Its behavior is extensible via extra %flags and %args arguments.
The %flags argument accepts the combination of following values,
logically or-ed together:
<variablelist>
<varlistentry>
<term><literal>0x1 (to-disk)</literal>:</term>
<listitem><para>The connection is persisted to disk.</para></listitem>
</varlistentry>
<varlistentry>
<term><literal>0x2 (in-memory)</literal>:</term>
<listitem><para>The change is only made in memory (without touching an eventual
profile on disk). If neither 0x1 nor 0x2 is set, the change is made in memory
only, if the connection is already in memory only.</para></listitem>
</varlistentry>
<varlistentry>
<term><literal>0x20 (block-autoconnect)</literal>:</term>
<listitem><para>Blocks auto-connect on the new profile</para></listitem>
</varlistentry>
</variablelist>
The %args argument accepts the following keys:
<variablelist>
<varlistentry>
<term><literal>plugin</literal>:</term>
<listitem><para>The settings plugin the newly added connection will
use, such as "keyfile" or "ifcfg-rh".</para>
<para role="since">Since 1.38</para></listitem>
</varlistentry>
</variablelist>
Either the flags 0x1 (to-disk) or 0x2 (in-memory) must be specified.
The effect is whether to behave like
<link linkend="gdbus-method-org-freedesktop-NetworkManager-Settings.AddConnection">AddConnection</link> or
<link linkend="gdbus-method-org-freedesktop-NetworkManager-Settings.AddConnectionUnsaved">AddConnectionUnsaved</link>.
-->
<method name="AddConnection2">
<arg name="settings" type="a{sa{sv}}" direction="in"/>
<arg name="flags" type="u" direction="in"/>
<arg name="args" type="a{sv}" direction="in"/>
<arg name="path" type="o" direction="out"/>
<arg name="result" type="a{sv}" direction="out"/>
</method>
<!--
LoadConnections:
@filenames: Array of paths to on-disk connection profiles in directories monitored by NetworkManager.
@status: Success or failure of the operation as a whole. True if NetworkManager at least tried to load the indicated connections, even if it did not succeed. False if an error occurred before trying to load the connections (eg, permission denied).
@failures: Paths of connection files that could not be loaded.
Loads or reloads the indicated connections from disk. You should call this
after making changes directly to an on-disk connection file to make sure
that NetworkManager sees the changes.
As with AddConnection(), this operation does not necessarily
start the network connection.
Note that before 1.20, NetworkManager had a bug and this @status value was wrong.
It is better to assume success if the method does not return with a D-Bus error.
On top of that, you can look at @failures to know whether any of the requested files failed.
-->
<method name="LoadConnections">
<arg name="filenames" type="as" direction="in"/>
<arg name="status" type="b" direction="out"/>
<arg name="failures" type="as" direction="out"/>
</method>
<!--
ReloadConnections:
@status: This always returns %TRUE.
Tells NetworkManager to reload all connection files from disk, including
noticing any added or deleted connection files.
-->
<method name="ReloadConnections">
<arg name="status" type="b" direction="out"/>
</method>
<!--
SaveHostname:
@hostname: The hostname to save to persistent configuration. If blank, the persistent hostname is cleared.
Save the hostname to persistent configuration.
-->
<method name="SaveHostname">
<arg name="hostname" type="s" direction="in"/>
</method>
<!--
Connections:
List of object paths of available network connection profiles.
-->
<property name="Connections" type="ao" access="read"/>
<!--
Hostname:
The machine hostname stored in persistent configuration.
-->
<property name="Hostname" type="s" access="read"/>
<!--
CanModify:
If true, adding and modifying connections is supported.
-->
<property name="CanModify" type="b" access="read"/>
<!--
NewConnection:
@connection: Object path of the new connection.
Emitted when a new connection has been added after NetworkManager has
started up and initialized. This signal is not emitted for connections
read while starting up, because NetworkManager's D-Bus service is only
available after all connections have been read, and to prevent spamming
listeners with too many signals at one time. To retrieve the initial
connection list, call the ListConnections() method once, and then listen
for individual Settings.NewConnection and Settings.Connection.Deleted
signals for further updates.
-->
<signal name="NewConnection">
<arg name="connection" type="o"/>
</signal>
<!--
ConnectionRemoved:
@connection: Object path of the removed connection.
Emitted when a connection is no longer available. This happens when the
connection is deleted or if it is no longer accessible by any of the
system's logged-in users. After receipt of this signal, the connection no
longer exists and cannot be used. Also see the Settings.Connection.Removed
signal.
-->
<signal name="ConnectionRemoved">
<arg name="connection" type="o"/>
</signal>
</interface>
</node>
@@ -0,0 +1,42 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/">
<!--
org.freedesktop.NetworkManager.VPN.Connection:
@short_description: Active VPN Connection.
Represents an active connection to a Virtual Private Network.
-->
<interface name="org.freedesktop.NetworkManager.VPN.Connection">
<annotation name="org.gtk.GDBus.C.Name" value="VpnConnection"/>
<!--
VpnState:
The VPN-specific state of the connection.
Returns: <link linkend="NMVpnConnectionState">NMVpnConnectionState</link>
-->
<property name="VpnState" type="u" access="read"/>
<!--
Banner:
The banner string of the VPN connection.
-->
<property name="Banner" type="s" access="read"/>
<!--
VpnStateChanged:
@state: (<link linkend="NMVpnConnectionState">NMVpnConnectionState</link>) The new state of the VPN connection.
@reason: (<link linkend="NMActiveConnectionStateReason">NMActiveConnectionStateReason</link>) Reason code describing the change to the new state.
Emitted when the state of the VPN connection has changed.
-->
<signal name="VpnStateChanged">
<arg name="state" type="u"/>
<arg name="reason" type="u"/>
</signal>
</interface>
</node>
@@ -0,0 +1,204 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/">
<!--
org.freedesktop.NetworkManager.VPN.Plugin:
@short_description: VPN Service.
This interface is provided by plugins providing VPN services to the
NetworkManager daemon.
-->
<interface name="org.freedesktop.NetworkManager.VPN.Plugin">
<annotation name="org.gtk.GDBus.C.Name" value="VpnPlugin"/>
<!--
Connect:
@connection: Describes the connection to be established.
Tells the plugin to connect. Interactive secrets requests (eg, emitting
the SecretsRequired signal) are not allowed.
-->
<method name="Connect">
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_vpn_plugin_connect"/>
<arg name="connection" type="a{sa{sv}}" direction="in"/>
</method>
<!--
ConnectInteractive:
@connection: Describes the connection to be established.
@details: Additional details about the Connect process.
Tells the plugin to connect, allowing interactive secrets requests (eg the
plugin is allowed to emit the SecretsRequired signal if the VPN service
indicates that it needs additional secrets during the connect process).
-->
<method name="ConnectInteractive">
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_vpn_plugin_connect_interactive"/>
<arg name="connection" type="a{sa{sv}}" direction="in"/>
<arg name="details" type="a{sv}" direction="in"/>
</method>
<!--
NeedSecrets:
@settings: Describes the connection that may need secrets.
@setting_name: The setting name within the provided connection that requires secrets, if any.
Asks the plugin whether the provided connection will require secrets to
connect successfully.
-->
<method name="NeedSecrets">
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_vpn_plugin_need_secrets"/>
<arg name="settings" type="a{sa{sv}}" direction="in"/>
<arg name="setting_name" type="s" direction="out"/>
</method>
<!--
Disconnect:
Disconnect the plugin.
-->
<method name="Disconnect">
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_vpn_plugin_disconnect"/>
</method>
<!--
SetConfig:
@config: Generic configuration details for the connection.
Set generic connection details on the connection.
-->
<method name="SetConfig">
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_vpn_plugin_set_config"/>
<arg name="config" type="a{sv}" direction="in"/>
</method>
<!--
SetIp4Config:
@config: Ip4Config details for the connection. You must call SetConfig() before calling this.
Set IPv4 details on the connection.
-->
<method name="SetIp4Config">
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_vpn_plugin_set_ip4_config"/>
<arg name="config" type="a{sv}" direction="in"/>
</method>
<!--
SetIp6Config:
@config: Ip6Config details for the connection. You must call SetConfig() before calling this.
Set IPv6 details on the connection.
-->
<method name="SetIp6Config">
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_vpn_plugin_set_ip6_config"/>
<arg name="config" type="a{sv}" direction="in"/>
</method>
<!--
SetFailure:
@reason: The reason for the failure.
Indicate a failure to the plugin.
-->
<method name="SetFailure">
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_vpn_plugin_set_failure"/>
<arg name="reason" type="s" direction="in"/>
</method>
<!--
State:
The state of the plugin.
Returns: <link linkend="NMVpnServiceState">NMVpnServiceState</link>
-->
<property name="State" type="u" access="read"/>
<!--
StateChanged:
@state: (<link linkend="NMVpnServiceState">NMVpnServiceState</link>) The new state of the plugin.
Emitted when the plugin state changes.
-->
<signal name="StateChanged">
<arg name="state" type="u"/>
</signal>
<!--
SecretsRequired:
@message: Informational message, if any, about the request. For example, if a second PIN is required, could indicate to the user to wait for the token code to change until entering the next PIN.
@secrets: Array of strings of VPN secret names which the plugin thinks secrets may be required for, or other VPN-specific data to be processed by the VPN's front-end.
Emitted during an ongoing ConnectInteractive() request when the plugin has
determined that new secrets are required. NetworkManager will then call
the NewSecrets() method with a connection hash including the new secrets.
-->
<signal name="SecretsRequired">
<arg name="message" type="s" direction="out"/>
<arg name="secrets" type="as" direction="out"/>
</signal>
<!--
NewSecrets:
@connection: Describes the connection including the new secrets.
Called in response to a SecretsRequired signal to deliver updated secrets
or other information to the plugin.
-->
<method name="NewSecrets">
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_vpn_plugin_new_secrets"/>
<arg name="connection" type="a{sa{sv}}" direction="in"/>
</method>
<!--
Config:
@config: The configuration information.
The plugin obtained generic configuration information.
-->
<signal name="Config">
<arg name="config" type="a{sv}"/>
</signal>
<!--
Ip4Config:
@ip4config: The IPv4 configuration.
The plugin obtained an IPv4 configuration.
-->
<signal name="Ip4Config">
<arg name="ip4config" type="a{sv}"/>
</signal>
<!--
Ip6Config:
@ip6config: The IPv6 configuration.
The plugin obtained an IPv6 configuration.
-->
<signal name="Ip6Config">
<arg name="ip6config" type="a{sv}"/>
</signal>
<!--
LoginBanner:
@banner: The login banner string.
Emitted when the plugin receives a login banner from the VPN service.
-->
<signal name="LoginBanner">
<arg name="banner" type="s"/>
</signal>
<!--
Failure:
@reason: (<link linkend="NMVpnPluginFailure">NMVpnPluginFailure</link>) Reason code for the failure.
Emitted when a failure in the VPN plugin occurs.
-->
<signal name="Failure">
<arg name="reason" type="u"/>
</signal>
</interface>
</node>
@@ -0,0 +1,35 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/">
<!--
org.freedesktop.NetworkManager.WiMax.Nsp:
@short_description: WiMax Network Service Provider.
DEPRECATED: NetworkManager no longer supports WiMAX since version 1.2. This interface is no longer used.
-->
<interface name="org.freedesktop.NetworkManager.WiMax.Nsp">
<!--
Name:
The name of the NSP.
-->
<property name="Name" type="s" access="read"/>
<!--
SignalQuality:
The current signal quality of the NSP, in percent.
-->
<property name="SignalQuality" type="u" access="read"/>
<!--
NetworkType:
The network type of the NSP.
Returns: <link linkend="NMWimaxNspNetworkType">NMWimaxNspNetworkType</link>
-->
<property name="NetworkType" type="u" access="read"/>
</interface>
</node>
@@ -0,0 +1,91 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/">
<!--
org.freedesktop.NetworkManager.WifiP2PPeer:
@short_description: Wi-Fi P2P Peer.
@since: 1.16
-->
<interface name="org.freedesktop.NetworkManager.WifiP2PPeer">
<annotation name="org.gtk.GDBus.C.Name" value="Wifi_P2P_Peer"/>
<!--
before 1.24, we wrongly exposed a property "Groups" ("as"). Don't reuse
that property name.
-->
<!--
Name:
Device name.
-->
<property name="Name" type="s" access="read"/>
<!--
Flags:
Flags describing the capabilities of the access point.
Returns: <link linkend="NM80211ApFlags">NM80211ApFlags</link>
-->
<property name="Flags" type="u" access="read"/>
<!--
Manufacturer:
The manufacturer of the Wi-Fi P2P peer.
-->
<property name="Manufacturer" type="s" access="read"/>
<!--
Model:
The model of the Wi-Fi P2P peer.
-->
<property name="Model" type="s" access="read"/>
<!--
ModelNumber:
The model number of the Wi-Fi P2P peer.
-->
<property name="ModelNumber" type="s" access="read"/>
<!--
Serial:
The serial number of the Wi-Fi P2P peer.
-->
<property name="Serial" type="s" access="read"/>
<!--
WfdIEs:
The Wi-Fi Display Information Elements of the Wi-Fi P2P peer.
-->
<property name="WfdIEs" type="ay" access="read"/>
<!--
HwAddress:
The hardware address (BSSID) of the access point.
-->
<property name="HwAddress" type="s" access="read"/>
<!--
Strength:
The current signal quality of the access point, in percent.
-->
<property name="Strength" type="y" access="read"/>
<!--
LastSeen:
The timestamp (in CLOCK_BOOTTIME seconds) for the last time the access
point was found in scan results. A value of -1 means the access point has
never been found in scan results.
-->
<property name="LastSeen" type="i" access="read"/>
</interface>
</node>
@@ -0,0 +1,598 @@
<?xml version="1.0" encoding="UTF-8"?>
<node name="/org/freedesktop/NetworkManager">
<!--
org.freedesktop.NetworkManager:
@short_description: Connection Manager.
-->
<interface name="org.freedesktop.NetworkManager">
<annotation name="org.gtk.GDBus.C.Name" value="Manager"/>
<!--
Reload:
@flags: Optional flags to specify which parts shall be reloaded.
Reload NetworkManager's configuration and perform certain updates, like flushing a cache or
rewriting external state to disk. This is similar to sending SIGHUP to NetworkManager but it
allows for more fine-grained control over what to reload (see @flags). It also allows
non-root access via PolicyKit and contrary to signals it is synchronous.
No flags (0x00) means to reload everything that is supported which is identical to
sending a SIGHUP.
(0x01) means to reload the NetworkManager.conf configuration from disk. Note that this
does not include connections, which can be reloaded via Setting's ReloadConnections.
(0x02) means to update DNS configuration, which usually involves writing /etc/resolv.conf
anew.
(0x04) means to restart the DNS plugin. This is for example useful when using
dnsmasq plugin, which uses additional configuration in /etc/NetworkManager/dnsmasq.d.
If you edit those files, you can restart the DNS plugin. This action shortly interrupts
name resolution.
Note that flags may affect each other. For example, restarting the DNS plugin (0x04)
implicitly updates DNS too (0x02). Or when reloading the configuration (0x01), changes
to DNS setting also cause a DNS update (0x02). However, (0x01) does not involve restarting
the DNS plugin (0x04) or update resolv.conf (0x02), unless the DNS related configuration
changes in NetworkManager.conf.
-->
<method name="Reload">
<arg name="flags" type="u" direction="in"/>
</method>
<!--
GetDevices:
@devices: List of object paths of network devices known to the system. This list does not include device placeholders (see GetAllDevices()).
Get the list of realized network devices.
-->
<method name="GetDevices">
<arg name="devices" type="ao" direction="out"/>
</method>
<!--
GetAllDevices:
@devices: List of object paths of network devices and device placeholders (eg, devices that do not yet exist but which can be automatically created by NetworkManager if one of their AvailableConnections was activated).
Get the list of all network devices.
-->
<method name="GetAllDevices">
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_manager_get_all_devices"/>
<arg name="devices" type="ao" direction="out"/>
</method>
<!--
GetDeviceByIpIface:
@iface: Interface name of the device to find.
@device: Object path of the network device.
Return the object path of the network device referenced by its IP
interface name. Note that some devices (usually modems) only have an IP
interface name when they are connected.
-->
<method name="GetDeviceByIpIface">
<arg name="iface" type="s" direction="in"/>
<arg name="device" type="o" direction="out"/>
</method>
<!--
ActivateConnection:
@connection: The connection to activate. If "/" is given, a valid device path must be given, and NetworkManager picks the best connection to activate for the given device. VPN connections must always pass a valid connection path.
@device: The object path of device to be activated for physical connections. This parameter is ignored for VPN connections, because the specific_object (if provided) specifies the device to use.
@specific_object: The path of a connection-type-specific object this activation should use. This parameter is currently ignored for wired and mobile broadband connections, and the value of "/" should be used (ie, no specific object). For Wi-Fi connections, pass the object path of a specific AP from the card's scan list, or "/" to pick an AP automatically. For VPN connections, pass the object path of an ActiveConnection object that should serve as the "base" connection (to which the VPN connections lifetime will be tied), or pass "/" and NM will automatically use the current default device.
@active_connection: The path of the active connection object representing this active connection.
Activate a connection using the supplied device.
-->
<method name="ActivateConnection">
<arg name="connection" type="o" direction="in"/>
<arg name="device" type="o" direction="in"/>
<arg name="specific_object" type="o" direction="in"/>
<arg name="active_connection" type="o" direction="out"/>
</method>
<!--
AddAndActivateConnection:
@connection: Connection settings and properties; if incomplete missing settings will be automatically completed using the given device and specific object.
@device: The object path of device to be activated using the given connection.
@specific_object: The path of a connection-type-specific object this activation should use. This parameter is currently ignored for wired and mobile broadband connections, and the value of "/" should be used (ie, no specific object). For Wi-Fi connections, pass the object path of a specific AP from the card's scan list, which will be used to complete the details of the newly added connection.
@path: Object path of the new connection that was just added.
@active_connection: The path of the active connection object representing this active connection.
Adds a new connection using the given details (if any) as a template
(automatically filling in missing settings with the capabilities of the
given device and specific object), then activate the new connection.
Cannot be used for VPN connections at this time.
See also AddAndActivateConnection2.
-->
<method name="AddAndActivateConnection">
<arg name="connection" type="a{sa{sv}}" direction="in"/>
<arg name="device" type="o" direction="in"/>
<arg name="specific_object" type="o" direction="in"/>
<arg name="path" type="o" direction="out"/>
<arg name="active_connection" type="o" direction="out"/>
</method>
<!--
AddAndActivateConnection2:
@connection: Connection settings and properties; if incomplete missing settings will be automatically completed using the given device and specific object.
@device: The object path of device to be activated using the given connection.
@specific_object: The path of a connection-type-specific object this activation should use. This parameter is currently ignored for wired and mobile broadband connections, and the value of "/" should be used (ie, no specific object). For Wi-Fi connections, pass the object path of a specific AP from the card's scan list, which will be used to complete the details of the newly added connection.
@options: Further options for the method call.
@path: Object path of the new connection that was just added.
@active_connection: The path of the active connection object representing this active connection.
@result: A dictionary of additional output arguments for future extension. Currently, not additional output arguments are supported.
Adds a new connection using the given details (if any) as a template
(automatically filling in missing settings with the capabilities of the
given device and specific object), then activate the new connection.
Cannot be used for VPN connections at this time.
This method extends AddAndActivateConnection to allow passing further
parameters. At this time the following options are supported:
* persist: A string value of either "disk" (default), "memory" or "volatile". If "memory" is passed, the connection will not be saved to disk. If "volatile" is passed, the connection will not be saved to disk and will be destroyed when disconnected.
* bind-activation: Bind the activation lifetime. Set to "dbus-client" to automatically disconnect when the requesting process disappears from the bus. The default of "none" means the connection is kept activated normally.
-->
<method name="AddAndActivateConnection2">
<arg name="connection" type="a{sa{sv}}" direction="in"/>
<arg name="device" type="o" direction="in"/>
<arg name="specific_object" type="o" direction="in"/>
<arg name="options" type="a{sv}" direction="in"/>
<arg name="path" type="o" direction="out"/>
<arg name="active_connection" type="o" direction="out"/>
<arg name="result" type="a{sv}" direction="out"/>
</method>
<!--
DeactivateConnection:
@active_connection: The currently active connection to deactivate.
Deactivate an active connection.
-->
<method name="DeactivateConnection">
<arg name="active_connection" type="o" direction="in"/>
</method>
<!--
Sleep:
@sleep: Indicates whether the NetworkManager daemon should sleep or wake.
Control the NetworkManager daemon's sleep state. When asleep, all
interfaces that it manages are deactivated. When awake, devices are
available to be activated. This command should not be called directly by
users or clients; it is intended for system suspend/resume tracking.
-->
<method name="Sleep">
<arg name="sleep" type="b" direction="in"/>
</method>
<!--
Enable:
@enable: If FALSE, indicates that all networking should be disabled. If TRUE, indicates that NetworkManager should begin managing network devices.
Control whether overall networking is enabled or disabled. When disabled,
all interfaces that NM manages are deactivated. When enabled, all managed
interfaces are re-enabled and available to be activated. This command
should be used by clients that provide to users the ability to
enable/disable all networking.
-->
<method name="Enable">
<arg name="enable" type="b" direction="in"/>
</method>
<!--
GetPermissions:
@permissions: Dictionary of available permissions and results. Each permission is represented by a name (ie "org.freedesktop.NetworkManager.Foobar") and each result is one of the following values: "yes" (the permission is available), "auth" (the permission is available after a successful authentication), or "no" (the permission is denied). Clients may use these values in the UI to indicate the ability to perform certain operations.
Returns the permissions a caller has for various authenticated operations
that NetworkManager provides, like Enable/Disable networking, changing
Wi-Fi, WWAN, and WiMAX state, etc.
-->
<method name="GetPermissions">
<arg name="permissions" type="a{ss}" direction="out"/>
</method>
<!--
CheckPermissions:
Emitted when system authorization details change, indicating that clients
may wish to recheck permissions with GetPermissions.
-->
<signal name="CheckPermissions"/>
<!--
SetLogging:
@level: One of [ERR, WARN, INFO, DEBUG, TRACE, OFF, KEEP]. This level is applied to the domains as specified in the domains argument. Except for the special level "KEEP", all unmentioned domains are disabled entirely. "KEEP" is special and allows not to change the current setting except for the specified domains. E.g. level=KEEP and domains=PLATFORM:DEBUG will only touch the platform domain.
@domains: A combination of logging domains separated by commas (','), or "NONE" to disable logging. Each domain enables logging for operations related to that domain. Available domains are: [PLATFORM, RFKILL, ETHER, WIFI, BT, MB, DHCP4, DHCP6, PPP, WIFI_SCAN, IP4, IP6, AUTOIP4, DNS, VPN, SHARING, SUPPLICANT, AGENTS, SETTINGS, SUSPEND, CORE, DEVICE, OLPC, WIMAX, INFINIBAND, FIREWALL, ADSL, BOND, VLAN, BRIDGE, DBUS_PROPS, TEAM, CONCHECK, DCB, DISPATCH, AUDIT]. In addition to these domains, the following special domains can be used: [NONE, ALL, DEFAULT, DHCP, IP]. You can also specify that some domains should log at a different level from the default by appending a colon (':') and a log level (eg, 'WIFI:DEBUG'). If an empty string is given, the log level is changed but the current set of log domains remains unchanged.
Set logging verbosity and which operations are logged.
-->
<method name="SetLogging">
<arg name="level" type="s" direction="in"/>
<arg name="domains" type="s" direction="in"/>
</method>
<!--
GetLogging:
@level: One of [ERR, WARN, INFO, DEBUG, TRACE].
@domains: For available domains see SetLogging() call.
Get current logging verbosity level and operations domains.
-->
<method name="GetLogging">
<arg name="level" type="s" direction="out"/>
<arg name="domains" type="s" direction="out"/>
</method>
<!--
CheckConnectivity:
@connectivity: (<link linkend="NMConnectivityState">NMConnectivityState</link>) The current connectivity state.
Re-check the network connectivity state.
-->
<method name="CheckConnectivity">
<arg name="connectivity" type="u" direction="out"/>
</method>
<!--
state:
@state: <link linkend="NMState">NMState</link>
The overall networking state as determined by the NetworkManager daemon,
based on the state of network devices under its management.
-->
<method name="state">
<arg name="state" type="u" direction="out"/>
</method>
<!--
CheckpointCreate:
@devices: A list of device paths for which a checkpoint should be created. An empty list means all devices.
@rollback_timeout: The time in seconds until NetworkManager will automatically rollback to the checkpoint. Set to zero for infinite.
@flags: (<link linkend="NMCheckpointCreateFlags">NMCheckpointCreateFlags</link>) Flags for the creation.
@checkpoint: On success, the path of the new checkpoint.
Create a checkpoint of the current networking configuration
for given interfaces. If @rollback_timeout is not zero, a
rollback is automatically performed after the given timeout.
-->
<method name="CheckpointCreate">
<arg name="devices" type="ao" direction="in"/>
<arg name="rollback_timeout" type="u" direction="in"/>
<arg name="flags" type="u" direction="in"/>
<arg name="checkpoint" type="o" direction="out"/>
</method>
<!--
CheckpointDestroy:
@checkpoint: The checkpoint to be destroyed. Set to empty to cancel all pending checkpoints.
Destroy a previously created checkpoint.
-->
<method name="CheckpointDestroy">
<arg name="checkpoint" type="o" direction="in"/>
</method>
<!--
CheckpointRollback:
@checkpoint: The checkpoint to be rolled back.
@result: On return, a dictionary of devices and results. Devices are represented by their original D-Bus path; each result is a <link linkend="NMRollbackResult">RollbackResult</link>.
Rollback a checkpoint before the timeout is reached.
-->
<method name="CheckpointRollback">
<arg name="checkpoint" type="o" direction="in"/>
<arg name="result" type="a{su}" direction="out" />
</method>
<!--
CheckpointAdjustRollbackTimeout:
@checkpoint: The checkpoint to be rolled back.
@add_timeout: Number of seconds from <emphasis>now</emphasis> in which the timeout will expire. Set to 0 to disable the timeout.
@since: 1.12
Reset the timeout for rollback for the checkpoint.
Note that the added seconds start counting from now,
not "Created" timestamp or the previous expiration
time. Note that the "Created" property of the checkpoint
will stay unchanged by this call. However, the "RollbackTimeout"
will be recalculated to give the approximate new expiration time.
The new "RollbackTimeout" property will be approximate up to
one second precision, which is the accuracy of the property.
-->
<method name="CheckpointAdjustRollbackTimeout">
<arg name="checkpoint" type="o" direction="in"/>
<arg name="add_timeout" type="u" direction="in"/>
</method>
<!--
Devices:
The list of realized network devices. Realized devices are those which
have backing resources (eg from the kernel or a management daemon like
ModemManager, teamd, etc).
-->
<property name="Devices" type="ao" access="read"/>
<!--
AllDevices:
The list of both realized and un-realized network devices. Un-realized
devices are software devices which do not yet have backing resources, but
for which backing resources can be created if the device is activated.
-->
<property name="AllDevices" type="ao" access="read"/>
<!--
Checkpoints:
The list of active checkpoints.
-->
<property name="Checkpoints" type="ao" access="read"/>
<!--
NetworkingEnabled:
Indicates if overall networking is currently enabled or not. See the
Enable() method.
-->
<property name="NetworkingEnabled" type="b" access="read"/>
<!--
WirelessEnabled:
Indicates if wireless is currently enabled or not.
-->
<property name="WirelessEnabled" type="b" access="readwrite"/>
<!--
WirelessHardwareEnabled:
Indicates if the wireless hardware is currently enabled, i.e. the state of
the RF kill switch.
-->
<property name="WirelessHardwareEnabled" type="b" access="read"/>
<!--
WwanEnabled:
Indicates if mobile broadband devices are currently enabled or not.
-->
<property name="WwanEnabled" type="b" access="readwrite"/>
<!--
WwanHardwareEnabled:
Indicates if the mobile broadband hardware is currently enabled, i.e. the
state of the RF kill switch.
-->
<property name="WwanHardwareEnabled" type="b" access="read"/>
<!--
WimaxEnabled:
DEPRECATED. Doesn't have any meaning and is around only for
compatibility reasons.
-->
<property name="WimaxEnabled" type="b" access="readwrite"/>
<!--
WimaxHardwareEnabled:
DEPRECATED. Doesn't have any meaning and is around only for
compatibility reasons.
-->
<property name="WimaxHardwareEnabled" type="b" access="read"/>
<!--
RadioFlags:
@since: 1.38
Flags related to radio devices. See <link
linkend="NMRadioFlags">NMRadioFlags</link> for the list of flags
supported.
-->
<property name="RadioFlags" type="u" access="read"/>
<!--
ActiveConnections:
List of active connection object paths.
-->
<property name="ActiveConnections" type="ao" access="read"/>
<!--
PrimaryConnection:
The object path of the "primary" active connection being used to access
the network. In particular, if there is no VPN active, or the VPN does not
have the default route, then this indicates the connection that has the
default route. If there is a VPN active with the default route, then this
indicates the connection that contains the route to the VPN endpoint.
-->
<property name="PrimaryConnection" type="o" access="read"/>
<!--
PrimaryConnectionType:
The connection type of the "primary" active connection being used to
access the network. This is the same as the Type property on the object
indicated by PrimaryConnection.
-->
<property name="PrimaryConnectionType" type="s" access="read"/>
<!--
Metered:
Indicates whether the connectivity is metered. This is equivalent to the
metered property of the device associated with the primary connection.
Returns: <link linkend="NMMetered">NMMetered</link>
-->
<property name="Metered" type="u" access="read"/>
<!--
ActivatingConnection:
The object path of an active connection that is currently being activated
and which is expected to become the new PrimaryConnection when it finishes
activating.
-->
<property name="ActivatingConnection" type="o" access="read"/>
<!--
Startup:
Indicates whether NM is still starting up; this becomes FALSE when NM has
finished attempting to activate every connection that it might be able to
activate at startup.
-->
<property name="Startup" type="b" access="read"/>
<!--
Version:
NetworkManager version.
-->
<property name="Version" type="s" access="read"/>
<!--
VersionInfo:
NetworkManager version and capabilities.
The first element in the array is the NM_VERSION of the daemon. It is a binary representation
of the "Version" and can be compared numerically. The version is encoded as
"(major &lt;&lt; 16 | minor &lt;&lt; 8 | micro)".
The following elements are a bitfield of static capabilities of the daemon. See
#NMVersionInfoCapability for the available capability numbers.
Since: 1.42
-->
<property name="VersionInfo" type="au" access="read"/>
<!--
Capabilities:
The current set of capabilities. See <link
linkend="NMCapability">NMCapability</link> for currently
defined capability numbers. The array is guaranteed to
be sorted in ascending order without duplicates.
-->
<property name="Capabilities" type="au" access="read"/>
<!--
State:
The overall state of the NetworkManager daemon.
This takes state of all active connections and the connectivity state into account
to produce a single indicator of the network accessibility status.
The graphical shells may use this property to provide network connection status
indication and applications may use this to check if Internet connection is
accessible. Shell that is able to cope with captive portals should use the
"Connectivity" property to decide whether to present a captive portal authentication
dialog.
Returns: <link linkend="NMState">NMState</link>
-->
<property name="State" type="u" access="read"/>
<!--
StateChanged:
@state: (<link linkend="NMState">NMState</link>) The new state of NetworkManager.
NetworkManager's state changed.
-->
<signal name="StateChanged">
<arg name="state" type="u"/>
</signal>
<!--
Connectivity:
The result of the last connectivity check. The connectivity check is triggered
automatically when a default connection becomes available, periodically and by
calling a CheckConnectivity() method.
This property is in general useful for the graphical shell to determine whether
the Internet access is being hijacked by an authentication gateway (a "captive
portal"). In such case it would typically present a web browser window to give
the user a chance to authenticate and call CheckConnectivity() when the user
submits a form or dismisses the window.
To determine the whether the user is able to access the Internet without dealing
with captive portals (e.g. to provide a network connection indicator or disable
controls that require Internet access), the "State" property is more suitable.
Returns: <link linkend="NMConnectivityState">NMConnectivityState</link>
-->
<property name="Connectivity" type="u" access="read"/>
<!--
ConnectivityCheckAvailable:
Indicates whether connectivity checking service has been
configured. This may return true even if the service is not
currently enabled.
This is primarily intended for use in a privacy control panel,
as a way to determine whether to show an option to
enable/disable the feature.
-->
<property name="ConnectivityCheckAvailable" type="b" access="read"/>
<!--
ConnectivityCheckEnabled:
Indicates whether connectivity checking is enabled. This
property can also be written to disable connectivity
checking (as a privacy control panel might want to do).
-->
<property name="ConnectivityCheckEnabled" type="b" access="readwrite"/>
<!--
ConnectivityCheckUri:
The URI that NetworkManager will hit to check if there is internet connectivity.
-->
<property name="ConnectivityCheckUri" type="s" access="read"/>
<!--
GlobalDnsConfiguration:
Dictionary of global DNS settings where the key is one of "searches",
"options" and "domains". The values for the "searches" and "options" keys
are string arrays describing the list of search domains and resolver
options, respectively. The value of the "domains" key is a second-level
dictionary, where each key is a domain name, and each key's value is a
third-level dictionary with the keys "servers" and "options". "servers" is
a string array of DNS servers, "options" is a string array of
domain-specific options.
-->
<property name="GlobalDnsConfiguration" type="a{sv}" access="readwrite"/>
<!--
DeviceAdded:
@device_path: The object path of the newly added device.
A device was added to the system
-->
<signal name="DeviceAdded">
<arg name="device_path" type="o"/>
</signal>
<!--
DeviceRemoved:
@device_path: The object path of the device that was just removed.
A device was removed from the system, and is no longer available.
-->
<signal name="DeviceRemoved">
<arg name="device_path" type="o"/>
</signal>
</interface>
</node>
+1
View File
@@ -0,0 +1 @@
libzip 4 libzip4 (>= 1.0) | libzip5 (>= 1.0)
+1 -3
View File
@@ -54,7 +54,6 @@ message(STATUS "*** ${ftxui_SOURCE_DIR} ${ftxui_BINARY_DIR}")
include(FindPkgConfig)
find_package(sdbus-c++ REQUIRED)
@@ -122,7 +121,6 @@ else()
message(STATUS "LILV_0_INCLUDE_DIRS: ${LILV_0_INCLUDE_DIRS}")
endif()
pkg_check_modules(ZIP "lilv-0")
# Use LV2 headers from the /usr/lib directory.
#set (LV2DEV_INCLUDE_DIRS /usr/lib)
@@ -154,7 +152,7 @@ else()
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-multichar -Wno-psabi")
endif()
EXECUTE_PROCESS( COMMAND dpkg --print-architecture COMMAND tr -d '\n' OUTPUT_VARIABLE DEBIAN_ARCHITECTURE )
execute_process( COMMAND dpkg --print-architecture COMMAND tr -d '\n' OUTPUT_VARIABLE DEBIAN_ARCHITECTURE )
message(STATUS DEBIAN_ARCHITECTURE="${DEBIAN_ARCHITECTURE}")
add_compile_definitions(DEBIAN_ARCHITECTURE="${DEBIAN_ARCHITECTURE}")
+25 -20
View File
@@ -688,14 +688,14 @@ std::vector<std::vector<uint8_t>> HotspotManagerImpl::GetAllAutoConnectSsids()
bool autoConnect = true;
if (settings["connection"].count("autoconnect") > 0)
{
autoConnect = settings["connection"]["autoconnect"];
autoConnect = settings["connection"]["autoconnect"].get<bool>();
}
bool isInfrastructure =
settings["802-11-wireless"].count("mode") > 0 && settings["802-11-wireless"]["mode"].get<std::string>() == "infrastructure";
if (isInfrastructure && autoConnect)
{
std::vector<uint8_t> ssid =
settings["802-11-wireless"]["ssid"];
settings["802-11-wireless"]["ssid"].get<std::vector<uint8_t>>();
ssids.push_back(std::move(ssid));
}
}
@@ -855,18 +855,20 @@ void HotspotManagerImpl::StartHotspot()
std::map<std::string, sdbus::Variant> &connection = settings["connection"];
connection["type"] = "802-11-wireless";
connection["autoconnect"] = false;
connection["id"] = PIPEDAL_HOTSPOT_NAME;
connection["interface-name"] = wlanDevice->Interface();
connection["uuid"] = serviceConfiguration.uuid;
using namespace sdbus;
connection["type"] = sdbus::Variant("802-11-wireless");
connection["autoconnect"] = sdbus::Variant(false);
connection["id"] = sdbus::Variant(PIPEDAL_HOTSPOT_NAME);
connection["interface-name"] = sdbus::Variant(wlanDevice->Interface());
connection["uuid"] = sdbus::Variant(serviceConfiguration.uuid);
std::map<std::string, sdbus::Variant> &wireless = settings["802-11-wireless"];
std::string ssid = this->wifiConfigSettings.hotspotName_;
std::vector<uint8_t> vSsid{ssid.begin(), ssid.end()};
wireless["ssid"] = vSsid;
wireless["mode"] = "ap";
wireless["ssid"] = sdbus::Variant(vSsid);
wireless["mode"] = sdbus::Variant("ap");
uint32_t iChannel = 0;
auto channel = this->wifiConfigSettings.channel_;
@@ -879,18 +881,18 @@ void HotspotManagerImpl::StartHotspot()
// NM "band" values: "a" (5GHz), "bg" (2.4GHz). Channels 1-14 -> 2.4GHz; >14 -> 5GHz.
if (iChannel != 0)
{
wireless["channel"] = iChannel;
wireless["band"] = (iChannel > 14) ? "a" : "bg";
wireless["channel"] = sdbus::Variant(iChannel);
wireless["band"] = sdbus::Variant((iChannel > 14) ? "a" : "bg");
}
std::map<std::string, sdbus::Variant> &wirelessSecurity = settings["802-11-wireless-security"];
wirelessSecurity["key-mgmt"] = "wpa-psk";
wirelessSecurity["psk"] = wifiConfigSettings.password_;
wirelessSecurity["key-mgmt"] = sdbus::Variant("wpa-psk");
wirelessSecurity["psk"] = sdbus::Variant(wifiConfigSettings.password_);
// IPv4 shared method: NM will configure NAT and DHCP; static address is fine.
settings["ipv4"]["method"] = "shared";
settings["ipv4"]["method"] = sdbus::Variant("shared");
// For IPv6, use ignore to avoid advertising IPv6 if not needed; shared IPv6 is less common and can cause issues.
settings["ipv6"]["method"] = "ignore";
settings["ipv6"]["method"] = sdbus::Variant("ignore");
// If IPv6 were used, addr-gen-mode would be numeric enum; with method=ignore, omit it.
////////////////////////////////////////////////////////////////
@@ -903,16 +905,16 @@ void HotspotManagerImpl::StartHotspot()
{"prefix", sdbus::Variant(uint32_t(24))}}});
// For method=shared, NM provides DHCP; explicit DHCP client options on this device are not applicable.
// settings["ipv4"]["dhcp-options"] = sdbus::Variant(std::vector<std::string>{
// "option:classless-static-route,192.168.60.0/8,0.0.0.0,0.0.0.0/0,192.168.60.1"});
// "option:classless-static-route,192.168.60.0/24,0.0.0.0,0.0.0.0/0,192.168.60.1"});
// settings["ipv4"]["dhcp-options"] = sdbus::Variant(std::vector<std::string>{
// "option:classless-static-route,192.168.60.0/8,192.168.60.1"});
// "option:classless-static-route,192.168.60.0/24,192.168.60.1"});
////////////////////////////////////////////////////////////
// With IPv6 ignored, don't set address-data or gateway; NM may reject extraneous keys.
std::map<std::string, sdbus::Variant> options;
options["persist"] = "disk";
options["persist"] = sdbus::Variant("disk");
Connection::ptr existingConnection = FindExistingConnection();
if (existingConnection)
@@ -921,7 +923,7 @@ void HotspotManagerImpl::StartHotspot()
auto activeConnectionPath = networkManager->ActivateConnection(
existingConnection->getObjectPath(),
wlanDevice->getObjectPath(),
"/");
sdbus::ObjectPath("/"));
this->activeConnection = ActiveConnection::Create(dbusDispatcher, activeConnectionPath);
}
else
@@ -930,7 +932,10 @@ void HotspotManagerImpl::StartHotspot()
// Call AddAndActivateConnection2 method to create and activate the hotspot
sdbus::ObjectPath nullPath("/");
auto result = networkManager->AddAndActivateConnection2(
settings, wlanDevice->getObjectPath(), "/", options
settings,
wlanDevice->getObjectPath(),
sdbus::ObjectPath("/"),
options
);
auto connectionPath = std::get<0>(result);