From 061ee08da31601dc1658fe077086c1791ba25439 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=CE=A3rebe=20-=20Romain=20GERARD?= <erebe@erebe.eu>
Date: Wed, 7 Feb 2024 08:54:55 +0100
Subject: [PATCH] fix(aya-sock-map): invalid transmute when calling fd

Corrent an invalid transmutation for sock_map.
fd is already a ref of MapFd, so transmuting &fd to &SockMapFd is
equivalent to transmuting &&SockMapFd into &SockMapFd which is buggy.
---
 aya/src/maps/sock/sock_map.rs | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/aya/src/maps/sock/sock_map.rs b/aya/src/maps/sock/sock_map.rs
index 42246c8b..090ccf84 100644
--- a/aya/src/maps/sock/sock_map.rs
+++ b/aya/src/maps/sock/sock_map.rs
@@ -77,7 +77,7 @@ impl<T: Borrow<MapData>> SockMap<T> {
         let fd: &MapFd = self.inner.borrow().fd();
         // TODO(https://github.com/rust-lang/rfcs/issues/3066): avoid this unsafe.
         // SAFETY: `SockMapFd` is #[repr(transparent)] over `MapFd`.
-        unsafe { std::mem::transmute(&fd) }
+        unsafe { std::mem::transmute(fd) }
     }
 }