#!/usr/bin/php-cgi
<?php
header("Access-Control-Allow-Origin: *");
header("Access-Control-Allow-Origin: *");
header("Access-Control-Allow-Origin: *");
/*******************************************************

LAN SET 
AUTHOR: JOSE MARI REYES

SET THE IP ADDRESS OF THE COOVACHILLI LAN SIDE.

HISTORY:

9/26/2017	REDPORT VERSION
1/27/2020	RENAMED FROM LANSET.REDPORT TO LANSET	


	Synopsis:
	
		field:  
		
			ipnet    -  the network ip address... this always end up with 0 as beginning of the network.. ex 10.0.0.0,  192.168.32.0
			iplisten -  the ip address whee coova chilli will listen to.  this should be belong to the network defined in the ipnet.
			
			
		192.168.32.1/cgi-bin/lanset?ipnet=192.168.30.0&iplisten=192.168.30.1
		
		if no parameter the ipnet and iplisten will reset to 192.168.32.0 and 192.168.32.1
		
		WARNING!
		
		MAKE SURE THAT THE IPNET IS ENDING WITH ZERO AND THE IPLISTEN IS SET TO THE SAME NETWORK AS THE IPNET
		FAILURE TO DO SO WILL RESULT IN BRICKED LINKSYS

********************************************************/
define("CFGFILE", "/etc/init.d/chilli");

//echo "<pre>";

$ipnet = "192.168.32.0";
$iplisten = "192.168.32.1";

	
		if (isset($_REQUEST['ipnet'])) $ipnet = $_REQUEST['ipnet'];
		if (isset($_REQUEST['iplisten'])) $iplisten = $_REQUEST['iplisten'];
		
		set_config_lan_ip($ipnet, $iplisten);
		//set_hs_config($iplisten);
		//set_coova_chilli($ipnet, $iplisten);





function set_config_lan_ip($ipnet, $iplisten)
{

	// modify IP address for captive portal
	$cmd = "/sbin/uci -q set chilli.@chilli[0].network=" . $ipnet;
	exec($cmd);
	$cmd = "/sbin/uci -q set chilli.@chilli[0].uamlisten=" . $iplisten;
	exec($cmd);
	$cmd = "/sbin/uci commit chilli";
	exec($cmd);

	//modify dnsmasq
	$cmd = "sed -i -e \"s/address=\/\#\/*.*.*.*/address=\/\#\/$iplisten/\" /etc/dnsmasq.conf";
        exec($cmd);
	
}




function strloc($haystack, $needle)
{
	if ( preg_match("~\b$needle\b~",$haystack) )
  		return true;
	else
  		return false;
  
}


?>

 
