summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/ipconfig.h5
-rw-r--r--plugins/ofono.c5
-rw-r--r--src/ipconfig.c7
3 files changed, 13 insertions, 4 deletions
diff --git a/include/ipconfig.h b/include/ipconfig.h
index 0e1a483e..7aaa7c0d 100644
--- a/include/ipconfig.h
+++ b/include/ipconfig.h
@@ -56,8 +56,9 @@ enum connman_ipconfig_type {
enum connman_ipconfig_method {
CONNMAN_IPCONFIG_METHOD_UNKNOWN = 0,
CONNMAN_IPCONFIG_METHOD_OFF = 1,
- CONNMAN_IPCONFIG_METHOD_MANUAL = 2,
- CONNMAN_IPCONFIG_METHOD_DHCP = 3,
+ CONNMAN_IPCONFIG_METHOD_FIXED = 2,
+ CONNMAN_IPCONFIG_METHOD_MANUAL = 3,
+ CONNMAN_IPCONFIG_METHOD_DHCP = 4,
};
struct connman_ipconfig;
diff --git a/plugins/ofono.c b/plugins/ofono.c
index 9aa71f06..162028ba 100644
--- a/plugins/ofono.c
+++ b/plugins/ofono.c
@@ -1224,7 +1224,7 @@ static void update_settings(DBusMessageIter *array,
if (g_strcmp0(method, "static") == 0) {
parent->ipv4.method =
- CONNMAN_IPCONFIG_METHOD_MANUAL;
+ CONNMAN_IPCONFIG_METHOD_FIXED;
} else if (g_strcmp0(method, "dhcp") == 0) {
parent->ipv4.method =
@@ -1367,8 +1367,9 @@ static void pri_context_changed(DBusConnection *connection,
switch (parent->ipv4.method) {
case CONNMAN_IPCONFIG_METHOD_UNKNOWN:
case CONNMAN_IPCONFIG_METHOD_OFF:
- break;
case CONNMAN_IPCONFIG_METHOD_MANUAL:
+ break;
+ case CONNMAN_IPCONFIG_METHOD_FIXED:
if (static_network_set_connected(
pending_network, parent, active) < 0)
set_network_active(pending_network, FALSE);
diff --git a/src/ipconfig.c b/src/ipconfig.c
index df023c2c..2fff6c70 100644
--- a/src/ipconfig.c
+++ b/src/ipconfig.c
@@ -288,6 +288,7 @@ static void __connman_ipconfig_lower_up(struct connman_ipdevice *ipdevice)
switch (ipdevice->config->method) {
case CONNMAN_IPCONFIG_METHOD_UNKNOWN:
case CONNMAN_IPCONFIG_METHOD_OFF:
+ case CONNMAN_IPCONFIG_METHOD_FIXED:
case CONNMAN_IPCONFIG_METHOD_MANUAL:
return;
case CONNMAN_IPCONFIG_METHOD_DHCP:
@@ -929,6 +930,8 @@ const char *__connman_ipconfig_method2string(enum connman_ipconfig_method method
break;
case CONNMAN_IPCONFIG_METHOD_OFF:
return "off";
+ case CONNMAN_IPCONFIG_METHOD_FIXED:
+ return "fixed";
case CONNMAN_IPCONFIG_METHOD_MANUAL:
return "manual";
case CONNMAN_IPCONFIG_METHOD_DHCP:
@@ -942,6 +945,8 @@ enum connman_ipconfig_method __connman_ipconfig_string2method(const char *method
{
if (g_strcmp0(method, "off") == 0)
return CONNMAN_IPCONFIG_METHOD_OFF;
+ else if (g_strcmp0(method, "fixed") == 0)
+ return CONNMAN_IPCONFIG_METHOD_FIXED;
else if (g_strcmp0(method, "manual") == 0)
return CONNMAN_IPCONFIG_METHOD_MANUAL;
else if (g_strcmp0(method, "dhcp") == 0)
@@ -994,6 +999,7 @@ void __connman_ipconfig_append_ipv4config(struct connman_ipconfig *ipconfig,
switch (ipconfig->method) {
case CONNMAN_IPCONFIG_METHOD_UNKNOWN:
case CONNMAN_IPCONFIG_METHOD_OFF:
+ case CONNMAN_IPCONFIG_METHOD_FIXED:
case CONNMAN_IPCONFIG_METHOD_DHCP:
return;
case CONNMAN_IPCONFIG_METHOD_MANUAL:
@@ -1076,6 +1082,7 @@ int __connman_ipconfig_set_ipv4config(struct connman_ipconfig *ipconfig,
switch (method) {
case CONNMAN_IPCONFIG_METHOD_UNKNOWN:
case CONNMAN_IPCONFIG_METHOD_OFF:
+ case CONNMAN_IPCONFIG_METHOD_FIXED:
return -EINVAL;
case CONNMAN_IPCONFIG_METHOD_MANUAL: