diff --git a/api/glue/socket.c b/api/glue/socket.c
index ac2a36a9fad153aab1c4b2eb28f06977c2282035..66be66d7b6ee963916a3cfd37abbd2f1691fca3c 100644
--- a/api/glue/socket.c
+++ b/api/glue/socket.c
@@ -367,5 +367,9 @@ eb_status_t eb_socket_poll(eb_socket_t socketp) {
     eb_device_slave(socketp, device->transport, devicep);
   }
   
+  /* Free the temporary address */
+  if (new_linkp != EB_NULL)
+    eb_free_link(new_linkp);
+  
   return EB_OK;
 }