check for invalid port ranges (Thomas Poehnitz)
diff --git a/extensions/libipt_tcp.c b/extensions/libipt_tcp.c
index acf6050..1ff8f12 100644
--- a/extensions/libipt_tcp.c
+++ b/extensions/libipt_tcp.c
@@ -77,6 +77,10 @@
 
 		ports[0] = buffer[0] ? parse_tcp_port(buffer) : 0;
 		ports[1] = cp[0] ? parse_tcp_port(cp) : 0xFFFF;
+
+		if (ports[0] > ports[1])
+			exit_error(PARAMETER_PROBLEM,
+				   "invalid portrange (min > max)");
 	}
 	free(buffer);
 }