Revert "Add bionic vm_sockets header" am: 30b6a7126c am: b8844022c7 am: a3cd906664
Original change: https://android-review.googlesource.com/c/platform/external/grpc-grpc/+/2861408
Change-Id: Ibaa954d718f028f3e56c82b488da11199298cb47
Signed-off-by: Automerger Merge Worker <[email protected]>
diff --git a/src/core/lib/address_utils/parse_address.cc b/src/core/lib/address_utils/parse_address.cc
index cb44d7f..deb2b07 100644
--- a/src/core/lib/address_utils/parse_address.cc
+++ b/src/core/lib/address_utils/parse_address.cc
@@ -22,6 +22,10 @@
#include "src/core/lib/iomgr/port.h" // IWYU pragma: keep
+#ifdef GRPC_HAVE_VSOCK
+#include <linux/vm_sockets.h>
+#endif
+
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
diff --git a/src/core/lib/address_utils/sockaddr_utils.cc b/src/core/lib/address_utils/sockaddr_utils.cc
index 39c906e..74bc7d2 100644
--- a/src/core/lib/address_utils/sockaddr_utils.cc
+++ b/src/core/lib/address_utils/sockaddr_utils.cc
@@ -22,6 +22,9 @@
#include <errno.h>
#include <inttypes.h>
+#ifdef GRPC_HAVE_VSOCK
+#include <linux/vm_sockets.h>
+#endif
#include <string.h>
#include <initializer_list>
diff --git a/src/core/lib/event_engine/tcp_socket_utils.cc b/src/core/lib/event_engine/tcp_socket_utils.cc
index d088c5e8..9f2b1d0 100644
--- a/src/core/lib/event_engine/tcp_socket_utils.cc
+++ b/src/core/lib/event_engine/tcp_socket_utils.cc
@@ -36,6 +36,10 @@
#include <sys/un.h>
#endif
+#ifdef GRPC_HAVE_VSOCK
+#include <linux/vm_sockets.h>
+#endif
+
#include <errno.h>
#include <inttypes.h>
#include <stdlib.h>
diff --git a/src/core/lib/iomgr/sockaddr_posix.h b/src/core/lib/iomgr/sockaddr_posix.h
index 8f50d02..4ed18e6 100644
--- a/src/core/lib/iomgr/sockaddr_posix.h
+++ b/src/core/lib/iomgr/sockaddr_posix.h
@@ -53,12 +53,10 @@
#define GRPC_AF_INET AF_INET
#define GRPC_AF_INET6 AF_INET6
-#ifdef GRPC_HAVE_VSOCK
-// HACK(chenhaosjtuacm): when building host services for run_cvd, the glibc version of Android
-// toolchain is too low, using the header copied from bionic libc instead
-#include "src/core/lib/iomgr/vm_sockets.h"
+#ifdef GRPC_HAVE_LINUX_VSOCK
+#include <linux/vm_sockets.h> // Needs to come after sys/socket.h
#define GRPC_AF_VSOCK AF_VSOCK
-#endif // GRPC_HAVE_VSOCK
+#endif /* GRPC_HAVE_LINUX_VSOCK */
#define GRPC_AI_PASSIVE AI_PASSIVE
diff --git a/src/core/lib/iomgr/unix_sockets_posix.cc b/src/core/lib/iomgr/unix_sockets_posix.cc
index e182e6a..e101bbb 100644
--- a/src/core/lib/iomgr/unix_sockets_posix.cc
+++ b/src/core/lib/iomgr/unix_sockets_posix.cc
@@ -19,6 +19,13 @@
#include "src/core/lib/iomgr/port.h"
+#ifdef GRPC_HAVE_LINUX_VSOCK
+
+#include <sys/socket.h>
+#include <linux/vm_sockets.h>
+
+#endif /* GRPC_HAVE_LINUX_VSOCK */
+
#ifdef GRPC_HAVE_UNIX_SOCKET
#include <string.h>
diff --git a/src/core/lib/iomgr/vm_sockets.h b/src/core/lib/iomgr/vm_sockets.h
deleted file mode 100644
index 151f676..0000000
--- a/src/core/lib/iomgr/vm_sockets.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** This header was automatically generated from a Linux kernel header
- *** of the same name, to make information necessary for userspace to
- *** call into the kernel available to libc. It contains only constants,
- *** structures, and macros generated from the original header, and thus,
- *** contains no copyrightable information.
- ***
- *** Copied and modified from bionic/libc/kernel/uapi/linux/vm_sockets.h
- ***
- ****************************************************************************
- ****************************************************************************/
-#ifndef _UAPI_VM_SOCKETS_H
-#define _UAPI_VM_SOCKETS_H
-#include <linux/socket.h>
-#define SO_VM_SOCKETS_BUFFER_SIZE 0
-#define SO_VM_SOCKETS_BUFFER_MIN_SIZE 1
-#define SO_VM_SOCKETS_BUFFER_MAX_SIZE 2
-#define SO_VM_SOCKETS_PEER_HOST_VM_ID 3
-#define SO_VM_SOCKETS_TRUSTED 5
-#define SO_VM_SOCKETS_CONNECT_TIMEOUT 6
-#define SO_VM_SOCKETS_NONBLOCK_TXRX 7
-#define VMADDR_CID_ANY - 1U
-#define VMADDR_PORT_ANY - 1U
-#define VMADDR_CID_HYPERVISOR 0
-#define VMADDR_CID_RESERVED 1
-#define VMADDR_CID_HOST 2
-#define VM_SOCKETS_INVALID_VERSION - 1U
-#define VM_SOCKETS_VERSION_EPOCH(_v) (((_v) & 0xFF000000) >> 24)
-#define VM_SOCKETS_VERSION_MAJOR(_v) (((_v) & 0x00FF0000) >> 16)
-#define VM_SOCKETS_VERSION_MINOR(_v) (((_v) & 0x0000FFFF))
-struct sockaddr_vm {
- __kernel_sa_family_t svm_family;
- unsigned short svm_reserved1;
- unsigned int svm_port;
- unsigned int svm_cid;
- unsigned char svm_zero[sizeof(struct sockaddr) - sizeof(sa_family_t) - sizeof(unsigned short) - sizeof(unsigned int) - sizeof(unsigned int)];
-};
-#define IOCTL_VM_SOCKETS_GET_LOCAL_CID _IO(7, 0xb9)
-#ifndef AF_VSOCK
-#define AF_VSOCK 40
-#endif
-#endif
diff --git a/test/core/address_utils/parse_address_test.cc b/test/core/address_utils/parse_address_test.cc
index 4de4954..07b29c2 100644
--- a/test/core/address_utils/parse_address_test.cc
+++ b/test/core/address_utils/parse_address_test.cc
@@ -21,6 +21,10 @@
#include <sys/un.h>
#endif
+#ifdef GRPC_HAVE_VSOCK
+#include <linux/vm_sockets.h>
+#endif
+
#include <string>
#include "absl/status/status.h"
diff --git a/test/core/event_engine/tcp_socket_utils_test.cc b/test/core/event_engine/tcp_socket_utils_test.cc
index dca3312..d3b114d 100644
--- a/test/core/event_engine/tcp_socket_utils_test.cc
+++ b/test/core/event_engine/tcp_socket_utils_test.cc
@@ -19,6 +19,10 @@
#include "src/core/lib/iomgr/port.h" // IWYU pragma: keep
+#ifdef GRPC_HAVE_VSOCK
+#include <linux/vm_sockets.h>
+#endif
+
#include <stdint.h>
#include <stdio.h>
#include <string.h>