summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLubomir Rintel <lkundrak@v3.sk>2018-05-14 10:09:46 +0200
committerLubomir Rintel <lkundrak@v3.sk>2018-06-26 16:21:54 +0200
commit5036406b582a66784aa1612ca85105ab5b67267a (patch)
tree02ee0d96b1f6f10a35ac1cd0eb41ca467786a18c
parentc630a6a2c9a3987042ba80f1e09839eac010c546 (diff)
downloadNetworkManager-5036406b582a66784aa1612ca85105ab5b67267a.tar.gz
platform: add support for WPAN links
-rw-r--r--src/platform/nm-platform.c40
-rw-r--r--src/platform/nm-platform.h10
2 files changed, 50 insertions, 0 deletions
diff --git a/src/platform/nm-platform.c b/src/platform/nm-platform.c
index 3fc3ee247a..3acdb7db2a 100644
--- a/src/platform/nm-platform.c
+++ b/src/platform/nm-platform.c
@@ -2940,6 +2940,46 @@ nm_platform_mesh_set_ssid (NMPlatform *self, int ifindex, const guint8 *ssid, gs
return klass->mesh_set_ssid (self, ifindex, ssid, len);
}
+guint16
+nm_platform_wpan_get_pan_id (NMPlatform *self, int ifindex)
+{
+ _CHECK_SELF (self, klass, FALSE);
+
+ g_return_val_if_fail (ifindex > 0, FALSE);
+
+ return klass->wpan_get_pan_id (self, ifindex);
+}
+
+gboolean
+nm_platform_wpan_set_pan_id (NMPlatform *self, int ifindex, guint16 pan_id)
+{
+ _CHECK_SELF (self, klass, FALSE);
+
+ g_return_val_if_fail (ifindex > 0, FALSE);
+
+ return klass->wpan_set_pan_id (self, ifindex, pan_id);
+}
+
+guint16
+nm_platform_wpan_get_short_addr (NMPlatform *self, int ifindex)
+{
+ _CHECK_SELF (self, klass, FALSE);
+
+ g_return_val_if_fail (ifindex > 0, FALSE);
+
+ return klass->wpan_get_short_addr (self, ifindex);
+}
+
+gboolean
+nm_platform_wpan_set_short_addr (NMPlatform *self, int ifindex, guint16 short_addr)
+{
+ _CHECK_SELF (self, klass, FALSE);
+
+ g_return_val_if_fail (ifindex > 0, FALSE);
+
+ return klass->wpan_set_short_addr (self, ifindex, short_addr);
+}
+
#define TO_STRING_DEV_BUF_SIZE (5+15+1)
static const char *
_to_string_dev (NMPlatform *self, int ifindex, char *buf, size_t size)
diff --git a/src/platform/nm-platform.h b/src/platform/nm-platform.h
index a19c3289dd..435cb905c2 100644
--- a/src/platform/nm-platform.h
+++ b/src/platform/nm-platform.h
@@ -875,6 +875,11 @@ typedef struct {
gboolean (*mesh_set_channel) (NMPlatform *, int ifindex, guint32 channel);
gboolean (*mesh_set_ssid) (NMPlatform *, int ifindex, const guint8 *ssid, gsize len);
+ guint16 (*wpan_get_pan_id) (NMPlatform *, int ifindex);
+ gboolean (*wpan_set_pan_id) (NMPlatform *, int ifindex, guint16 pan_id);
+ guint16 (*wpan_get_short_addr) (NMPlatform *, int ifindex);
+ gboolean (*wpan_set_short_addr) (NMPlatform *, int ifindex, guint16 short_addr);
+
gboolean (*object_delete) (NMPlatform *, const NMPObject *obj);
gboolean (*ip4_address_add) (NMPlatform *,
@@ -1255,6 +1260,11 @@ guint32 nm_platform_mesh_get_channel (NMPlatform *self, int ifindex);
gboolean nm_platform_mesh_set_channel (NMPlatform *self, int ifindex, guint32 channel);
gboolean nm_platform_mesh_set_ssid (NMPlatform *self, int ifindex, const guint8 *ssid, gsize len);
+guint16 nm_platform_wpan_get_pan_id (NMPlatform *platform, int ifindex);
+gboolean nm_platform_wpan_set_pan_id (NMPlatform *platform, int ifindex, guint16 pan_id);
+guint16 nm_platform_wpan_get_short_addr (NMPlatform *platform, int ifindex);
+gboolean nm_platform_wpan_set_short_addr (NMPlatform *platform, int ifindex, guint16 short_addr);
+
void nm_platform_ip4_address_set_addr (NMPlatformIP4Address *addr, in_addr_t address, guint8 plen);
const struct in6_addr *nm_platform_ip6_address_get_peer (const NMPlatformIP6Address *addr);