libadlin: Avoid wg infinite loops
continuous-integration/drone/push Build is passing Details

This commit is contained in:
nemunaire 2022-04-20 20:11:38 +02:00
parent 4933c2f042
commit 6ac58634b8
1 changed files with 8 additions and 4 deletions

View File

@ -1,6 +1,7 @@
package adlin
import (
"context"
"crypto/ed25519"
"crypto/rand"
"crypto/sha512"
@ -60,10 +61,13 @@ var (
)
func _readWgDump() (wgd map[string]*WGDump, err error) {
out, errr := exec.Command("wg", "show", "wg-adlin", "dump").Output()
ctx, cancel := context.WithTimeout(context.Background(), 500*time.Millisecond)
defer cancel()
if errr != nil {
return nil, errr
out, err := exec.CommandContext(ctx, "wg", "show", "wg-adlin", "dump").Output()
if err != nil {
return nil, err
}
wgd = map[string]*WGDump{}
@ -105,7 +109,7 @@ func readWgDump() (wgd map[string]*WGDump, err error) {
wgDumpCache_mutex.RLock()
}
return wgd, nil
return
}
type TunnelToken struct {