mirror of
https://github.com/OpenVPN/openvpn.git
synced 2024-09-20 03:52:28 +02:00
Modified nonblocking connect code so that this works as it should:
./openvpn --dev tap --proto tcp-client --verb 4 --remote [Black-Hole-IP-Addr] --connect-retry-max 1 --remap-usr1 SIGTERM git-svn-id: http://svn.openvpn.net/projects/openvpn/branches/BETA21/openvpn@826 e7ae566f-a301-0410-adde-c780ea21d3b5
This commit is contained in:
parent
1ae9d05173
commit
a17f69699e
17
socket.c
17
socket.c
@ -811,10 +811,9 @@ socket_connect (socket_descriptor_t *sd,
|
||||
|
||||
while (true)
|
||||
{
|
||||
const int status = openvpn_connect (*sd, remote, connect_timeout, signal_received);
|
||||
int status;
|
||||
|
||||
if (connect_retry_max != 0 && retry++ >= connect_retry_max)
|
||||
*signal_received = SIGUSR1;
|
||||
status = openvpn_connect (*sd, remote, connect_timeout, signal_received);
|
||||
|
||||
get_signal (signal_received);
|
||||
if (*signal_received)
|
||||
@ -830,8 +829,20 @@ socket_connect (socket_descriptor_t *sd,
|
||||
strerror_ts (status, &gc));
|
||||
|
||||
openvpn_close_socket (*sd);
|
||||
*sd = SOCKET_UNDEFINED;
|
||||
|
||||
if (connect_retry_max > 0 && ++retry >= connect_retry_max)
|
||||
{
|
||||
*signal_received = SIGUSR1;
|
||||
goto done;
|
||||
}
|
||||
|
||||
openvpn_sleep (connect_retry_seconds);
|
||||
|
||||
get_signal (signal_received);
|
||||
if (*signal_received)
|
||||
goto done;
|
||||
|
||||
if (remote_list)
|
||||
{
|
||||
remote_list_next (remote_list);
|
||||
|
Loading…
Reference in New Issue
Block a user