diff --git a/sys/net/gnrc/sock/udp/gnrc_sock_udp.c b/sys/net/gnrc/sock/udp/gnrc_sock_udp.c
index c2367e242d664d8af9509238b1311993d953df84..41831e22b64b281e9b6088df5fb79df3c807f728 100644
--- a/sys/net/gnrc/sock/udp/gnrc_sock_udp.c
+++ b/sys/net/gnrc/sock/udp/gnrc_sock_udp.c
@@ -136,7 +136,7 @@ int sock_udp_create(sock_udp_t *sock, const sock_udp_ep_t *local,
     }
     if (local != NULL) {
         /* listen only with local given */
-        gnrc_sock_create(&sock->reg, GNRC_NETTYPE_UDP, local->port);
+        gnrc_sock_create(&sock->reg, GNRC_NETTYPE_UDP, sock->local.port);
     }
     sock->flags = flags;
     return 0;