diff options
Diffstat (limited to 'pkg/vpn/bonafide')
-rw-r--r-- | pkg/vpn/bonafide/eip_service.go | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/pkg/vpn/bonafide/eip_service.go b/pkg/vpn/bonafide/eip_service.go index 5755b6c..c106135 100644 --- a/pkg/vpn/bonafide/eip_service.go +++ b/pkg/vpn/bonafide/eip_service.go @@ -79,17 +79,17 @@ func (b *Bonafide) fetchEipJSON() error { eip3API := config.APIURL + "3/config/eip-service.json" resp, err := b.client.Post(eip3API, "", nil) for err != nil { - log.Printf("Error fetching eip v3 json: %v", err) - // TODO why exactly 1 retry? Make it configurable, for tests - time.Sleep(retryFetchJSONSeconds * time.Second) resp, err = b.client.Post(eip3API, "", nil) if err != nil { - // TODO it might be that it's not an error, but an empty file or whatever done + // TODO it might be that we get no error, but an empty file or whatever done // by DNS poisoning. Should try to parse the file. uri := b.getURLNoDNS("eip") - log.Println("Fetching ", uri) resp, err = b.client.Post(uri, "", nil) } + if err != nil { + log.Printf("Error fetching eip v3 json: %v", err) + time.Sleep(retryFetchJSONSeconds * time.Second) + } } defer resp.Body.Close() |