commit | 12cca802af552e2175a8357e0940612293c82786 | [log] [tgz] |
---|---|---|
author | repo sync <wdg@chromium.org> | Wed Dec 19 17:34:22 2012 -0800 |
committer | ChromeBot <chrome-bot@google.com> | Thu Dec 27 15:52:01 2012 -0800 |
tree | ebe692d7999837f079a93eee4aa123ce858bbd24 | |
parent | a47c3c62552d33aa1f745097a5713c4f6f4cc325 [diff] |
shill: Added nested attributes. Nested attributes are now supported (and the crowd goes wild). A unit test has been added for a nested attribute. With this checkin, many of the methods had their |nl80211_attrs| parameters replaced with |int|. This is because the nested attributes each index into their respective attribute lists with custom indexes rather than with |nl80211_attrs|. The code, therefore, needed to support arbitrary integers if it was to support nested attributes. As part of this checkin, the strict 'CHECK' for |HasAttribute| on access has been replaced with a less drastic 'if/return false'. There's some wonky code in here that will be fixed in the next checkin. Currently, attribute_list.h needs to include nl80211_attribute.h because the former needs an enum that is defined in the latter (can't do a forward delcaration of an enum). Unfortunately, the latter needs to include the former since a Nested attribute contains an AttributeList. Currently, this is addressed by having the Nested attribute contain a pointer to the list. That will be addressed in the next checkin. BUG=chromium-os:36637, chromium-os:37496 TEST=unittests. Change-Id: I01776909dc5f25340f5111f8f536dd0d34942617 Reviewed-on: https://gerrit.chromium.org/gerrit/40143 Reviewed-by: mukesh agrawal <quiche@chromium.org> Commit-Queue: Wade Guthrie <wdg@chromium.org> Reviewed-by: Wade Guthrie <wdg@chromium.org> Tested-by: Wade Guthrie <wdg@chromium.org>