Merge "Wificond: Remove mannual memory management in OffloadScanManager" into oc-mr1-dev
am: de45b50b17

Change-Id: Iaf059d37c1657f5ecc73d21f1b871082316ec72a
diff --git a/net/netlink_manager.cpp b/net/netlink_manager.cpp
index 74b156c..b612514 100644
--- a/net/netlink_manager.cpp
+++ b/net/netlink_manager.cpp
@@ -179,12 +179,14 @@
     }
     for (auto& group : groups) {
       string group_name;
-      uint32_t group_id;
+      uint32_t group_id = 0;
       if (!group.GetAttributeValue(CTRL_ATTR_MCAST_GRP_NAME, &group_name)) {
         LOG(ERROR) << "Failed to get group name";
+        continue;
       }
       if (!group.GetAttributeValue(CTRL_ATTR_MCAST_GRP_ID, &group_id)) {
         LOG(ERROR) << "Failed to get group id";
+        continue;
       }
       message_types_[family_name].groups[group_name] = group_id;
     }
diff --git a/tests/nl80211_attribute_unittest.cpp b/tests/nl80211_attribute_unittest.cpp
index dccde57..24ec92e 100644
--- a/tests/nl80211_attribute_unittest.cpp
+++ b/tests/nl80211_attribute_unittest.cpp
@@ -271,12 +271,12 @@
   NL80211NestedAttr attr(buffer);
   EXPECT_TRUE(attr.GetListOfNestedAttributes(&nested_attrs));
   EXPECT_TRUE(nested_attrs.size() == 3);
-  uint16_t value1;
-  uint32_t value2;
-  uint8_t value3;
-  EXPECT_TRUE(nested_attrs[0].GetAttributeValue(1, &value1));
-  EXPECT_TRUE(nested_attrs[1].GetAttributeValue(1, &value2));
-  EXPECT_TRUE(nested_attrs[2].GetAttributeValue(1, &value3));
+  uint16_t value1 = 0;
+  uint32_t value2 = 0;
+  uint8_t value3 = 0;
+  ASSERT_TRUE(nested_attrs[0].GetAttributeValue(1, &value1));
+  ASSERT_TRUE(nested_attrs[1].GetAttributeValue(1, &value2));
+  ASSERT_TRUE(nested_attrs[2].GetAttributeValue(1, &value3));
   EXPECT_TRUE(value1 == 5);
   EXPECT_TRUE(value2 == 10);
   EXPECT_TRUE(value3 == 8);
diff --git a/wificond.rc b/wificond.rc
index 3cc72e6..407fcca 100644
--- a/wificond.rc
+++ b/wificond.rc
@@ -2,3 +2,4 @@
     class main
     user wifi
     group wifi net_raw net_admin
+    capabilities NET_RAW NET_ADMIN