g(305).":";
$tab_name=array($l->g(304).": ",$lbl_id . ":",$l->g(34).": ",$l->g(208).": ");
if ($title == $l->g(931))
$type_field=array(0,2,3,0);
else
$type_field=array(0,2,0,0);
$value_field=array($default_value['RSX_NAME'],$default_value['ID_NAME'],$default_value['ADD_IP'],$default_value['ADD_SX_RSX']);
$tab_typ_champ=show_field($name_field,$type_field,$value_field);
foreach ($tab_typ_champ as $id=>$values){
$tab_typ_champ[$id]['CONFIG']['SIZE']=30;
}
$tab_typ_champ[1]["CONFIG"]['DEFAULT']="NO";
if (isset($_SESSION['OCS']['PAGE_PROFIL']['ms_adminvalues']))
$tab_typ_champ[1]['COMMENT_BEHING']="
";
tab_modif_values($tab_name,$tab_typ_champ,$tab_hidden,$title,$comment="");
}
function verif_base_methode($base){
global $l;
if (isset($_SESSION['OCS']['ipdiscover_methode'])
and $_SESSION['OCS']['ipdiscover_methode'] != $base){
return $l->g(929)."
".$l->g(930);
}else
return false;
}
function add_subnet($add_ip,$sub_name,$id_name,$add_sub){
global $l;
if (trim($add_ip) == '')
return $l->g(932);
if (trim($sub_name) == '')
return $l->g(933);
if (trim($id_name) == '' or $id_name == '0')
return $l->g(934);
if (trim($add_sub) == '')
return $l->g(935);
$row_verif=find_info_subnet($add_ip);
if (isset($row_verif->NETID)){
$sql="update subnet set name='%s', id='%s', MASK='%s'
where netid = '%s'";
$arg=array($sub_name,$id_name,$add_sub,$add_ip);
}else{
$sql="insert into subnet (netid,name,id,mask) VALUES ('%s','%s',
'%s','%s')";
$arg=array($add_ip,$sub_name,$id_name,$add_sub);
}
mysql2_query_secure($sql, $_SESSION['OCS']["writeServer"],$arg);
return false;
}
function add_type($name,$update=''){
global $l;
if (trim($name) == ''){
return $l->g(936);
}else{
$row=find_info_type($name,'',$update);
if (isset($row->ID))
return $l->g(937);
}
if ($update != ''){
$sql="update devicetype set NAME = '%s' where ID = '%s' ";
$arg=array($name,$update);
}else{
$sql="insert into devicetype (NAME) VALUES ('%s')";
$arg=$name;
}
mysql2_query_secure($sql, $_SESSION['OCS']["writeServer"],$arg);
return false;
}
function delete_type($id_type){
$sql="delete from devicetype where id='%s'";
$arg=$id_type;
mysql2_query_secure($sql, $_SESSION['OCS']["writeServer"],$arg);
}
function delete_subnet($netid){
$sql="delete from subnet where netid='%s'";
$arg=$netid;
mysql2_query_secure($sql, $_SESSION['OCS']["writeServer"],$arg);
}
/**
* Loads the whole mac file in memory
*/
function loadMac() {
if( $file=@fopen(MAC_FILE,"r") ) {
while (!feof($file)) {
$line = fgets($file, 4096);
if( preg_match("/^((?:[a-fA-F0-9]{2}-){2}[a-fA-F0-9]{2})\s+\(.+\)\s+(.+)\s*$/", $line, $result ) ) {
$_SESSION['OCS']["mac"][mb_strtoupper(str_replace("-",":",$result[1]))] = $result[2];
}
}
fclose($file);
}
}
function form_add_community($title='',$default_value,$form){
global $l,$pages_refs,$protectedPost;
$name_field=array("NAME","VERSION");
$tab_name=array($l->g(49).": ",$l->g(1199).": ");
$type_field=array(0,2);
$value_field=array($default_value['NAME'],$default_value['VERSION']);
if ($protectedPost['VERSION'] == '3'){
array_push($name_field,"USERNAME","AUTHKEY","AUTHPASSWD");
array_push($tab_name,"USERNAME : ","AUTHKEY : ","AUTHPASSWD :");
array_push($type_field,0,0);
array_push($value_field,$default_value['USERNAME'],$default_value['AUTHKEY'],$default_value['AUTHPASSWD']);
}
$tab_typ_champ=show_field($name_field,$type_field,$value_field);
foreach ($tab_typ_champ as $id=>$values){
$tab_typ_champ[$id]['CONFIG']['SIZE']=30;
}
$tab_typ_champ[1]['RELOAD']=$form;
if (is_numeric($protectedPost['MODIF'])){
$tab_hidden['MODIF']=$protectedPost['MODIF'];
}
$tab_hidden['ADD_COMM']=$protectedPost['ADD_COMM'];
$tab_hidden['ID']=$protectedPost['ID'];
tab_modif_values($tab_name,$tab_typ_champ,$tab_hidden,$title,$comment="");
}
function add_community($ID,$NAME,$VERSION,$USERNAME,$AUTHKEY,$AUTHPASSWD){
global $l;
if ($VERSION == -1)
$VERSION = '2c';
//this name of community still exist?
$sql="select name from snmp_communities where name='%s' and version='%s' ";
$arg=array($NAME,$VERSION);
if (isset($ID) and is_numeric($ID)){
$sql.=" and id != %s";
array_push($arg,$ID);
}
$res = mysql2_query_secure($sql, $_SESSION['OCS']["readServer"],$arg);
$row=mysql_fetch_object($res);
//Exist
if (isset($row->name))
return array('ERROR'=>$NAME." ".$l->g(363));
if (isset($ID) and is_numeric($ID)){
del_community($ID);
$SUCCESS=$l->g(1209);
}else
$SUCCESS=$l->g(1208);
$sql="insert into snmp_communities (ID,VERSION,NAME,USERNAME,AUTHKEY,AUTHPASSWD) VALUES ('%s','%s','%s','%s','%s','%s')";
$arg=array($ID,$VERSION,$NAME,$USERNAME,$AUTHKEY,$AUTHPASSWD);
mysql2_query_secure($sql, $_SESSION['OCS']["writeServer"],$arg);
return array('SUCCESS'=>$SUCCESS);
}
function del_community($id_community){
$sql="delete from snmp_communities where id='%s'";
$arg=$id_community;
mysql2_query_secure($sql, $_SESSION['OCS']["writeServer"],$arg);
}
function find_community_info($id){
$sql="select * from snmp_communities where id=%s";
$arg=$id;
$res = mysql2_query_secure($sql, $_SESSION['OCS']["readServer"],$arg);
$row=mysql_fetch_object($res);
return $row;
}
function runCommand($command="",$fname) {
global $l;
$command = "perl ipdiscover-util.pl $command -xml -h=".SERVER_READ." -u=".COMPTE_BASE." -p=".PSWD_BASE." -d=".DB_NAME." -path=".$fname;
exec($command);
}
function find_all_subnet($dpt_choise=''){
if ($dpt_choise != '')
return array_keys($_SESSION['OCS']["ipdiscover"][$dpt_choise]);
else{
if (isset($_SESSION['OCS']["ipdiscover"])){
foreach ($_SESSION['OCS']["ipdiscover"] as $key=>$subnet){
foreach ($subnet as $sub=>$poub)
$array_sub[]=$sub;
}
return $array_sub;
}else
return false;
}
}
function count_noinv_network_devices($dpt_choise=''){
$array_sub=find_all_subnet($dpt_choise);
$arg_count=array();
$sql_count="SELECT COUNT(DISTINCT mac) as c
FROM netmap n
LEFT OUTER JOIN networks ns ON ns.macaddr = mac
WHERE mac NOT IN (SELECT DISTINCT(macaddr) FROM network_devices)
and ( ns.macaddr IS NULL OR ns.IPSUBNET <> n.netid)
and netid in ";
$detail_query=mysql2_prepare($sql_count,$arg_count,$array_sub);
if (!isset($_SESSION['OCS']['COUNT_CONSOLE']['OCS_REPORT_NB_IPDISCOVER'])
and $dpt_choise == ''){
$res_count = mysql2_query_secure($detail_query['SQL'], $_SESSION['OCS']["readServer"],$detail_query['ARG']);
$val_count = mysql_fetch_array( $res_count );
return $val_count['c'];
}else
return $_SESSION['OCS']['COUNT_CONSOLE']['OCS_REPORT_NB_IPDISCOVER'];
}
?>