Clean up non-conforming headers in the shm specs

Bug: 73254958
Test: Local build and boot
Change-Id: I9037775383777041aef3edca096e7c597ea163ed
diff --git a/common/libs/wifi/virtual_wifi.cc b/common/libs/wifi/virtual_wifi.cc
index 1c38201..468c26d 100644
--- a/common/libs/wifi/virtual_wifi.cc
+++ b/common/libs/wifi/virtual_wifi.cc
@@ -19,6 +19,7 @@
 #include <fstream>
 
 #include <glog/logging.h>
+#include <linux/if_ether.h>
 #include <linux/nl80211.h>
 #include <netlink/genl/ctrl.h>
 
diff --git a/common/vsoc/lib/circqueue_impl.h b/common/vsoc/lib/circqueue_impl.h
index dc65e4b..f228cbb 100644
--- a/common/vsoc/lib/circqueue_impl.h
+++ b/common/vsoc/lib/circqueue_impl.h
@@ -19,6 +19,8 @@
 #include <cerrno>
 #include <cstring>
 
+#include <sys/uio.h>
+
 #include "common/vsoc/lib/region_signaling_interface.h"
 #include "common/vsoc/shm/circqueue.h"
 
diff --git a/common/vsoc/lib/single_sided_signal.h b/common/vsoc/lib/single_sided_signal.h
index c32361a..a40c792 100644
--- a/common/vsoc/lib/single_sided_signal.h
+++ b/common/vsoc/lib/single_sided_signal.h
@@ -16,6 +16,11 @@
  * limitations under the License.
  */
 
+#include <unistd.h>
+#include <linux/futex.h>
+#include <sys/syscall.h>
+
+
 // Signaling mechanism that allows threads to signal changes to shared
 // memory and to wait for signals.
 
diff --git a/common/vsoc/lib/wifi_exchange_view.cpp b/common/vsoc/lib/wifi_exchange_view.cpp
index 301f35f..1cb3bf9 100644
--- a/common/vsoc/lib/wifi_exchange_view.cpp
+++ b/common/vsoc/lib/wifi_exchange_view.cpp
@@ -15,6 +15,7 @@
  */
 #include "common/vsoc/lib/wifi_exchange_view.h"
 
+#include <linux/if_ether.h>
 #include "common/vsoc/lib/circqueue_impl.h"
 
 namespace vsoc {
diff --git a/common/vsoc/shm/circqueue.h b/common/vsoc/shm/circqueue.h
index e841bbf..ad5e5e7 100644
--- a/common/vsoc/shm/circqueue.h
+++ b/common/vsoc/shm/circqueue.h
@@ -20,11 +20,11 @@
 
 #include <atomic>
 #include <cstdint>
-#include <sys/uio.h>
-
 #include "common/vsoc/shm/base.h"
 #include "common/vsoc/shm/lock.h"
 
+struct iovec;
+
 namespace vsoc {
 class RegionSignalingInterface;
 namespace layout {
diff --git a/common/vsoc/shm/lock.h b/common/vsoc/shm/lock.h
index 2cae5bc..b08b6d2 100644
--- a/common/vsoc/shm/lock.h
+++ b/common/vsoc/shm/lock.h
@@ -28,11 +28,6 @@
 #include <atomic>
 #include <cstdint>
 
-#include <linux/futex.h>
-#include <sys/syscall.h>
-
-#include <unistd.h>
-
 #include "common/vsoc/shm/base.h"
 #include "common/vsoc/shm/version.h"
 
diff --git a/common/vsoc/shm/ril_layout.h b/common/vsoc/shm/ril_layout.h
index c1c0745..b2749dd 100644
--- a/common/vsoc/shm/ril_layout.h
+++ b/common/vsoc/shm/ril_layout.h
@@ -15,8 +15,6 @@
  * limitations under the License.
  */
 
-#include <netinet/in.h>
-
 #include "common/vsoc/shm/base.h"
 #include "common/vsoc/shm/version.h"
 
diff --git a/common/vsoc/shm/socket_forward_layout.h b/common/vsoc/shm/socket_forward_layout.h
index 3f0d6b4..8175e29 100644
--- a/common/vsoc/shm/socket_forward_layout.h
+++ b/common/vsoc/shm/socket_forward_layout.h
@@ -14,7 +14,6 @@
  * limitations under the License.
  */
 #pragma once
-#include <linux/if_ether.h>
 
 #include "common/vsoc/shm/base.h"
 #include "common/vsoc/shm/circqueue.h"
diff --git a/common/vsoc/shm/wifi_exchange_layout.h b/common/vsoc/shm/wifi_exchange_layout.h
index 10888cd..2ca957c 100644
--- a/common/vsoc/shm/wifi_exchange_layout.h
+++ b/common/vsoc/shm/wifi_exchange_layout.h
@@ -14,7 +14,6 @@
  * limitations under the License.
  */
 #pragma once
-#include <linux/if_ether.h>
 
 #include "common/vsoc/shm/base.h"
 #include "common/vsoc/shm/circqueue.h"
@@ -37,7 +36,7 @@
   // config_ready_ indicates whether config section is ready to be accessed.
   bool config_ready_;
   // Desired MAC address for guest device.
-  uint8_t mac_address[ETH_ALEN];
+  uint8_t mac_address[6];
 
   static const char* region_name;
 };
diff --git a/guest/commands/wifirouter/router.cc b/guest/commands/wifirouter/router.cc
index 75eb8a5..805b2fb 100644
--- a/guest/commands/wifirouter/router.cc
+++ b/guest/commands/wifirouter/router.cc
@@ -25,6 +25,7 @@
 #include <gflags/gflags.h>
 #include <glog/logging.h>
 #include <netinet/in.h>
+#include <linux/if_ether.h>
 #include <linux/netdevice.h>
 #include <netlink/genl/ctrl.h>
 #include <netlink/genl/family.h>
diff --git a/guest/libs/wpa_supplicant_8_lib/driver_cmd_nl80211.c b/guest/libs/wpa_supplicant_8_lib/driver_cmd_nl80211.c
index ff7ba23..a2180aa 100644
--- a/guest/libs/wpa_supplicant_8_lib/driver_cmd_nl80211.c
+++ b/guest/libs/wpa_supplicant_8_lib/driver_cmd_nl80211.c
@@ -27,6 +27,7 @@
 // Android M exposes headers more directly.
 #include <netinet/in.h>
 #include <linux/if.h>
+#include <linux/if_ether.h>
 #include "driver_nl80211.h"
 #elif VSOC_PLATFORM_SDK_AFTER(J_MR2)
 // Android versions K and L put structures in hardware_legacy
diff --git a/guest/libs/wpa_supplicant_8_lib/driver_cmd_nl80211.h b/guest/libs/wpa_supplicant_8_lib/driver_cmd_nl80211.h
index 5d0b366..4256664 100644
--- a/guest/libs/wpa_supplicant_8_lib/driver_cmd_nl80211.h
+++ b/guest/libs/wpa_supplicant_8_lib/driver_cmd_nl80211.h
@@ -24,6 +24,7 @@
 #include "common.h"
 #include "linux_ioctl.h"
 #include "wpa_supplicant_i.h"
+#include <linux/if_ether.h>
 
 #define VSOC_WPA_SUPPLICANT_DEBUG 0