Skip to content

Commit 18580ed

Browse files
authored
ipam: return error for invalid ip range (#3088)
1 parent a7e7a83 commit 18580ed

File tree

2 files changed

+4
-1
lines changed

2 files changed

+4
-1
lines changed

pkg/ipam/ip_range_list.go

+3
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,9 @@ func NewIPRangeListFrom(x ...string) (*IPRangeList, error) {
4343
if err != nil {
4444
return nil, err
4545
}
46+
if start.GreaterThan(end) {
47+
return nil, fmt.Errorf("invalid ip range %q: %s is greater than %s", s, start, end)
48+
}
4649
r = NewIPRange(start, end)
4750
} else if strings.ContainsRune(s, '/') {
4851
_, cidr, err := net.ParseCIDR(s)

test/e2e/framework/util.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -199,7 +199,7 @@ func randomPool(cidr string, count int) []string {
199199
x, y := k%len(ips), (k+1)%len(ips)
200200
n1, _ := rl.Find(ips[x])
201201
n2, _ := rl.Find(ips[y])
202-
if n1 == n2 {
202+
if n1 == n2 && ips[x].LessThan(ips[y]) {
203203
set.Add(fmt.Sprintf("%s..%s", ips[x].String(), ips[y].String()))
204204
i, k = i+1, k+2
205205
continue

0 commit comments

Comments
 (0)