From 597346717be97884410dbf851ebb4cbc1b12b148 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Wed, 28 Mar 2018 15:36:08 +0200 Subject: [dnbd3] Fix subnet to CIDR calculation on 32bit php :/ --- modules-available/dnbd3/inc/dnbd3util.inc.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'modules-available/dnbd3/inc/dnbd3util.inc.php') diff --git a/modules-available/dnbd3/inc/dnbd3util.inc.php b/modules-available/dnbd3/inc/dnbd3util.inc.php index 95b6ffe2..eaf4b128 100644 --- a/modules-available/dnbd3/inc/dnbd3util.inc.php +++ b/modules-available/dnbd3/inc/dnbd3util.inc.php @@ -188,7 +188,11 @@ class Dnbd3Util { */ private static function range2Cidr($start, $end) { - $bin = decbin((int)$start ^ (int)$end); + if (PHP_INT_SIZE > 4) { + $bin = decbin((int)$start ^ (int)$end); + } else { + $bin = decbin((int)(float)$start ^ (int)(float)$end); + } if ($bin === '0') return long2ip($start); $mask = 32 - strlen($bin); -- cgit v1.2.3-55-g7522