Sfoglia il codice sorgente

Porting https://github.com/docker/docker/pull/12437

Signed-off-by: Madhu Venugopal <madhu@docker.com>
Madhu Venugopal 10 anni fa
parent
commit
56375f3687
1 ha cambiato i file con 1 aggiunte e 9 eliminazioni
  1. 1 9
      libnetwork/iptables/iptables.go

+ 1 - 9
libnetwork/iptables/iptables.go

@@ -5,7 +5,6 @@ import (
 	"fmt"
 	"net"
 	"os/exec"
-	"regexp"
 	"strconv"
 	"strings"
 	"sync"
@@ -282,14 +281,7 @@ func Exists(table Table, chain string, rule ...string) bool {
 	ruleString := strings.Join(rule, " ")
 	existingRules, _ := exec.Command(iptablesPath, "-t", string(table), "-S", chain).Output()
 
-	// regex to replace ips in rule
-	// because MASQUERADE rule will not be exactly what was passed
-	re := regexp.MustCompile(`[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\/[0-9]{1,2}`)
-
-	return strings.Contains(
-		re.ReplaceAllString(string(existingRules), "?"),
-		re.ReplaceAllString(ruleString, "?"),
-	)
+	return strings.Contains(string(existingRules), ruleString)
 }
 
 // Raw calls 'iptables' system command, passing supplied arguments.