From 44484e1231e1a91601c200e358dee189d24a64e0 Mon Sep 17 00:00:00 2001 From: Cuong Manh Le Date: Fri, 15 Dec 2023 23:14:36 +0700 Subject: [PATCH] cmd/cli: add WSAEHOSTUNREACH to network error Windows may raise WSAEHOSTUNREACH instead WSAENETUNREACH in case of network not available when resuming from sleep or switching network, so checkUpstream is never kicked in for this type of error. --- cmd/cli/prog.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/cmd/cli/prog.go b/cmd/cli/prog.go index 878681e..0d4f645 100644 --- a/cmd/cli/prog.go +++ b/cmd/cli/prog.go @@ -525,6 +525,7 @@ var ( windowsENETUNREACH = syscall.Errno(10051) windowsEINVAL = syscall.Errno(10022) windowsEADDRINUSE = syscall.Errno(10048) + windowsEHOSTUNREACH = syscall.Errno(10065) ) func errUrlNetworkError(err error) bool { @@ -547,7 +548,8 @@ func errNetworkError(err error) bool { errors.Is(opErr.Err, syscall.ENETUNREACH), errors.Is(opErr.Err, windowsENETUNREACH), errors.Is(opErr.Err, windowsEINVAL), - errors.Is(opErr.Err, windowsECONNREFUSED): + errors.Is(opErr.Err, windowsECONNREFUSED), + errors.Is(opErr.Err, windowsEHOSTUNREACH): return true } }