This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
proxy = flag.String("proxy", "", "Enable HTTP proxy on host:port")
egdPath = flag.String("egd", "", "Optional path to EGD socket")
syslog = flag.Bool("syslog", false, "Enable logging to syslog")
proxy = flag.String("proxy", "", "Enable HTTP proxy on host:port")
egdPath = flag.String("egd", "", "Optional path to EGD socket")
syslog = flag.Bool("syslog", false, "Enable logging to syslog")
timeout := time.Second * time.Duration(govpn.TimeoutDefault)
log.SetFlags(log.Ldate | log.Lmicroseconds | log.Lshortfile)
log.Println(govpn.VersionGet())
confInit()
timeout := time.Second * time.Duration(govpn.TimeoutDefault)
log.SetFlags(log.Ldate | log.Lmicroseconds | log.Lshortfile)
log.Println(govpn.VersionGet())
confInit()
if hs.LastPing.Add(timeout).Before(now) {
govpn.Printf(`[handshake-delete bind="%s" addr="%s"]`, *bindAddr, addr)
hs.Zero()
if hs.LastPing.Add(timeout).Before(now) {
govpn.Printf(`[handshake-delete bind="%s" addr="%s"]`, *bindAddr, addr)
hs.Zero()
- govpn.Printf(`[peer-delete bind="%s" peer="%s"]`, *bindAddr, ps.peer)
- delete(peers, addr)
- delete(knownPeers, addr)
- delete(peersById, *ps.peer.Id)
+ govpn.Printf(
+ `[peer-delete bind="%s" peer="%s"]`,
+ *bindAddr,
+ ps.peer.ID.String(),
+ )
+ peers.Delete(addr)
+ knownPeers.Delete(addr)
+ peersByID.Delete(*ps.peer.ID)