apmanager: DHCP server support
Start a DHCP server for an AP service when it is configured in server
mode. The server address is configure as "192.168.x.254" where
x is the least significant byte of the service identifier. The DHCP
range is from 192.168.x.1 to 192.168.x.128.
BUG=chromium:438836
TEST=unittests and manual test
Manual test:
Start an AP service using apmanager and verify a DUT can connect
to it with an IP address
CQ-DEPEND=CL:233032,CL:233493
Change-Id: I16a0d03c8eac7f02722c8c8f5185ca75a1edebcb
Reviewed-on: https://chromium-review.googlesource.com/233047
Reviewed-by: Peter Qiu <zqiu@chromium.org>
Commit-Queue: Peter Qiu <zqiu@chromium.org>
Tested-by: Peter Qiu <zqiu@chromium.org>
diff --git a/apmanager.gyp b/apmanager.gyp
index 4fc8dfb..ca87d8e 100644
--- a/apmanager.gyp
+++ b/apmanager.gyp
@@ -53,6 +53,8 @@
'daemon.cc',
'device.cc',
'device_info.cc',
+ 'dhcp_server.cc',
+ 'dhcp_server_factory.cc',
'manager.cc',
'service.cc',
'shill_proxy.cc',
@@ -71,7 +73,7 @@
],
},
{
- 'target_name': 'apmanagerd',
+ 'target_name': 'apmanager',
'type': 'executable',
'dependencies': ['libapmanager'],
'link_settings': {
@@ -101,9 +103,12 @@
'config_unittest.cc',
'device_info_unittest.cc',
'device_unittest.cc',
+ 'dhcp_server_unittest.cc',
'manager_unittest.cc',
'mock_config.cc',
'mock_device.cc',
+ 'mock_dhcp_server.cc',
+ 'mock_dhcp_server_factory.cc',
'mock_manager.cc',
'mock_service.cc',
'service_unittest.cc',