diff options
author | Daniel Stenberg <daniel@haxx.se> | 2005-05-17 09:18:17 +0000 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2005-05-17 09:18:17 +0000 |
commit | ede9fb4fcc600ae19d38a8b1b8833250e84801b7 (patch) | |
tree | d45cb59b1821a3e0c6c85099917006ec3b916bb7 /lib | |
parent | 723aef71e8c985b75ebb13b69ec359988d2cbba3 (diff) |
check if getsockname() returns failure before using the address it provides
Diffstat (limited to 'lib')
-rw-r--r-- | lib/ftp.c | 6 |
1 files changed, 3 insertions, 3 deletions
@@ -209,12 +209,12 @@ static CURLcode AllowServerConnect(struct connectdata *conn) default: /* we have received data here */ { - curl_socket_t s; + curl_socket_t s = CURL_SOCKET_BAD; socklen_t size = (socklen_t) sizeof(struct sockaddr_in); struct sockaddr_in add; - getsockname(sock, (struct sockaddr *) &add, &size); - s=accept(sock, (struct sockaddr *) &add, &size); + if(0 == getsockname(sock, (struct sockaddr *) &add, &size)) + s=accept(sock, (struct sockaddr *) &add, &size); sclose(sock); /* close the first socket */ |