unix,win: Check connect receives right socket type

This commit is contained in:
Erick Tryzelaar 2011-09-25 16:16:07 -07:00 committed by Ryan Dahl
parent 17d4686bad
commit c260a39645
2 changed files with 4 additions and 14 deletions

View File

@ -226,12 +226,7 @@ int uv_tcp_connect(uv_connect_t* req,
saved_errno = errno;
status = -1;
if (handle->type != UV_TCP) {
uv_err_new(handle->loop, EINVAL);
goto out;
}
if (address.sin_family != AF_INET) {
if (handle->type != UV_TCP || address.sin_family != AF_INET) {
uv_err_new(handle->loop, EINVAL);
goto out;
}
@ -258,12 +253,7 @@ int uv_tcp_connect6(uv_connect_t* req,
saved_errno = errno;
status = -1;
if (handle->type != UV_TCP) {
uv_err_new(handle->loop, EINVAL);
goto out;
}
if (address.sin6_family != AF_INET6) {
if (handle->type != UV_TCP || address.sin6_family != AF_INET6) {
uv_err_new(handle->loop, EINVAL);
goto out;
}

View File

@ -484,7 +484,7 @@ int uv_tcp_connect(uv_connect_t* req, uv_tcp_t* handle,
return -1;
}
if (address.sin_family != AF_INET) {
if (handle->type != UV_TCP || address.sin_family != AF_INET) {
uv_set_sys_error(loop, WSAEFAULT);
return -1;
}
@ -540,7 +540,7 @@ int uv_tcp_connect6(uv_connect_t* req, uv_tcp_t* handle,
return -1;
}
if (address.sin6_family != AF_INET6) {
if (handle->type != UV_TCP || address.sin6_family != AF_INET6) {
uv_set_sys_error(loop, WSAEFAULT);
return -1;
}