Project

General

Profile

« Previous | Next » 

Revision 82e22457

Added by Marcos M about 1 year ago

Add a helper function for unserialize(). Fix #15423

For calls to unserialize() which do not check for errors, use the
helper function instead.

View differences:

src/etc/inc/captiveportal.inc
1551 1551
		$cpruleslck = lock("captiveportalrulesdn", LOCK_EX);
1552 1552
	}
1553 1553

  
1554
	$rules = unserialize(file_get_contents(
1555
	    "{$g['vardb_path']}/captiveportaldn.rules"));
1554
	$rules = unserialize_data(file_get_contents(
1555
	    "{$g['vardb_path']}/captiveportaldn.rules"), []);
1556 1556
	$ridx = $rulenos_start;
1557 1557
	while ($ridx < $rulenos_range_max) {
1558 1558
		if (substr($rules[$ridx], 0, strlen($cpzone . '_')) == $cpzone . '_') {
......
1591 1591

  
1592 1592
	$cpruleslck = lock("captiveportalrulesdn", LOCK_EX);
1593 1593
	if (file_exists("{$g['vardb_path']}/captiveportaldn.rules")) {
1594
		$rules = unserialize(file_get_contents("{$g['vardb_path']}/captiveportaldn.rules"));
1594
		$rules = unserialize_data(file_get_contents("{$g['vardb_path']}/captiveportaldn.rules"), array_pad(array(), 64500, false));
1595 1595
	} else {
1596 1596
		$rules = array_pad(array(), 64500, false);
1597 1597
	}
......
1612 1612
	$cpruleslck = lock("captiveportalrulesdn", LOCK_EX);
1613 1613
	$ruleno = 0;
1614 1614
	if (file_exists("{$g['vardb_path']}/captiveportaldn.rules")) {
1615
		$rules = unserialize(file_get_contents("{$g['vardb_path']}/captiveportaldn.rules"));
1615
		$rules = unserialize_data(file_get_contents("{$g['vardb_path']}/captiveportaldn.rules"), []);
1616 1616
		$ridx = $rulenos_start;
1617 1617
		while ($ridx < $rulenos_range_max) {
1618 1618
			if (empty($rules[$ridx])) {
......
1646 1646

  
1647 1647
	$cpruleslck = lock("captiveportalrulesdn", LOCK_EX);
1648 1648
	if (file_exists("{$g['vardb_path']}/captiveportaldn.rules")) {
1649
		$rules = unserialize(file_get_contents("{$g['vardb_path']}/captiveportaldn.rules"));
1649
		$rules = unserialize_data(file_get_contents("{$g['vardb_path']}/captiveportaldn.rules"), []);
1650 1650
		foreach ($rulenos as $ruleno) {
1651 1651
			$rules[$ruleno] = false;
1652 1652
		}

Also available in: Unified diff