]> granicus.if.org Git - curl/commitdiff
Curl_updateconninfo: don't do anything for UDP "connections"
authorDaniel Stenberg <daniel@haxx.se>
Wed, 8 Jan 2014 22:37:27 +0000 (23:37 +0100)
committerDaniel Stenberg <daniel@haxx.se>
Wed, 8 Jan 2014 22:43:45 +0000 (23:43 +0100)
getpeername() doesn't work for UDP sockets since they're not connected

Reported-by: Priyanka Shah
Bug: http://curl.haxx.se/mail/archive-2014-01/0016.html

lib/connect.c

index 05666ebb64fd67450a82a47999a4e3bb61595b10..f04cce7e304e48bcd34a16ac109d3deaf5a1f7fb 100644 (file)
@@ -657,6 +657,10 @@ void Curl_updateconninfo(struct connectdata *conn, curl_socket_t sockfd)
   struct Curl_sockaddr_storage ssloc;
   struct SessionHandle *data = conn->data;
 
+  if(conn->socktype == SOCK_DGRAM)
+    /* there's no connection! */
+    return;
+
   if(!conn->bits.reuse) {
 
     len = sizeof(struct Curl_sockaddr_storage);