Kaynağa Gözat

Skip warning about rules in legacy iptables.

After iptables support nft backend, it will emit the following warning
if there are rules in the legacy iptables. "# Warning: iptables-legacy
tables present, use iptables-legacy to see them". This cause the
header skipping to fail in the following loop.
Xueming Feng 1 yıl önce
ebeveyn
işleme
45291ce0de
1 değiştirilmiş dosya ile 5 ekleme ve 0 silme
  1. 5 0
      iptables/iptables.go

+ 5 - 0
iptables/iptables.go

@@ -316,6 +316,11 @@ func (ipt *IPTables) Stats(table, chain string) ([][]string, error) {
 
 	ipv6 := ipt.proto == ProtocolIPv6
 
+	// Skip the warning if exist
+	if strings.HasPrefix(lines[0], "#") {
+		lines = lines[1:]
+	}
+
 	rows := [][]string{}
 	for i, line := range lines {
 		// Skip over chain name and field header