From 61c99c4b0f5eef7533fe794123946afe125b44f4 Mon Sep 17 00:00:00 2001 From: yungtravla Date: Tue, 5 Feb 2019 13:59:44 +1000 Subject: [PATCH 1/5] fix matching of hostnames with hyphens --- network/net_linux.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/network/net_linux.go b/network/net_linux.go index adf60d8c..95efc8c4 100644 --- a/network/net_linux.go +++ b/network/net_linux.go @@ -12,7 +12,7 @@ import ( ) // only matches gateway lines -var IPv4RouteParser = regexp.MustCompile(`^(default|[0-9\.]+)\svia\s([0-9\.]+)\sdev\s(\w+)(?:\s.*|)$`) +var IPv4RouteParser = regexp.MustCompile(`^(default|[0-9\.]+)\svia\s([0-9\.]+)\sdev\s([a-z0-9-]+)(?:\s.*|)$`) var IPv4RouteTokens = 4 var IPv4RouteCmd = "ip" var IPv4RouteCmdOpts = []string{"route"} From ef1f2a19f839c784565143af9eb1dad019dfa7ec Mon Sep 17 00:00:00 2001 From: yungtravla Date: Tue, 5 Feb 2019 14:01:17 +1000 Subject: [PATCH 2/5] fix regexp to match hostnames with hyphens --- network/net_linux.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/network/net_linux.go b/network/net_linux.go index 95efc8c4..39e77edb 100644 --- a/network/net_linux.go +++ b/network/net_linux.go @@ -12,7 +12,7 @@ import ( ) // only matches gateway lines -var IPv4RouteParser = regexp.MustCompile(`^(default|[0-9\.]+)\svia\s([0-9\.]+)\sdev\s([a-z0-9-]+)(?:\s.*|)$`) +var IPv4RouteParser = regexp.MustCompile(`^(default|[0-9\.]+)\svia\s([0-9\.]+)\sdev\s([a-zA-Z0-9-]+)(?:\s.*|)$`) var IPv4RouteTokens = 4 var IPv4RouteCmd = "ip" var IPv4RouteCmdOpts = []string{"route"} From a9ceae3b4f9761ea600318b2ca9ca401bd3837c8 Mon Sep 17 00:00:00 2001 From: yungtravla Date: Tue, 5 Feb 2019 14:58:11 +1000 Subject: [PATCH 3/5] fix regexp to match gateway IPv4 address --- network/net_linux.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/network/net_linux.go b/network/net_linux.go index 39e77edb..517e67d0 100644 --- a/network/net_linux.go +++ b/network/net_linux.go @@ -12,7 +12,7 @@ import ( ) // only matches gateway lines -var IPv4RouteParser = regexp.MustCompile(`^(default|[0-9\.]+)\svia\s([0-9\.]+)\sdev\s([a-zA-Z0-9-]+)(?:\s.*|)$`) +var IPv4RouteParser = regexp.MustCompile(`^(default|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)\svia\s([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)\sdev\s(\w+)(?:\s.*|)$`) var IPv4RouteTokens = 4 var IPv4RouteCmd = "ip" var IPv4RouteCmdOpts = []string{"route"} From fd3efcac09eda52934ca9dc907ab524e4bd824c7 Mon Sep 17 00:00:00 2001 From: yungtravla Date: Tue, 5 Feb 2019 15:12:17 +1000 Subject: [PATCH 4/5] fix regexp to match default gateway IPv4 address and interface name --- network/net_linux.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/network/net_linux.go b/network/net_linux.go index 517e67d0..c1966987 100644 --- a/network/net_linux.go +++ b/network/net_linux.go @@ -12,7 +12,7 @@ import ( ) // only matches gateway lines -var IPv4RouteParser = regexp.MustCompile(`^(default|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)\svia\s([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)\sdev\s(\w+)(?:\s.*|)$`) +var IPv4RouteParser = regexp.MustCompile(`^(default|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)\svia\s([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)\sdev\s(\S+)\s*$`) var IPv4RouteTokens = 4 var IPv4RouteCmd = "ip" var IPv4RouteCmdOpts = []string{"route"} From a483c22e8db7d77f40715a5344584ae65c7a3a33 Mon Sep 17 00:00:00 2001 From: yungtravla Date: Tue, 5 Feb 2019 15:14:40 +1000 Subject: [PATCH 5/5] fix regexp when ip route does not end with interface name --- network/net_linux.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/network/net_linux.go b/network/net_linux.go index c1966987..a93fb40f 100644 --- a/network/net_linux.go +++ b/network/net_linux.go @@ -12,7 +12,7 @@ import ( ) // only matches gateway lines -var IPv4RouteParser = regexp.MustCompile(`^(default|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)\svia\s([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)\sdev\s(\S+)\s*$`) +var IPv4RouteParser = regexp.MustCompile(`^(default|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)\svia\s([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)\sdev\s(\S+).*$`) var IPv4RouteTokens = 4 var IPv4RouteCmd = "ip" var IPv4RouteCmdOpts = []string{"route"}