From 0b68faf672fe7b9cda27d9e67ce15a6dea1d6f75 Mon Sep 17 00:00:00 2001 From: Mygod Date: Mon, 9 Jan 2017 15:29:06 +0800 Subject: [PATCH] Fix Subnet ordering --- src/main/scala/com/github/shadowsocks/acl/Subnet.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/scala/com/github/shadowsocks/acl/Subnet.scala b/src/main/scala/com/github/shadowsocks/acl/Subnet.scala index b41465c0..d7d4cc0b 100644 --- a/src/main/scala/com/github/shadowsocks/acl/Subnet.scala +++ b/src/main/scala/com/github/shadowsocks/acl/Subnet.scala @@ -26,7 +26,7 @@ class Subnet(val address: InetAddress, val prefixSize: Int) extends Comparable[S var result = addrThis lengthCompare addrThat.length // IPv4 address goes first if (result != 0) return result for ((x, y) <- addrThis zip addrThat) { - result = x compare y + result = (x & 0xFF) compare (y & 0xFF) // undo sign extension of signed byte if (result != 0) return result } prefixSize compare that.prefixSize