---
src/tethering.c | 11 +++++++++--
1 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/src/tethering.c b/src/tethering.c
index 0357530..82ed6dd 100644
--- a/src/tethering.c
+++ b/src/tethering.c
@@ -80,8 +80,10 @@ struct connman_private_network {
char *interface;
int index;
guint iface_watch;
+ struct connman_ippool *pool;
const char *server_ip;
const char *peer_ip;
+ const char *subnet_mask;
const char *primary_dns;
const char *secondary_dns;
};
@@ -485,6 +487,7 @@ static void remove_private_network(gpointer user_data)
disable_nat(default_interface);
connman_rtnl_remove_watch(pn->iface_watch);
+ __connman_ippool_remove(pn->pool);
if (pn->watch > 0) {
g_dbus_remove_watch(connection, pn->watch);
@@ -561,8 +564,12 @@ int __connman_private_network_request(DBusMessage *msg,
const char *owner)
pn->fd = fd;
pn->interface = iface;
pn->index = index;
- pn->server_ip = PRIVATE_NETWORK_IP;
- pn->peer_ip = PRIVATE_NETWORK_PEER_IP;
+ pn->pool = __connman_ippool_create(iface, 2, &pn->server_ip,
+ &pn->peer_ip, &pn->subnet_mask,
+ &err);
+ if (pn->pool == NULL)
+ goto error;
+
pn->primary_dns = PRIVATE_NETWORK_PRIMARY_DNS;
pn->secondary_dns = PRIVATE_NETWORK_SECONDARY_DNS;
--
1.7.1
_______________________________________________
connman mailing list
[email protected]
http://lists.connman.net/listinfo/connman