shill: Add DeviceInfo routines for assigning IP address

Accept an IPConfig instance and assign IP address parameters
to device index.  Add code to device superclass to apply any
successful ipconfig (petkov should change this as necessary).

BUG=chromium-os:16846
TEST=Manual -- ran on a cr48 with ethernet attached.  Added throw-away
code to remove the address, and this worked correctly.  Also re-ran
unit tests.

Change-Id: Ib491de2e9f6d4a4317fc305978351e5812514e0f
Reviewed-on: http://gerrit.chromium.org/gerrit/3018
Reviewed-by: Paul Stewart <pstew@chromium.org>
Tested-by: Paul Stewart <pstew@chromium.org>
5 files changed
tree: 3b7b8ca9f6cd571b7f94204fcb73059961295b6b
  1. accessor_interface.h
  2. adaptor_interfaces.h
  3. cellular.cc
  4. cellular.h
  5. cellular_service.cc
  6. cellular_service.h
  7. control_interface.h
  8. dbus_adaptor.cc
  9. dbus_adaptor.h
  10. dbus_adaptor_unittest.cc
  11. dbus_control.cc
  12. dbus_control.h
  13. device.cc
  14. device.h
  15. device_config_interface.h
  16. device_dbus_adaptor.cc
  17. device_dbus_adaptor.h
  18. device_info.cc
  19. device_info.h
  20. device_info_unittest.cc
  21. device_stub.h
  22. device_unittest.cc
  23. dhcp_config.cc
  24. dhcp_config.h
  25. dhcp_config_unittest.cc
  26. dhcp_provider.cc
  27. dhcp_provider.h
  28. dhcp_provider_unittest.cc
  29. dhcp_proxy_interface.h
  30. dhcpcd.xml
  31. dhcpcd_proxy.cc
  32. dhcpcd_proxy.h
  33. endpoint.cc
  34. endpoint.h
  35. error.cc
  36. error.h
  37. ethernet.cc
  38. ethernet.h
  39. ethernet_service.cc
  40. ethernet_service.h
  41. flimflam-device.xml
  42. flimflam-ipconfig.xml
  43. flimflam-manager.xml
  44. flimflam-profile.xml
  45. flimflam-service.xml
  46. glib.cc
  47. glib.h
  48. glib_io_handler.cc
  49. glib_io_handler.h
  50. inherit-review-settings-ok
  51. io_handler.h
  52. ipconfig.cc
  53. ipconfig.h
  54. ipconfig_unittest.cc
  55. Makefile
  56. manager.cc
  57. manager.h
  58. manager_dbus_adaptor.cc
  59. manager_dbus_adaptor.h
  60. manager_unittest.cc
  61. mock_adaptors.h
  62. mock_control.cc
  63. mock_control.h
  64. mock_device.cc
  65. mock_device.h
  66. mock_dhcp_proxy.h
  67. mock_glib.h
  68. mock_property_store.h
  69. mock_service.cc
  70. mock_service.h
  71. property_accessor.h
  72. property_store_interface.cc
  73. property_store_interface.h
  74. property_store_unittest.h
  75. rtnl_handler.cc
  76. rtnl_handler.h
  77. rtnl_listener.cc
  78. rtnl_listener.h
  79. service.cc
  80. service.h
  81. service_dbus_adaptor.cc
  82. service_dbus_adaptor.h
  83. service_unittest.cc
  84. shill.conf
  85. shill_config.cc
  86. shill_config.h
  87. shill_daemon.cc
  88. shill_daemon.h
  89. shill_event.cc
  90. shill_event.h
  91. shill_main.cc
  92. shill_unittest.cc
  93. supplicant-bss.xml
  94. supplicant-interface.xml
  95. supplicant-network.xml
  96. supplicant-process.xml
  97. testrunner.cc
  98. WATCHLISTS
  99. wifi.cc
  100. wifi.h
  101. wifi_endpoint.cc
  102. wifi_endpoint.h
  103. wifi_service.cc
  104. wifi_service.h