1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- package common
- import (
- "log"
- "os/exec"
- "strings"
- "github.com/gravitl/netmaker/nm-proxy/models"
- )
- var IsRelay bool
- var IsIngressGateway bool
- var IsRelayed bool
- var IsServer bool
- var InterfaceName string
- var BehindNAT bool
- var WgIfaceMap = models.WgIfaceConf{
- Iface: nil,
- PeerMap: make(map[string]*models.Conn),
- }
- var PeerKeyHashMap = make(map[string]models.RemotePeer)
- //var WgIfaceKeyMap = make(map[string]models.RemotePeer)
- var RelayPeerMap = make(map[string]map[string]models.RemotePeer)
- var ExtClientsWaitTh = make(map[string]models.ExtClientPeer)
- var ExtSourceIpMap = make(map[string]models.RemotePeer)
- // RunCmd - runs a local command
- func RunCmd(command string, printerr bool) (string, error) {
- args := strings.Fields(command)
- cmd := exec.Command(args[0], args[1:]...)
- cmd.Wait()
- out, err := cmd.CombinedOutput()
- if err != nil && printerr {
- log.Println("error running command: ", command)
- log.Println(strings.TrimSuffix(string(out), "\n"))
- }
- return string(out), err
- }
|