summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/ipconfig.h3
-rw-r--r--src/ipconfig.c15
-rw-r--r--src/service.c3
3 files changed, 21 insertions, 0 deletions
diff --git a/include/ipconfig.h b/include/ipconfig.h
index 94dfe671..ec2a9856 100644
--- a/include/ipconfig.h
+++ b/include/ipconfig.h
@@ -51,6 +51,9 @@ struct connman_ipconfig *connman_ipconfig_create(void);
struct connman_ipconfig *connman_ipconfig_ref(struct connman_ipconfig *ipconfig);
void connman_ipconfig_unref(struct connman_ipconfig *ipconfig);
+int connman_ipconfig_set_method(struct connman_ipconfig *ipconfig,
+ enum connman_ipconfig_method method);
+
#define CONNMAN_IPCONFIG_PRIORITY_LOW -100
#define CONNMAN_IPCONFIG_PRIORITY_DEFAULT 0
#define CONNMAN_IPCONFIG_PRIORITY_HIGH 100
diff --git a/src/ipconfig.c b/src/ipconfig.c
index 13e1d411..6e4927d4 100644
--- a/src/ipconfig.c
+++ b/src/ipconfig.c
@@ -80,6 +80,21 @@ void connman_ipconfig_unref(struct connman_ipconfig *ipconfig)
}
}
+/**
+ * connman_ipconfig_set_method:
+ * @ipconfig: ipconfig structure
+ * @method: configuration method
+ *
+ * Set the configuration method
+ */
+int connman_ipconfig_set_method(struct connman_ipconfig *ipconfig,
+ enum connman_ipconfig_method method)
+{
+ ipconfig->method = method;
+
+ return 0;
+}
+
const char *__connman_ipconfig_method2string(enum connman_ipconfig_method method)
{
switch (method) {
diff --git a/src/service.c b/src/service.c
index 5323768a..1a0713aa 100644
--- a/src/service.c
+++ b/src/service.c
@@ -689,6 +689,9 @@ struct connman_service *connman_service_create(void)
return NULL;
}
+ connman_ipconfig_set_method(service->ipconfig,
+ CONNMAN_IPCONFIG_METHOD_DHCP);
+
return service;
}