diff options
author | Marcel Holtmann <marcel@holtmann.org> | 2009-06-29 21:19:40 +0200 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2009-06-29 21:19:40 +0200 |
commit | 0855c6c2ff2987ae3ec8605751cf0564edf33d8d (patch) | |
tree | 561c399180f61bf241cd0a012c2eb2c223cae127 /src/device.c | |
parent | 56553da25bd1a4d7f8976e2d4f818f27c40233dc (diff) | |
download | connman-0855c6c2ff2987ae3ec8605751cf0564edf33d8d.tar.gz connman-0855c6c2ff2987ae3ec8605751cf0564edf33d8d.tar.bz2 connman-0855c6c2ff2987ae3ec8605751cf0564edf33d8d.zip |
Hook up setting of IPv4 properties
Diffstat (limited to 'src/device.c')
-rw-r--r-- | src/device.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/device.c b/src/device.c index 2ff7d71d..347f6515 100644 --- a/src/device.c +++ b/src/device.c @@ -410,18 +410,24 @@ static DBusMessage *set_property(DBusConnection *conn, device->scan_timeout = g_timeout_add_seconds(interval, device_scan_trigger, device); } - } else if (g_str_has_prefix(name, "IPv4") == TRUE) { + } else if (g_str_has_prefix(name, "IPv4.") == TRUE) { + int err; + switch (device->mode) { case CONNMAN_DEVICE_MODE_UNKNOWN: case CONNMAN_DEVICE_MODE_NETWORK_SINGLE: case CONNMAN_DEVICE_MODE_NETWORK_MULTIPLE: return __connman_error_invalid_arguments(msg); case CONNMAN_DEVICE_MODE_TRANSPORT_IP: - __connman_element_set_ipv4(&device->element, - name, &value); break; } - } + + err = __connman_ipconfig_set_ipv4(device->ipconfig, + name + 5, &value); + if (err < 0) + return __connman_error_failed(msg, -err); + } else + return __connman_error_invalid_property(msg); __connman_storage_save_device(device); |