Merge "clat: use AF_PACKET/SOCK_RAW not SOCK_DGRAM sockets"

This commit is contained in:
Maciej Żenczykowski 2023-03-14 03:01:08 +00:00 • committed by Gerrit Code Review
commit cc5b26dffe
2 changed files with 2 additions and 2 deletions

View file

@ -177,7 +177,7 @@ static jint com_android_server_connectivity_ClatCoordinator_openPacketSocket(JNI
jobject clazz) {
// Will eventually be bound to htons(ETH_P_IPV6) protocol,
// but only after appropriate bpf filter is attached.
int sock = socket(AF_PACKET, SOCK_DGRAM | SOCK_CLOEXEC, 0);
const int sock = socket(AF_PACKET, SOCK_RAW | SOCK_CLOEXEC, 0);
if (sock < 0) {
throwIOException(env, "packet socket failed", errno);
return -1;

View file

@ -165,7 +165,7 @@ TEST_F(ClatUtils, ConfigurePacketSocket) {
TunInterface v6Iface;
ASSERT_EQ(0, v6Iface.init());
int s = socket(AF_PACKET, SOCK_DGRAM | SOCK_CLOEXEC, htons(ETH_P_IPV6));
const int s = socket(AF_PACKET, SOCK_RAW | SOCK_CLOEXEC, htons(ETH_P_IPV6));
EXPECT_LE(0, s);
struct in6_addr addr6;
EXPECT_EQ(1, inet_pton(AF_INET6, "2001:db8::f00", &addr6));