Browse Source

adding darwin routing logic

afeiszli 3 years ago
parent
commit
cd7199441b
1 changed files with 9 additions and 3 deletions
  1. 9 3
      netclient/local/routes_darwin.go

+ 9 - 3
netclient/local/routes_darwin.go

@@ -1,12 +1,13 @@
 package local
 package local
 
 
 import (
 import (
-	"net"
-	"strings"
-
+	"fmt"
 	"github.com/c-robinson/iplib"
 	"github.com/c-robinson/iplib"
 	"github.com/gravitl/netmaker/logger"
 	"github.com/gravitl/netmaker/logger"
 	"github.com/gravitl/netmaker/netclient/ncutils"
 	"github.com/gravitl/netmaker/netclient/ncutils"
+	"net"
+	"regexp"
+	"strings"
 )
 )
 
 
 // GetDefaultRoute - Gets the default route (ip and interface) on a mac machine
 // GetDefaultRoute - Gets the default route (ip and interface) on a mac machine
@@ -59,6 +60,11 @@ func setRoute(iface string, addr *net.IPNet, address string) error {
 	return err
 	return err
 }
 }
 
 
+// SetExplicitRoute - sets route via explicit ip address
+func SetExplicitRoute(iface string, destination *net.IPNet, gateway string) error {
+	return setRoute(iface, destination, gateway)
+}
+
 func deleteRoute(iface string, addr *net.IPNet, address string) error {
 func deleteRoute(iface string, addr *net.IPNet, address string) error {
 	var err error
 	var err error
 	_, err = ncutils.RunCmd("route -q -n delete "+addr.String(), false)
 	_, err = ncutils.RunCmd("route -q -n delete "+addr.String(), false)