share eBPF struct definitions between ebpf and C++ netd

This is the main commit in a set of 3 commits across 3 diff git repos.
The other two are:
  https://android-review.googlesource.com/c/platform/system/bpf/+/1199649
  "remove network specific struct definitions from BpfUtils.h"
and
  https://android-review.googlesource.com/c/platform/frameworks/base/+/1200738
  "minor change to keep it building"

We move the struct definitions to bpf_shared.h so they can be
shared between C++ netd and C ebpf code.

They also become typedefs and are renamed for more consistent naming.
(there's some weird issue with ebpf compiler on some devices with
non-typedef'ed structs)

Test: builds, atest
Bug: 146787904
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I324c0ab9db0186dcea0ec9ee33140909be285bc4
diff --git a/libnetdbpf/BpfNetworkStatsTest.cpp b/libnetdbpf/BpfNetworkStatsTest.cpp
index 057f2a9..469ba21 100644
--- a/libnetdbpf/BpfNetworkStatsTest.cpp
+++ b/libnetdbpf/BpfNetworkStatsTest.cpp
@@ -70,7 +70,7 @@
 class BpfNetworkStatsHelperTest : public testing::Test {
   protected:
     BpfNetworkStatsHelperTest() {}
-    BpfMap<uint64_t, UidTag> mFakeCookieTagMap;
+    BpfMap<uint64_t, UidTagValue> mFakeCookieTagMap;
     BpfMap<uint32_t, StatsValue> mFakeAppUidStatsMap;
     BpfMap<StatsKey, StatsValue> mFakeStatsMap;
     BpfMap<uint32_t, IfaceValue> mFakeIfaceIndexNameMap;
@@ -80,17 +80,16 @@
         SKIP_IF_BPF_NOT_SUPPORTED;
         ASSERT_EQ(0, setrlimitForTest());
 
-        mFakeCookieTagMap = BpfMap<uint64_t, UidTag>(createMap(
-            BPF_MAP_TYPE_HASH, sizeof(uint64_t), sizeof(struct UidTag), TEST_MAP_SIZE, 0));
+        mFakeCookieTagMap = BpfMap<uint64_t, UidTagValue>(createMap(
+                BPF_MAP_TYPE_HASH, sizeof(uint64_t), sizeof(UidTagValue), TEST_MAP_SIZE, 0));
         ASSERT_LE(0, mFakeCookieTagMap.getMap());
 
         mFakeAppUidStatsMap = BpfMap<uint32_t, StatsValue>(createMap(
-            BPF_MAP_TYPE_HASH, sizeof(uint32_t), sizeof(struct StatsValue), TEST_MAP_SIZE, 0));
+                BPF_MAP_TYPE_HASH, sizeof(uint32_t), sizeof(StatsValue), TEST_MAP_SIZE, 0));
         ASSERT_LE(0, mFakeAppUidStatsMap.getMap());
 
-        mFakeStatsMap = BpfMap<StatsKey, StatsValue>(
-                createMap(BPF_MAP_TYPE_HASH, sizeof(struct StatsKey), sizeof(struct StatsValue),
-                          TEST_MAP_SIZE, 0));
+        mFakeStatsMap = BpfMap<StatsKey, StatsValue>(createMap(
+                BPF_MAP_TYPE_HASH, sizeof(StatsKey), sizeof(StatsValue), TEST_MAP_SIZE, 0));
         ASSERT_LE(0, mFakeStatsMap.getMap());
 
         mFakeIfaceIndexNameMap = BpfMap<uint32_t, IfaceValue>(
@@ -98,7 +97,7 @@
         ASSERT_LE(0, mFakeIfaceIndexNameMap.getMap());
 
         mFakeIfaceStatsMap = BpfMap<uint32_t, StatsValue>(createMap(
-            BPF_MAP_TYPE_HASH, sizeof(uint32_t), sizeof(struct StatsValue), TEST_MAP_SIZE, 0));
+                BPF_MAP_TYPE_HASH, sizeof(uint32_t), sizeof(StatsValue), TEST_MAP_SIZE, 0));
         ASSERT_LE(0, mFakeIfaceStatsMap.getMap());
     }
 
@@ -149,7 +148,7 @@
 
     for (int i = 0; i < 5; i++) {
         uint64_t cookie = i + 1;
-        struct UidTag tag = {.uid = TEST_UID1, .tag = TEST_TAG};
+        UidTagValue tag = {.uid = TEST_UID1, .tag = TEST_TAG};
         EXPECT_TRUE(isOk(mFakeCookieTagMap.writeValue(cookie, tag, BPF_ANY)));
     }
     uint64_t curCookie = 0;
@@ -180,18 +179,18 @@
 
     for (int i = 0; i < 5; i++) {
         uint64_t cookie = i + 1;
-        struct UidTag tag = {.uid = TEST_UID1, .tag = TEST_TAG};
+        UidTagValue tag = {.uid = TEST_UID1, .tag = TEST_TAG};
         EXPECT_TRUE(isOk(mFakeCookieTagMap.writeValue(cookie, tag, BPF_ANY)));
     }
     int totalCount = 0;
     int totalSum = 0;
-    const auto iterateWithoutDeletion = [&totalCount, &totalSum](const uint64_t& key,
-                                                                 const BpfMap<uint64_t, UidTag>&) {
-        EXPECT_GE((uint64_t)5, key);
-        totalCount++;
-        totalSum += key;
-        return netdutils::status::ok;
-    };
+    const auto iterateWithoutDeletion =
+            [&totalCount, &totalSum](const uint64_t& key, const BpfMap<uint64_t, UidTagValue>&) {
+                EXPECT_GE((uint64_t)5, key);
+                totalCount++;
+                totalSum += key;
+                return netdutils::status::ok;
+            };
     EXPECT_TRUE(isOk(mFakeCookieTagMap.iterate(iterateWithoutDeletion)));
     EXPECT_EQ(5, totalCount);
     EXPECT_EQ(1 + 2 + 3 + 4 + 5, totalSum);