1
0
mirror of https://github.com/vlang/v.git synced 2023-08-10 21:13:21 +03:00

net: add failed addresses + details on connect errors, make connect more robust in the default non blocking mode (#15364)

This commit is contained in:
Emily Hudson
2022-08-07 08:40:05 +01:00
committed by GitHub
parent d6b594c4e8
commit fd1b6efea6
9 changed files with 202 additions and 41 deletions

View File

@@ -12,12 +12,13 @@ pub const (
errors_base + 2)
err_option_wrong_type = error_with_code('net: set_option_xxx option wrong type',
errors_base + 3)
err_port_out_of_range = error_with_code('', errors_base + 5)
err_no_udp_remote = error_with_code('', errors_base + 6)
err_port_out_of_range = error_with_code('net: port out of range', errors_base + 5)
err_no_udp_remote = error_with_code('net: no udp remote', errors_base + 6)
err_connect_failed = error_with_code('net: connect failed', errors_base + 7)
err_connect_timed_out = error_with_code('net: connect timed out', errors_base + 8)
err_timed_out = error_with_code('net: op timed out', errors_base + 9)
err_timed_out_code = errors_base + 9
err_connection_refused = error_with_code('net: connection refused', errors_base + 10)
)
pub fn socket_error_message(potential_code int, s string) ?int {
@@ -43,13 +44,13 @@ pub fn socket_error(potential_code int) ?int {
}
pub fn wrap_error(error_code int) ? {
if error_code == 0 {
return
}
$if windows {
enum_error := wsa_error(error_code)
return error_with_code('net: socket error: $enum_error', error_code)
} $else {
if error_code == 0 {
return
}
return error_with_code('net: socket error: $error_code', error_code)
}
}