Merge remote-tracking branch 'origin/develop' into ent-11634-eliminar-ha-antigua

This commit is contained in:
Daniel Cebrian 2024-04-01 09:15:12 +02:00
commit a03ff46ae3
54 changed files with 373 additions and 296 deletions

View File

@ -1,5 +1,5 @@
package: pandorafms-agent-unix package: pandorafms-agent-unix
Version: 7.0NG.776-240325 Version: 7.0NG.776-240326
Architecture: all Architecture: all
Priority: optional Priority: optional
Section: admin Section: admin

View File

@ -14,7 +14,7 @@
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details. # GNU General Public License for more details.
pandora_version="7.0NG.776-240325" pandora_version="7.0NG.776-240326"
echo "Test if you has the tools for to make the packages." echo "Test if you has the tools for to make the packages."
whereis dpkg-deb | cut -d":" -f2 | grep dpkg-deb > /dev/null whereis dpkg-deb | cut -d":" -f2 | grep dpkg-deb > /dev/null

View File

@ -1039,7 +1039,7 @@ my $Sem = undef;
my $ThreadSem = undef; my $ThreadSem = undef;
use constant AGENT_VERSION => '7.0NG.776'; use constant AGENT_VERSION => '7.0NG.776';
use constant AGENT_BUILD => '240325'; use constant AGENT_BUILD => '240326';
# Agent log default file size maximum and instances # Agent log default file size maximum and instances
use constant DEFAULT_MAX_LOG_SIZE => 600000; use constant DEFAULT_MAX_LOG_SIZE => 600000;

View File

@ -4,7 +4,7 @@
%global __os_install_post %{nil} %global __os_install_post %{nil}
%define name pandorafms_agent_linux %define name pandorafms_agent_linux
%define version 7.0NG.776 %define version 7.0NG.776
%define release 240325 %define release 240326
Summary: Pandora FMS Linux agent, PERL version Summary: Pandora FMS Linux agent, PERL version
Name: %{name} Name: %{name}

View File

@ -5,7 +5,7 @@
%define name pandorafms_agent_linux_bin %define name pandorafms_agent_linux_bin
%define source_name pandorafms_agent_linux %define source_name pandorafms_agent_linux
%define version 7.0NG.776 %define version 7.0NG.776
%define release 240325 %define release 240326
%define debug_package %{nil} %define debug_package %{nil}
Summary: Pandora FMS Linux agent, binary version Summary: Pandora FMS Linux agent, binary version

View File

@ -5,7 +5,7 @@
%define name pandorafms_agent_linux_bin %define name pandorafms_agent_linux_bin
%define source_name pandorafms_agent_linux %define source_name pandorafms_agent_linux
%define version 7.0NG.776 %define version 7.0NG.776
%define release 240325 %define release 240326
%define debug_package %{nil} %define debug_package %{nil}
Summary: Pandora FMS Linux agent, binary version Summary: Pandora FMS Linux agent, binary version

View File

@ -5,7 +5,7 @@
%define name pandorafms_agent_linux_bin %define name pandorafms_agent_linux_bin
%define source_name pandorafms_agent_linux %define source_name pandorafms_agent_linux
%define version 7.0NG.776 %define version 7.0NG.776
%define release 240325 %define release 240326
Summary: Pandora FMS Linux agent, binary version Summary: Pandora FMS Linux agent, binary version
Name: %{name} Name: %{name}

View File

@ -4,7 +4,7 @@
%global __os_install_post %{nil} %global __os_install_post %{nil}
%define name pandorafms_agent_linux %define name pandorafms_agent_linux
%define version 7.0NG.776 %define version 7.0NG.776
%define release 240325 %define release 240326
Summary: Pandora FMS Linux agent, PERL version Summary: Pandora FMS Linux agent, PERL version
Name: %{name} Name: %{name}

View File

@ -10,7 +10,7 @@
# ********************************************************************** # **********************************************************************
PI_VERSION="7.0NG.776" PI_VERSION="7.0NG.776"
PI_BUILD="240325" PI_BUILD="240326"
OS_NAME=`uname -s` OS_NAME=`uname -s`
FORCE=0 FORCE=0

View File

@ -186,7 +186,7 @@ UpgradeApplicationID
{} {}
Version Version
{240325} {240326}
ViewReadme ViewReadme
{Yes} {Yes}

View File

@ -30,7 +30,7 @@ using namespace Pandora;
using namespace Pandora_Strutils; using namespace Pandora_Strutils;
#define PATH_SIZE _MAX_PATH+1 #define PATH_SIZE _MAX_PATH+1
#define PANDORA_VERSION ("7.0NG.776 Build 240325") #define PANDORA_VERSION ("7.0NG.776 Build 240326")
string pandora_path; string pandora_path;
string pandora_dir; string pandora_dir;

View File

@ -11,7 +11,7 @@ BEGIN
VALUE "LegalCopyright", "Pandora FMS" VALUE "LegalCopyright", "Pandora FMS"
VALUE "OriginalFilename", "PandoraAgent.exe" VALUE "OriginalFilename", "PandoraAgent.exe"
VALUE "ProductName", "Pandora FMS Windows Agent" VALUE "ProductName", "Pandora FMS Windows Agent"
VALUE "ProductVersion", "(7.0NG.776(Build 240325))" VALUE "ProductVersion", "(7.0NG.776(Build 240326))"
VALUE "FileVersion", "1.0.0.0" VALUE "FileVersion", "1.0.0.0"
END END
END END

View File

@ -1,5 +1,5 @@
package: pandorafms-console package: pandorafms-console
Version: 7.0NG.776-240325 Version: 7.0NG.776-240326
Architecture: all Architecture: all
Priority: optional Priority: optional
Section: admin Section: admin

View File

@ -14,7 +14,7 @@
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details. # GNU General Public License for more details.
pandora_version="7.0NG.776-240325" pandora_version="7.0NG.776-240326"
package_pear=0 package_pear=0
package_pandora=1 package_pandora=1

View File

@ -53,7 +53,7 @@ refresh[2]="0"
source[2]="0" source[2]="0"
source_data[2]="{\"tagente\":{\"nombre\":\"freebsd-1\"}}" source_data[2]="{\"tagente\":{\"nombre\":\"freebsd-1\"}}"
options[2]="" options[2]=""
style[2]="{\"shape\":\"circle\",\"image\":\"images/networkmap/freebsd@os.svg\",\"width\":null,\"height\":null,\"label\":\"freebsd-1\"}" style[2]="{\"shape\":\"circle\",\"image\":\"images\/networkmap\/freebsd@os.svg\",\"width\":null,\"height\":null,\"label\":\"freebsd-1\"}"
id[3]="3" id[3]="3"
id_map[3]="2" id_map[3]="2"
@ -66,7 +66,7 @@ refresh[3]="0"
source[3]="0" source[3]="0"
source_data[3]="{\"tagente\":{\"nombre\":\"macos-1\"}}" source_data[3]="{\"tagente\":{\"nombre\":\"macos-1\"}}"
options[3]="" options[3]=""
style[3]="{\"shape\":\"circle\",\"image\":\"images/networkmap/apple@os.svg\",\"width\":null,\"height\":null,\"label\":\"macos-1\"}" style[3]="{\"shape\":\"circle\",\"image\":\"images\/networkmap\/apple@os.svg\",\"width\":null,\"height\":null,\"label\":\"macos-1\"}"
id[4]="4" id[4]="4"
id_map[4]="2" id_map[4]="2"
@ -79,7 +79,7 @@ refresh[4]="0"
source[4]="0" source[4]="0"
source_data[4]="{\"tagente\":{\"nombre\":\"windows-1\"}}" source_data[4]="{\"tagente\":{\"nombre\":\"windows-1\"}}"
options[4]="" options[4]=""
style[4]="{\"shape\":\"circle\",\"image\":\"images/networkmap/windows@os.svg\",\"width\":null,\"height\":null,\"label\":\"windows-1\"}" style[4]="{\"shape\":\"circle\",\"image\":\"images\/networkmap\/windows@os.svg\",\"width\":null,\"height\":null,\"label\":\"windows-1\"}"
id[5]="5" id[5]="5"
id_map[5]="2" id_map[5]="2"
@ -92,7 +92,7 @@ refresh[5]="0"
source[5]="0" source[5]="0"
source_data[5]="{\"tagente\":{\"nombre\":\"windows-2\"}}" source_data[5]="{\"tagente\":{\"nombre\":\"windows-2\"}}"
options[5]="" options[5]=""
style[5]="{\"shape\":\"circle\",\"image\":\"images/networkmap/windows@os.svg\",\"width\":null,\"height\":null,\"label\":\"windows-2\"}" style[5]="{\"shape\":\"circle\",\"image\":\"images\/networkmap\/windows@os.svg\",\"width\":null,\"height\":null,\"label\":\"windows-2\"}"
id[6]="6" id[6]="6"
id_map[6]="2" id_map[6]="2"
@ -105,7 +105,7 @@ refresh[6]="0"
source[6]="0" source[6]="0"
source_data[6]="{\"tagente\":{\"nombre\":\"linux-1\"}}" source_data[6]="{\"tagente\":{\"nombre\":\"linux-1\"}}"
options[6]="" options[6]=""
style[6]="{\"shape\":\"circle\",\"image\":\"images/networkmap/linux@os.svg\",\"width\":null,\"height\":null,\"label\":\"linux-1\"}" style[6]="{\"shape\":\"circle\",\"image\":\"images\/networkmap\/linux@os.svg\",\"width\":null,\"height\":null,\"label\":\"linux-1\"}"
id[7]="7" id[7]="7"
id_map[7]="2" id_map[7]="2"
@ -118,7 +118,7 @@ refresh[7]="0"
source[7]="0" source[7]="0"
source_data[7]="{\"tagente\":{\"nombre\":\"linux-2\"}}" source_data[7]="{\"tagente\":{\"nombre\":\"linux-2\"}}"
options[7]="" options[7]=""
style[7]="{\"shape\":\"circle\",\"image\":\"images/networkmap/linux@os.svg\",\"width\":null,\"height\":null,\"label\":\"linux-2\"}" style[7]="{\"shape\":\"circle\",\"image\":\"images\/networkmap\/linux@os.svg\",\"width\":null,\"height\":null,\"label\":\"linux-2\"}"
id[8]="8" id[8]="8"
id_map[8]="2" id_map[8]="2"
@ -131,7 +131,7 @@ refresh[8]="0"
source[8]="0" source[8]="0"
source_data[8]="{\"tagente\":{\"nombre\":\"linux-3\"}}" source_data[8]="{\"tagente\":{\"nombre\":\"linux-3\"}}"
options[8]="" options[8]=""
style[8]="{\"shape\":\"circle\",\"image\":\"images/networkmap/linux@os.svg\",\"width\":null,\"height\":null,\"label\":\"linux-3\"}" style[8]="{\"shape\":\"circle\",\"image\":\"images\/networkmap\/linux@os.svg\",\"width\":null,\"height\":null,\"label\":\"linux-3\"}"
id[9]="9" id[9]="9"
id_map[9]="2" id_map[9]="2"
@ -144,7 +144,7 @@ refresh[9]="0"
source[9]="0" source[9]="0"
source_data[9]="{\"tagente\":{\"nombre\":\"linux-4\"}}" source_data[9]="{\"tagente\":{\"nombre\":\"linux-4\"}}"
options[9]="" options[9]=""
style[9]="{\"shape\":\"circle\",\"image\":\"images/networkmap/linux@os.svg\",\"width\":null,\"height\":null,\"label\":\"linux-4\"}" style[9]="{\"shape\":\"circle\",\"image\":\"images\/networkmap\/linux@os.svg\",\"width\":null,\"height\":null,\"label\":\"linux-4\"}"
id[10]="10" id[10]="10"
id_map[10]="2" id_map[10]="2"
@ -157,7 +157,7 @@ refresh[10]="0"
source[10]="0" source[10]="0"
source_data[10]="{\"tagente\":{\"nombre\":\"cisco-2\"}}" source_data[10]="{\"tagente\":{\"nombre\":\"cisco-2\"}}"
options[10]="" options[10]=""
style[10]="{\"shape\":\"circle\",\"image\":\"images/networkmap/cisco@os.svg\",\"width\":null,\"height\":null,\"label\":\"cisco-2\"}" style[10]="{\"shape\":\"circle\",\"image\":\"images\/networkmap\/cisco@os.svg\",\"width\":null,\"height\":null,\"label\":\"cisco-2\"}"
id[11]="11" id[11]="11"
id_map[11]="2" id_map[11]="2"
@ -170,7 +170,7 @@ refresh[11]="0"
source[11]="0" source[11]="0"
source_data[11]="{\"tagente\":{\"nombre\":\"freebsd-2\"}}" source_data[11]="{\"tagente\":{\"nombre\":\"freebsd-2\"}}"
options[11]="" options[11]=""
style[11]="{\"shape\":\"circle\",\"image\":\"images/networkmap/freebsd@os.svg\",\"width\":null,\"height\":null,\"label\":\"freebsd-2\"}" style[11]="{\"shape\":\"circle\",\"image\":\"images\/networkmap\/freebsd@os.svg\",\"width\":null,\"height\":null,\"label\":\"freebsd-2\"}"
id[12]="12" id[12]="12"
id_map[12]="2" id_map[12]="2"
@ -183,7 +183,7 @@ refresh[12]="0"
source[12]="0" source[12]="0"
source_data[12]="{\"tagente\":{\"nombre\":\"macos-2\"}}" source_data[12]="{\"tagente\":{\"nombre\":\"macos-2\"}}"
options[12]="" options[12]=""
style[12]="{\"shape\":\"circle\",\"image\":\"images/networkmap/apple@os.svg\",\"width\":null,\"height\":null,\"label\":\"macos-2\"}" style[12]="{\"shape\":\"circle\",\"image\":\"images\/networkmap\/apple@os.svg\",\"width\":null,\"height\":null,\"label\":\"macos-2\"}"
id[13]="13" id[13]="13"
id_map[13]="2" id_map[13]="2"
@ -196,7 +196,7 @@ refresh[13]="0"
source[13]="0" source[13]="0"
source_data[13]="{\"tagente\":{\"nombre\":\"windows-3\"}}" source_data[13]="{\"tagente\":{\"nombre\":\"windows-3\"}}"
options[13]="" options[13]=""
style[13]="{\"shape\":\"circle\",\"image\":\"images/networkmap/windows@os.svg\",\"width\":null,\"height\":null,\"label\":\"windows-3\"}" style[13]="{\"shape\":\"circle\",\"image\":\"images\/networkmap\/windows@os.svg\",\"width\":null,\"height\":null,\"label\":\"windows-3\"}"
id[14]="14" id[14]="14"
id_map[14]="2" id_map[14]="2"
@ -209,7 +209,7 @@ refresh[14]="0"
source[14]="0" source[14]="0"
source_data[14]="{\"tagente\":{\"nombre\":\"windows-4\"}}" source_data[14]="{\"tagente\":{\"nombre\":\"windows-4\"}}"
options[14]="" options[14]=""
style[14]="{\"shape\":\"circle\",\"image\":\"images/networkmap/windows@os.svg\",\"width\":null,\"height\":null,\"label\":\"windows-4\"}" style[14]="{\"shape\":\"circle\",\"image\":\"images\/networkmap\/windows@os.svg\",\"width\":null,\"height\":null,\"label\":\"windows-4\"}"
id[15]="15" id[15]="15"
id_map[15]="2" id_map[15]="2"
@ -222,7 +222,7 @@ refresh[15]="0"
source[15]="0" source[15]="0"
source_data[15]="{\"tagente\":{\"nombre\":\"linux-5\"}}" source_data[15]="{\"tagente\":{\"nombre\":\"linux-5\"}}"
options[15]="" options[15]=""
style[15]="{\"shape\":\"circle\",\"image\":\"images/networkmap/linux@os.svg\",\"width\":null,\"height\":null,\"label\":\"linux-5\"}" style[15]="{\"shape\":\"circle\",\"image\":\"images\/networkmap\/linux@os.svg\",\"width\":null,\"height\":null,\"label\":\"linux-5\"}"
id[16]="16" id[16]="16"
id_map[16]="2" id_map[16]="2"
@ -235,7 +235,7 @@ refresh[16]="0"
source[16]="0" source[16]="0"
source_data[16]="{\"tagente\":{\"nombre\":\"linux-6\"}}" source_data[16]="{\"tagente\":{\"nombre\":\"linux-6\"}}"
options[16]="" options[16]=""
style[16]="{\"shape\":\"circle\",\"image\":\"images/networkmap/linux@os.svg\",\"width\":null,\"height\":null,\"label\":\"linux-6\"}" style[16]="{\"shape\":\"circle\",\"image\":\"images\/networkmap\/linux@os.svg\",\"width\":null,\"height\":null,\"label\":\"linux-6\"}"
id[17]="17" id[17]="17"
id_map[17]="2" id_map[17]="2"
@ -248,7 +248,7 @@ refresh[17]="0"
source[17]="0" source[17]="0"
source_data[17]="{\"tagente\":{\"nombre\":\"linux-7\"}}" source_data[17]="{\"tagente\":{\"nombre\":\"linux-7\"}}"
options[17]="" options[17]=""
style[17]="{\"shape\":\"circle\",\"image\":\"images/networkmap/linux@os.svg\",\"width\":null,\"height\":null,\"label\":\"linux-7\"}" style[17]="{\"shape\":\"circle\",\"image\":\"images\/networkmap\/linux@os.svg\",\"width\":null,\"height\":null,\"label\":\"linux-7\"}"
id[18]="18" id[18]="18"
id_map[18]="2" id_map[18]="2"
@ -261,7 +261,7 @@ refresh[18]="0"
source[18]="0" source[18]="0"
source_data[18]="{\"tagente\":{\"nombre\":\"linux-8\"}}" source_data[18]="{\"tagente\":{\"nombre\":\"linux-8\"}}"
options[18]="" options[18]=""
style[18]="{\"shape\":\"circle\",\"image\":\"images/networkmap/linux@os.svg\",\"width\":null,\"height\":null,\"label\":\"linux-8\"}" style[18]="{\"shape\":\"circle\",\"image\":\"images\/networkmap\/linux@os.svg\",\"width\":null,\"height\":null,\"label\":\"linux-8\"}"
id[19]="19" id[19]="19"
id_map[19]="2" id_map[19]="2"
@ -274,7 +274,7 @@ refresh[19]="0"
source[19]="0" source[19]="0"
source_data[19]="{\"tagente\":{\"nombre\":\"cisco-3\"}}" source_data[19]="{\"tagente\":{\"nombre\":\"cisco-3\"}}"
options[19]="" options[19]=""
style[19]="{\"shape\":\"circle\",\"image\":\"images/networkmap/cisco@os.svg\",\"width\":null,\"height\":null,\"label\":\"cisco-3\"}" style[19]="{\"shape\":\"circle\",\"image\":\"images\/networkmap\/cisco@os.svg\",\"width\":null,\"height\":null,\"label\":\"cisco-3\"}"
id[20]="20" id[20]="20"
id_map[20]="2" id_map[20]="2"
@ -287,7 +287,7 @@ refresh[20]="0"
source[20]="0" source[20]="0"
source_data[20]="{\"tagente\":{\"nombre\":\"freebsd-3\"}}" source_data[20]="{\"tagente\":{\"nombre\":\"freebsd-3\"}}"
options[20]="" options[20]=""
style[20]="{\"shape\":\"circle\",\"image\":\"images/networkmap/freebsd@os.svg\",\"width\":null,\"height\":null,\"label\":\"freebsd-3\"}" style[20]="{\"shape\":\"circle\",\"image\":\"images\/networkmap\/freebsd@os.svg\",\"width\":null,\"height\":null,\"label\":\"freebsd-3\"}"
id[21]="21" id[21]="21"
id_map[21]="2" id_map[21]="2"
@ -300,7 +300,7 @@ refresh[21]="0"
source[21]="0" source[21]="0"
source_data[21]="{\"tagente\":{\"nombre\":\"macos-3\"}}" source_data[21]="{\"tagente\":{\"nombre\":\"macos-3\"}}"
options[21]="" options[21]=""
style[21]="{\"shape\":\"circle\",\"image\":\"images/networkmap/apple@os.svg\",\"width\":null,\"height\":null,\"label\":\"macos-3\"}" style[21]="{\"shape\":\"circle\",\"image\":\"images\/networkmap\/apple@os.svg\",\"width\":null,\"height\":null,\"label\":\"macos-3\"}"
id[22]="22" id[22]="22"
id_map[22]="2" id_map[22]="2"
@ -313,7 +313,7 @@ refresh[22]="0"
source[22]="0" source[22]="0"
source_data[22]="{\"tagente\":{\"nombre\":\"windows-5\"}}" source_data[22]="{\"tagente\":{\"nombre\":\"windows-5\"}}"
options[22]="" options[22]=""
style[22]="{\"shape\":\"circle\",\"image\":\"images/networkmap/windows@os.svg\",\"width\":null,\"height\":null,\"label\":\"windows-5\"}" style[22]="{\"shape\":\"circle\",\"image\":\"images\/networkmap\/windows@os.svg\",\"width\":null,\"height\":null,\"label\":\"windows-5\"}"
id[23]="23" id[23]="23"
id_map[23]="2" id_map[23]="2"
@ -326,7 +326,7 @@ refresh[23]="0"
source[23]="0" source[23]="0"
source_data[23]="{\"tagente\":{\"nombre\":\"windows-6\"}}" source_data[23]="{\"tagente\":{\"nombre\":\"windows-6\"}}"
options[23]="" options[23]=""
style[23]="{\"shape\":\"circle\",\"image\":\"images/networkmap/windows@os.svg\",\"width\":null,\"height\":null,\"label\":\"windows-6\"}" style[23]="{\"shape\":\"circle\",\"image\":\"images\/networkmap\/windows@os.svg\",\"width\":null,\"height\":null,\"label\":\"windows-6\"}"
id[24]="24" id[24]="24"
id_map[24]="2" id_map[24]="2"
@ -339,7 +339,7 @@ refresh[24]="0"
source[24]="0" source[24]="0"
source_data[24]="{\"tagente\":{\"nombre\":\"linux-9\"}}" source_data[24]="{\"tagente\":{\"nombre\":\"linux-9\"}}"
options[24]="" options[24]=""
style[24]="{\"shape\":\"circle\",\"image\":\"images/networkmap/linux@os.svg\",\"width\":null,\"height\":null,\"label\":\"linux-9\"}" style[24]="{\"shape\":\"circle\",\"image\":\"images\/networkmap\/linux@os.svg\",\"width\":null,\"height\":null,\"label\":\"linux-9\"}"
id[25]="25" id[25]="25"
id_map[25]="2" id_map[25]="2"
@ -352,7 +352,7 @@ refresh[25]="0"
source[25]="0" source[25]="0"
source_data[25]="{\"tagente\":{\"nombre\":\"linux-10\"}}" source_data[25]="{\"tagente\":{\"nombre\":\"linux-10\"}}"
options[25]="" options[25]=""
style[25]="{\"shape\":\"circle\",\"image\":\"images/networkmap/linux@os.svg\",\"width\":null,\"height\":null,\"label\":\"linux-10\"}" style[25]="{\"shape\":\"circle\",\"image\":\"images\/networkmap\/linux@os.svg\",\"width\":null,\"height\":null,\"label\":\"linux-10\"}"
id[26]="26" id[26]="26"
id_map[26]="2" id_map[26]="2"
@ -365,7 +365,7 @@ refresh[26]="0"
source[26]="0" source[26]="0"
source_data[26]="{\"tagente\":{\"nombre\":\"linux-11\"}}" source_data[26]="{\"tagente\":{\"nombre\":\"linux-11\"}}"
options[26]="" options[26]=""
style[26]="{\"shape\":\"circle\",\"image\":\"images/networkmap/linux@os.svg\",\"width\":null,\"height\":null,\"label\":\"linux-11\"}" style[26]="{\"shape\":\"circle\",\"image\":\"images\/networkmap\/linux@os.svg\",\"width\":null,\"height\":null,\"label\":\"linux-11\"}"
id[27]="27" id[27]="27"
id_map[27]="2" id_map[27]="2"
@ -378,13 +378,13 @@ refresh[27]="0"
source[27]="0" source[27]="0"
source_data[27]="{\"tagente\":{\"nombre\":\"linux-12\"}}" source_data[27]="{\"tagente\":{\"nombre\":\"linux-12\"}}"
options[27]="" options[27]=""
style[27]="{\"shape\":\"circle\",\"image\":\"images/networkmap/linux@os.svg\",\"width\":null,\"height\":null,\"label\":\"linux-12\"}" style[27]="{\"shape\":\"circle\",\"image\":\"images\/networkmap\/linux@os.svg\",\"width\":null,\"height\":null,\"label\":\"linux-12\"}"
[trel_item] [trel_item]
id[1]="1" id[1]="1"
id_parent[1]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"12\",\"x\":\"854\",\"y\":\"221\",\"z\":\"0\"}}" id_parent[1]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"cisco-1\"}},\"x\":\"854\",\"y\":\"221\",\"z\":\"0\"}}"
id_child[1]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"11\",\"x\":\"1184\",\"y\":\"-25\",\"z\":\"0\"}}" id_child[1]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"freebsd-1\"}},\"x\":\"1184\",\"y\":\"-25\",\"z\":\"0\"}}"
id_map[1]="2" id_map[1]="2"
id_parent_source_data[1]="{\"tagente\":{\"nombre\":\"cisco-1\"}}" id_parent_source_data[1]="{\"tagente\":{\"nombre\":\"cisco-1\"}}"
id_child_source_data[1]="{\"tagente\":{\"nombre\":\"freebsd-1\"}}" id_child_source_data[1]="{\"tagente\":{\"nombre\":\"freebsd-1\"}}"
@ -394,8 +394,8 @@ id_item[1]="0"
deleted[1]="0" deleted[1]="0"
id[2]="2" id[2]="2"
id_parent[2]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"12\",\"x\":\"854\",\"y\":\"221\",\"z\":\"0\"}}" id_parent[2]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"cisco-1\"}},\"x\":\"854\",\"y\":\"221\",\"z\":\"0\"}}"
id_child[2]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"10\",\"x\":\"1268\",\"y\":\"235\",\"z\":\"0\"}}" id_child[2]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"macos-1\"}},\"x\":\"1268\",\"y\":\"235\",\"z\":\"0\"}}"
id_map[2]="2" id_map[2]="2"
id_parent_source_data[2]="{\"tagente\":{\"nombre\":\"cisco-1\"}}" id_parent_source_data[2]="{\"tagente\":{\"nombre\":\"cisco-1\"}}"
id_child_source_data[2]="{\"tagente\":{\"nombre\":\"macos-1\"}}" id_child_source_data[2]="{\"tagente\":{\"nombre\":\"macos-1\"}}"
@ -405,8 +405,8 @@ id_item[2]="0"
deleted[2]="0" deleted[2]="0"
id[3]="3" id[3]="3"
id_parent[3]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"12\",\"x\":\"854\",\"y\":\"221\",\"z\":\"0\"}}" id_parent[3]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"cisco-1\"}},\"x\":\"854\",\"y\":\"221\",\"z\":\"0\"}}"
id_child[3]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"8\",\"x\":\"528\",\"y\":\"-37\",\"z\":\"0\"}}" id_child[3]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"windows-1\"}},\"x\":\"528\",\"y\":\"-37\",\"z\":\"0\"}}"
id_map[3]="2" id_map[3]="2"
id_parent_source_data[3]="{\"tagente\":{\"nombre\":\"cisco-1\"}}" id_parent_source_data[3]="{\"tagente\":{\"nombre\":\"cisco-1\"}}"
id_child_source_data[3]="{\"tagente\":{\"nombre\":\"windows-1\"}}" id_child_source_data[3]="{\"tagente\":{\"nombre\":\"windows-1\"}}"
@ -416,8 +416,8 @@ id_item[3]="0"
deleted[3]="0" deleted[3]="0"
id[4]="4" id[4]="4"
id_parent[4]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"12\",\"x\":\"854\",\"y\":\"221\",\"z\":\"0\"}}" id_parent[4]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"cisco-1\"}},\"x\":\"854\",\"y\":\"221\",\"z\":\"0\"}}"
id_child[4]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"9\",\"x\":\"514\",\"y\":\"389\",\"z\":\"0\"}}" id_child[4]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"windows-2\"}},\"x\":\"514\",\"y\":\"389\",\"z\":\"0\"}}"
id_map[4]="2" id_map[4]="2"
id_parent_source_data[4]="{\"tagente\":{\"nombre\":\"cisco-1\"}}" id_parent_source_data[4]="{\"tagente\":{\"nombre\":\"cisco-1\"}}"
id_child_source_data[4]="{\"tagente\":{\"nombre\":\"windows-2\"}}" id_child_source_data[4]="{\"tagente\":{\"nombre\":\"windows-2\"}}"
@ -427,8 +427,8 @@ id_item[4]="0"
deleted[4]="0" deleted[4]="0"
id[5]="5" id[5]="5"
id_parent[5]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"8\",\"x\":\"528\",\"y\":\"-37\",\"z\":\"0\"}}" id_parent[5]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"windows-1\"}},\"x\":\"528\",\"y\":\"-37\",\"z\":\"0\"}}"
id_child[5]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"4\",\"x\":\"342\",\"y\":\"-273\",\"z\":\"0\"}}" id_child[5]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"linux-1\"}},\"x\":\"342\",\"y\":\"-273\",\"z\":\"0\"}}"
id_map[5]="2" id_map[5]="2"
id_parent_source_data[5]="{\"tagente\":{\"nombre\":\"windows-1\"}}" id_parent_source_data[5]="{\"tagente\":{\"nombre\":\"windows-1\"}}"
id_child_source_data[5]="{\"tagente\":{\"nombre\":\"linux-1\"}}" id_child_source_data[5]="{\"tagente\":{\"nombre\":\"linux-1\"}}"
@ -438,8 +438,8 @@ id_item[5]="0"
deleted[5]="0" deleted[5]="0"
id[6]="6" id[6]="6"
id_parent[6]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"8\",\"x\":\"528\",\"y\":\"-37\",\"z\":\"0\"}}" id_parent[6]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"windows-1\"}},\"x\":\"528\",\"y\":\"-37\",\"z\":\"0\"}}"
id_child[6]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"5\",\"x\":\"240\",\"y\":\"-7\",\"z\":\"0\"}}" id_child[6]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"linux-2\"}},\"x\":\"240\",\"y\":\"-7\",\"z\":\"0\"}}"
id_map[6]="2" id_map[6]="2"
id_parent_source_data[6]="{\"tagente\":{\"nombre\":\"windows-1\"}}" id_parent_source_data[6]="{\"tagente\":{\"nombre\":\"windows-1\"}}"
id_child_source_data[6]="{\"tagente\":{\"nombre\":\"linux-2\"}}" id_child_source_data[6]="{\"tagente\":{\"nombre\":\"linux-2\"}}"
@ -449,8 +449,8 @@ id_item[6]="0"
deleted[6]="0" deleted[6]="0"
id[7]="7" id[7]="7"
id_parent[7]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"9\",\"x\":\"514\",\"y\":\"389\",\"z\":\"0\"}}" id_parent[7]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"windows-2\"}},\"x\":\"514\",\"y\":\"389\",\"z\":\"0\"}}"
id_child[7]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"6\",\"x\":\"214\",\"y\":\"275\",\"z\":\"0\"}}" id_child[7]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"linux-3\"}},\"x\":\"214\",\"y\":\"275\",\"z\":\"0\"}}"
id_map[7]="2" id_map[7]="2"
id_parent_source_data[7]="{\"tagente\":{\"nombre\":\"windows-2\"}}" id_parent_source_data[7]="{\"tagente\":{\"nombre\":\"windows-2\"}}"
id_child_source_data[7]="{\"tagente\":{\"nombre\":\"linux-3\"}}" id_child_source_data[7]="{\"tagente\":{\"nombre\":\"linux-3\"}}"
@ -460,8 +460,8 @@ id_item[7]="0"
deleted[7]="0" deleted[7]="0"
id[8]="8" id[8]="8"
id_parent[8]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"9\",\"x\":\"514\",\"y\":\"389\",\"z\":\"0\"}}" id_parent[8]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"windows-2\"}},\"x\":\"514\",\"y\":\"389\",\"z\":\"0\"}}"
id_child[8]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"7\",\"x\":\"226\",\"y\":\"595\",\"z\":\"0\"}}" id_child[8]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"linux-4\"}},\"x\":\"226\",\"y\":\"595\",\"z\":\"0\"}}"
id_map[8]="2" id_map[8]="2"
id_parent_source_data[8]="{\"tagente\":{\"nombre\":\"windows-2\"}}" id_parent_source_data[8]="{\"tagente\":{\"nombre\":\"windows-2\"}}"
id_child_source_data[8]="{\"tagente\":{\"nombre\":\"linux-4\"}}" id_child_source_data[8]="{\"tagente\":{\"nombre\":\"linux-4\"}}"
@ -471,8 +471,8 @@ id_item[8]="0"
deleted[8]="0" deleted[8]="0"
id[9]="9" id[9]="9"
id_parent[9]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"12\",\"x\":\"854\",\"y\":\"221\",\"z\":\"0\"}}" id_parent[9]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"cisco-1\"}},\"x\":\"854\",\"y\":\"221\",\"z\":\"0\"}}"
id_child[9]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"22\",\"x\":\"1036\",\"y\":\"711\",\"z\":\"0\"}}" id_child[9]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"cisco-2\"}},\"x\":\"1036\",\"y\":\"711\",\"z\":\"0\"}}"
id_map[9]="2" id_map[9]="2"
id_parent_source_data[9]="{\"tagente\":{\"nombre\":\"cisco-1\"}}" id_parent_source_data[9]="{\"tagente\":{\"nombre\":\"cisco-1\"}}"
id_child_source_data[9]="{\"tagente\":{\"nombre\":\"cisco-2\"}}" id_child_source_data[9]="{\"tagente\":{\"nombre\":\"cisco-2\"}}"
@ -482,8 +482,8 @@ id_item[9]="0"
deleted[9]="0" deleted[9]="0"
id[10]="10" id[10]="10"
id_parent[10]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"12\",\"x\":\"854\",\"y\":\"221\",\"z\":\"0\"}}" id_parent[10]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"cisco-1\"}},\"x\":\"854\",\"y\":\"221\",\"z\":\"0\"}}"
id_child[10]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"21\",\"x\":\"892\",\"y\":\"-47\",\"z\":\"0\"}}" id_child[10]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"freebsd-2\"}},\"x\":\"892\",\"y\":\"-47\",\"z\":\"0\"}}"
id_map[10]="2" id_map[10]="2"
id_parent_source_data[10]="{\"tagente\":{\"nombre\":\"cisco-1\"}}" id_parent_source_data[10]="{\"tagente\":{\"nombre\":\"cisco-1\"}}"
id_child_source_data[10]="{\"tagente\":{\"nombre\":\"freebsd-2\"}}" id_child_source_data[10]="{\"tagente\":{\"nombre\":\"freebsd-2\"}}"
@ -493,8 +493,8 @@ id_item[10]="0"
deleted[10]="0" deleted[10]="0"
id[11]="11" id[11]="11"
id_parent[11]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"12\",\"x\":\"854\",\"y\":\"221\",\"z\":\"0\"}}" id_parent[11]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"cisco-1\"}},\"x\":\"854\",\"y\":\"221\",\"z\":\"0\"}}"
id_child[11]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"20\",\"x\":\"1150\",\"y\":\"409\",\"z\":\"0\"}}" id_child[11]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"macos-2\"}},\"x\":\"1150\",\"y\":\"409\",\"z\":\"0\"}}"
id_map[11]="2" id_map[11]="2"
id_parent_source_data[11]="{\"tagente\":{\"nombre\":\"cisco-1\"}}" id_parent_source_data[11]="{\"tagente\":{\"nombre\":\"cisco-1\"}}"
id_child_source_data[11]="{\"tagente\":{\"nombre\":\"macos-2\"}}" id_child_source_data[11]="{\"tagente\":{\"nombre\":\"macos-2\"}}"
@ -504,8 +504,8 @@ id_item[11]="0"
deleted[11]="0" deleted[11]="0"
id[12]="12" id[12]="12"
id_parent[12]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"22\",\"x\":\"1036\",\"y\":\"711\",\"z\":\"0\"}}" id_parent[12]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"cisco-2\"}},\"x\":\"1036\",\"y\":\"711\",\"z\":\"0\"}}"
id_child[12]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"18\",\"x\":\"686\",\"y\":\"875\",\"z\":\"0\"}}" id_child[12]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"windows-3\"}},\"x\":\"686\",\"y\":\"875\",\"z\":\"0\"}}"
id_map[12]="2" id_map[12]="2"
id_parent_source_data[12]="{\"tagente\":{\"nombre\":\"cisco-2\"}}" id_parent_source_data[12]="{\"tagente\":{\"nombre\":\"cisco-2\"}}"
id_child_source_data[12]="{\"tagente\":{\"nombre\":\"windows-3\"}}" id_child_source_data[12]="{\"tagente\":{\"nombre\":\"windows-3\"}}"
@ -515,8 +515,8 @@ id_item[12]="0"
deleted[12]="0" deleted[12]="0"
id[13]="13" id[13]="13"
id_parent[13]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"22\",\"x\":\"1036\",\"y\":\"711\",\"z\":\"0\"}}" id_parent[13]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"cisco-2\"}},\"x\":\"1036\",\"y\":\"711\",\"z\":\"0\"}}"
id_child[13]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"19\",\"x\":\"1452\",\"y\":\"847\",\"z\":\"0\"}}" id_child[13]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"windows-4\"}},\"x\":\"1452\",\"y\":\"847\",\"z\":\"0\"}}"
id_map[13]="2" id_map[13]="2"
id_parent_source_data[13]="{\"tagente\":{\"nombre\":\"cisco-2\"}}" id_parent_source_data[13]="{\"tagente\":{\"nombre\":\"cisco-2\"}}"
id_child_source_data[13]="{\"tagente\":{\"nombre\":\"windows-4\"}}" id_child_source_data[13]="{\"tagente\":{\"nombre\":\"windows-4\"}}"
@ -526,8 +526,8 @@ id_item[13]="0"
deleted[13]="0" deleted[13]="0"
id[14]="14" id[14]="14"
id_parent[14]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"18\",\"x\":\"686\",\"y\":\"875\",\"z\":\"0\"}}" id_parent[14]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"windows-3\"}},\"x\":\"686\",\"y\":\"875\",\"z\":\"0\"}}"
id_child[14]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"14\",\"x\":\"314\",\"y\":\"845\",\"z\":\"0\"}}" id_child[14]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"linux-5\"}},\"x\":\"314\",\"y\":\"845\",\"z\":\"0\"}}"
id_map[14]="2" id_map[14]="2"
id_parent_source_data[14]="{\"tagente\":{\"nombre\":\"windows-3\"}}" id_parent_source_data[14]="{\"tagente\":{\"nombre\":\"windows-3\"}}"
id_child_source_data[14]="{\"tagente\":{\"nombre\":\"linux-5\"}}" id_child_source_data[14]="{\"tagente\":{\"nombre\":\"linux-5\"}}"
@ -537,8 +537,8 @@ id_item[14]="0"
deleted[14]="0" deleted[14]="0"
id[15]="15" id[15]="15"
id_parent[15]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"18\",\"x\":\"686\",\"y\":\"875\",\"z\":\"0\"}}" id_parent[15]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"windows-3\"}},\"x\":\"686\",\"y\":\"875\",\"z\":\"0\"}}"
id_child[15]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"15\",\"x\":\"474\",\"y\":\"1043\",\"z\":\"0\"}}" id_child[15]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"linux-6\"}},\"x\":\"474\",\"y\":\"1043\",\"z\":\"0\"}}"
id_map[15]="2" id_map[15]="2"
id_parent_source_data[15]="{\"tagente\":{\"nombre\":\"windows-3\"}}" id_parent_source_data[15]="{\"tagente\":{\"nombre\":\"windows-3\"}}"
id_child_source_data[15]="{\"tagente\":{\"nombre\":\"linux-6\"}}" id_child_source_data[15]="{\"tagente\":{\"nombre\":\"linux-6\"}}"
@ -548,8 +548,8 @@ id_item[15]="0"
deleted[15]="0" deleted[15]="0"
id[16]="16" id[16]="16"
id_parent[16]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"19\",\"x\":\"1452\",\"y\":\"847\",\"z\":\"0\"}}" id_parent[16]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"windows-4\"}},\"x\":\"1452\",\"y\":\"847\",\"z\":\"0\"}}"
id_child[16]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"16\",\"x\":\"1812\",\"y\":\"1011\",\"z\":\"0\"}}" id_child[16]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"linux-7\"}},\"x\":\"1812\",\"y\":\"1011\",\"z\":\"0\"}}"
id_map[16]="2" id_map[16]="2"
id_parent_source_data[16]="{\"tagente\":{\"nombre\":\"windows-4\"}}" id_parent_source_data[16]="{\"tagente\":{\"nombre\":\"windows-4\"}}"
id_child_source_data[16]="{\"tagente\":{\"nombre\":\"linux-7\"}}" id_child_source_data[16]="{\"tagente\":{\"nombre\":\"linux-7\"}}"
@ -559,8 +559,8 @@ id_item[16]="0"
deleted[16]="0" deleted[16]="0"
id[17]="17" id[17]="17"
id_parent[17]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"19\",\"x\":\"1452\",\"y\":\"847\",\"z\":\"0\"}}" id_parent[17]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"windows-4\"}},\"x\":\"1452\",\"y\":\"847\",\"z\":\"0\"}}"
id_child[17]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"17\",\"x\":\"1828\",\"y\":\"723\",\"z\":\"0\"}}" id_child[17]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"linux-8\"}},\"x\":\"1828\",\"y\":\"723\",\"z\":\"0\"}}"
id_map[17]="2" id_map[17]="2"
id_parent_source_data[17]="{\"tagente\":{\"nombre\":\"windows-4\"}}" id_parent_source_data[17]="{\"tagente\":{\"nombre\":\"windows-4\"}}"
id_child_source_data[17]="{\"tagente\":{\"nombre\":\"linux-8\"}}" id_child_source_data[17]="{\"tagente\":{\"nombre\":\"linux-8\"}}"
@ -570,8 +570,8 @@ id_item[17]="0"
deleted[17]="0" deleted[17]="0"
id[18]="18" id[18]="18"
id_parent[18]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"10\",\"x\":\"1268\",\"y\":\"235\",\"z\":\"0\"}}" id_parent[18]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"macos-1\"}},\"x\":\"1268\",\"y\":\"235\",\"z\":\"0\"}}"
id_child[18]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"32\",\"x\":\"1824\",\"y\":\"285\",\"z\":\"0\"}}" id_child[18]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"cisco-3\"}},\"x\":\"1824\",\"y\":\"285\",\"z\":\"0\"}}"
id_map[18]="2" id_map[18]="2"
id_parent_source_data[18]="{\"tagente\":{\"nombre\":\"macos-1\"}}" id_parent_source_data[18]="{\"tagente\":{\"nombre\":\"macos-1\"}}"
id_child_source_data[18]="{\"tagente\":{\"nombre\":\"cisco-3\"}}" id_child_source_data[18]="{\"tagente\":{\"nombre\":\"cisco-3\"}}"
@ -581,8 +581,8 @@ id_item[18]="0"
deleted[18]="0" deleted[18]="0"
id[19]="19" id[19]="19"
id_parent[19]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"7\",\"x\":\"226\",\"y\":\"595\",\"z\":\"0\"}}" id_parent[19]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"linux-4\"}},\"x\":\"226\",\"y\":\"595\",\"z\":\"0\"}}"
id_child[19]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"31\",\"x\":\"-82\",\"y\":\"583\",\"z\":\"0\"}}" id_child[19]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"freebsd-3\"}},\"x\":\"-82\",\"y\":\"583\",\"z\":\"0\"}}"
id_map[19]="2" id_map[19]="2"
id_parent_source_data[19]="{\"tagente\":{\"nombre\":\"linux-4\"}}" id_parent_source_data[19]="{\"tagente\":{\"nombre\":\"linux-4\"}}"
id_child_source_data[19]="{\"tagente\":{\"nombre\":\"freebsd-3\"}}" id_child_source_data[19]="{\"tagente\":{\"nombre\":\"freebsd-3\"}}"
@ -592,8 +592,8 @@ id_item[19]="0"
deleted[19]="0" deleted[19]="0"
id[20]="20" id[20]="20"
id_parent[20]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"31\",\"x\":\"-82\",\"y\":\"583\",\"z\":\"0\"}}" id_parent[20]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"freebsd-3\"}},\"x\":\"-82\",\"y\":\"583\",\"z\":\"0\"}}"
id_child[20]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"30\",\"x\":\"-140\",\"y\":\"299\",\"z\":\"0\"}}" id_child[20]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"macos-3\"}},\"x\":\"-140\",\"y\":\"299\",\"z\":\"0\"}}"
id_map[20]="2" id_map[20]="2"
id_parent_source_data[20]="{\"tagente\":{\"nombre\":\"freebsd-3\"}}" id_parent_source_data[20]="{\"tagente\":{\"nombre\":\"freebsd-3\"}}"
id_child_source_data[20]="{\"tagente\":{\"nombre\":\"macos-3\"}}" id_child_source_data[20]="{\"tagente\":{\"nombre\":\"macos-3\"}}"
@ -603,8 +603,8 @@ id_item[20]="0"
deleted[20]="0" deleted[20]="0"
id[21]="21" id[21]="21"
id_parent[21]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"31\",\"x\":\"-82\",\"y\":\"583\",\"z\":\"0\"}}" id_parent[21]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"freebsd-3\"}},\"x\":\"-82\",\"y\":\"583\",\"z\":\"0\"}}"
id_child[21]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"28\",\"x\":\"-390\",\"y\":\"385\",\"z\":\"0\"}}" id_child[21]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"windows-5\"}},\"x\":\"-390\",\"y\":\"385\",\"z\":\"0\"}}"
id_map[21]="2" id_map[21]="2"
id_parent_source_data[21]="{\"tagente\":{\"nombre\":\"freebsd-3\"}}" id_parent_source_data[21]="{\"tagente\":{\"nombre\":\"freebsd-3\"}}"
id_child_source_data[21]="{\"tagente\":{\"nombre\":\"windows-5\"}}" id_child_source_data[21]="{\"tagente\":{\"nombre\":\"windows-5\"}}"
@ -614,8 +614,8 @@ id_item[21]="0"
deleted[21]="0" deleted[21]="0"
id[22]="22" id[22]="22"
id_parent[22]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"31\",\"x\":\"-82\",\"y\":\"583\",\"z\":\"0\"}}" id_parent[22]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"freebsd-3\"}},\"x\":\"-82\",\"y\":\"583\",\"z\":\"0\"}}"
id_child[22]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"29\",\"x\":\"-470\",\"y\":\"671\",\"z\":\"0\"}}" id_child[22]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"windows-6\"}},\"x\":\"-470\",\"y\":\"671\",\"z\":\"0\"}}"
id_map[22]="2" id_map[22]="2"
id_parent_source_data[22]="{\"tagente\":{\"nombre\":\"freebsd-3\"}}" id_parent_source_data[22]="{\"tagente\":{\"nombre\":\"freebsd-3\"}}"
id_child_source_data[22]="{\"tagente\":{\"nombre\":\"windows-6\"}}" id_child_source_data[22]="{\"tagente\":{\"nombre\":\"windows-6\"}}"
@ -625,8 +625,8 @@ id_item[22]="0"
deleted[22]="0" deleted[22]="0"
id[23]="23" id[23]="23"
id_parent[23]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"31\",\"x\":\"-82\",\"y\":\"583\",\"z\":\"0\"}}" id_parent[23]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"freebsd-3\"}},\"x\":\"-82\",\"y\":\"583\",\"z\":\"0\"}}"
id_child[23]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"24\",\"x\":\"-296\",\"y\":\"899\",\"z\":\"0\"}}" id_child[23]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"linux-9\"}},\"x\":\"-296\",\"y\":\"899\",\"z\":\"0\"}}"
id_map[23]="2" id_map[23]="2"
id_parent_source_data[23]="{\"tagente\":{\"nombre\":\"freebsd-3\"}}" id_parent_source_data[23]="{\"tagente\":{\"nombre\":\"freebsd-3\"}}"
id_child_source_data[23]="{\"tagente\":{\"nombre\":\"linux-9\"}}" id_child_source_data[23]="{\"tagente\":{\"nombre\":\"linux-9\"}}"
@ -636,8 +636,8 @@ id_item[23]="0"
deleted[23]="0" deleted[23]="0"
id[24]="24" id[24]="24"
id_parent[24]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"31\",\"x\":\"-82\",\"y\":\"583\",\"z\":\"0\"}}" id_parent[24]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"freebsd-3\"}},\"x\":\"-82\",\"y\":\"583\",\"z\":\"0\"}}"
id_child[24]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"25\",\"x\":\"-25\",\"y\":\"961\",\"z\":\"0\"}}" id_child[24]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"linux-10\"}},\"x\":\"-25\",\"y\":\"961\",\"z\":\"0\"}}"
id_map[24]="2" id_map[24]="2"
id_parent_source_data[24]="{\"tagente\":{\"nombre\":\"freebsd-3\"}}" id_parent_source_data[24]="{\"tagente\":{\"nombre\":\"freebsd-3\"}}"
id_child_source_data[24]="{\"tagente\":{\"nombre\":\"linux-10\"}}" id_child_source_data[24]="{\"tagente\":{\"nombre\":\"linux-10\"}}"
@ -647,8 +647,8 @@ id_item[24]="0"
deleted[24]="0" deleted[24]="0"
id[25]="25" id[25]="25"
id_parent[25]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"32\",\"x\":\"1824\",\"y\":\"285\",\"z\":\"0\"}}" id_parent[25]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"cisco-3\"}},\"x\":\"1824\",\"y\":\"285\",\"z\":\"0\"}}"
id_child[25]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"26\",\"x\":\"1683\",\"y\":\"13\",\"z\":\"0\"}}" id_child[25]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"linux-11\"}},\"x\":\"1683\",\"y\":\"13\",\"z\":\"0\"}}"
id_map[25]="2" id_map[25]="2"
id_parent_source_data[25]="{\"tagente\":{\"nombre\":\"cisco-3\"}}" id_parent_source_data[25]="{\"tagente\":{\"nombre\":\"cisco-3\"}}"
id_child_source_data[25]="{\"tagente\":{\"nombre\":\"linux-11\"}}" id_child_source_data[25]="{\"tagente\":{\"nombre\":\"linux-11\"}}"
@ -658,8 +658,8 @@ id_item[25]="0"
deleted[25]="0" deleted[25]="0"
id[26]="26" id[26]="26"
id_parent[26]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"32\",\"x\":\"1824\",\"y\":\"285\",\"z\":\"0\"}}" id_parent[26]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"cisco-3\"}},\"x\":\"1824\",\"y\":\"285\",\"z\":\"0\"}}"
id_child[26]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":\"27\",\"x\":\"2135\",\"y\":\"51\",\"z\":\"0\"}}" id_child[26]="{\"titem\":{\"id_map\":\"2\",\"type\":\"0\",\"source_data\":{\"tagente\":{\"nombre\":\"linux-12\"}},\"x\":\"2135\",\"y\":\"51\",\"z\":\"0\"}}"
id_map[26]="2" id_map[26]="2"
id_parent_source_data[26]="{\"tagente\":{\"nombre\":\"cisco-3\"}}" id_parent_source_data[26]="{\"tagente\":{\"nombre\":\"cisco-3\"}}"
id_child_source_data[26]="{\"tagente\":{\"nombre\":\"linux-12\"}}" id_child_source_data[26]="{\"tagente\":{\"nombre\":\"linux-12\"}}"

View File

@ -553,6 +553,10 @@ if (!$maps && is_metaconsole() === false) {
['class' => 'main_menu_icon invert_filter'] ['class' => 'main_menu_icon invert_filter']
).'</a>'; ).'</a>';
} else { } else {
$table->cellclass[] = [
3 => 'table_action_buttons',
4 => 'table_action_buttons',
];
$data[3] = '<a class="copy_visualmap" href="index.php?sec=screen&sec2=screens/screens&action=visualmap&pure='.$pure.'&id_layout='.$map['id'].'&amp;copy_layout=1">'.html_print_image( $data[3] = '<a class="copy_visualmap" href="index.php?sec=screen&sec2=screens/screens&action=visualmap&pure='.$pure.'&id_layout='.$map['id'].'&amp;copy_layout=1">'.html_print_image(
'images/copy.svg', 'images/copy.svg',
true, true,

View File

@ -157,7 +157,7 @@ if ((bool) users_is_admin() === false) {
$where = sprintf(' AND id_usuario = "%s"', $config['id_user']); $where = sprintf(' AND id_usuario = "%s"', $config['id_user']);
} }
$sql = 'SELECT * FROM tuser_task_scheduled WHERE id_user_task IN (1,2,3,4) '.$where; $sql = 'SELECT * FROM tuser_task_scheduled WHERE id_user_task IN (1,2,3) '.$where;
$reports = db_get_all_rows_sql($sql); $reports = db_get_all_rows_sql($sql);
if ($reports !== false) { if ($reports !== false) {
$table = new stdClass(); $table = new stdClass();

View File

@ -145,6 +145,11 @@ $table->data['all_0'][0] = html_print_label_input_block(
$table->rowstyle['staticgraph'] = 'display: none;'; $table->rowstyle['staticgraph'] = 'display: none;';
$table->colspan['staticgraph'][0] = 2; $table->colspan['staticgraph'][0] = 2;
$src = $config['homeurl'].'/images/console/icons/appliance_ok.png';
if (is_metaconsole() === true) {
$src = $config['homeurl'].'../../images/console/icons/appliance_ok.png';
}
$table->data['staticgraph'][0] = html_print_label_input_block( $table->data['staticgraph'][0] = html_print_label_input_block(
__('Image'), __('Image'),
'<div class="flex">'.html_print_select( '<div class="flex">'.html_print_select(
@ -160,7 +165,7 @@ $table->data['staticgraph'][0] = html_print_label_input_block(
'', '',
false, false,
'width: 49%' 'width: 49%'
).'<span id="image_prev" class="mrgn_lft_10px mrgn_top-10px"><img src="'.$config['homeurl'].'/images/console/icons/appliance_ok.png"></span></div>' ).'<span id="image_prev" class="mrgn_lft_10px mrgn_top-10px"><img src="'.$src.'"></span></div>'
); );
$table->rowstyle['all_1'] = 'display: none;'; $table->rowstyle['all_1'] = 'display: none;';
@ -902,10 +907,15 @@ function findInSelect(selectid, find){
}) })
} }
$('#image').on('change', function(){ $('#image').on('change', function() {
var img = $(this).val(); var img = $(this).val();
$('#image_prev').html('<img src="<?php echo $config['homeurl']; ?>/images/console/icons/'+img+'.png">'); var src = "<?php echo $config['homeurl']; ?>"+`/images/console/icons/${img}.png`;
}) if (metaconsole_enabled) {
src = "<?php echo $config['homeurl']; ?>"+`../../images/console/icons/${img}.png`;
}
$('#image_prev').html(`<img src="${src}">`);
});
</script> </script>
<style type="text/css"> <style type="text/css">

View File

@ -42,7 +42,7 @@ $table->border = 0;
$table->data = []; $table->data = [];
$table->data[0][] = html_print_label_input_block( $table->data[0][] = html_print_label_input_block(
__('Data storage path'), __('Data storage path').ui_print_help_tip(__('The Netflow data will be saved in the directory specified here, which will be located in the path defined by the "General Network path" parameter (this parameter is found in the General Settings).'), true),
html_print_input_text('netflow_name_dir', $config['netflow_name_dir'], false, 50, 200, true) html_print_input_text('netflow_name_dir', $config['netflow_name_dir'], false, 50, 200, true)
); );

View File

@ -124,6 +124,14 @@ class DiscoveryTaskList extends HTML
$this->printHeader(true) $this->printHeader(true)
); );
// Div neccesary for modal map task.
echo '<div id="map_task" class="invisible"></div>';
echo '<div id="task_review" class="invisible"></div>';
echo '<div id="msg" class="invisible"></div>';
echo '<input type="hidden" id="ajax-url" value="'.ui_get_full_url('ajax.php').'"/>';
echo '<input type="hidden" id="success-str" value="'.__('Success').'"/>';
echo '<input type="hidden" id="failed-str" value="'.__('Failed').'"/>';
// Show redirected messages from discovery.php. // Show redirected messages from discovery.php.
if ($status === 0) { if ($status === 0) {
ui_print_success_message($message); ui_print_success_message($message);
@ -1145,14 +1153,6 @@ class DiscoveryTaskList extends HTML
ui_toggle($content, $titleTable, '', '', false); ui_toggle($content, $titleTable, '', '', false);
// Div neccesary for modal map task.
echo '<div id="map_task" class="invisible"></div>';
echo '<div id="task_review" class="invisible"></div>';
echo '<div id="msg" class="invisible"></div>';
echo '<input type="hidden" id="ajax-url" value="'.ui_get_full_url('ajax.php').'"/>';
echo '<input type="hidden" id="success-str" value="'.__('Success').'"/>';
echo '<input type="hidden" id="failed-str" value="'.__('Failed').'"/>';
unset($table); unset($table);
ui_require_javascript_file('pandora_ui'); ui_require_javascript_file('pandora_ui');

View File

@ -1067,37 +1067,37 @@ if ($action === 'cleanup_demo_data') {
$demo_items = db_get_all_rows_in_table('tdemo_data'); $demo_items = db_get_all_rows_in_table('tdemo_data');
$module_items = array_filter( $module_items = array_map(
$demo_items,
function ($item) { function ($item) {
return ($item['table_name'] === 'tagente_modulo'); $json_data = json_decode($item['item_id'], true);
} return $json_data['id_agente_modulo'];
},
array_filter(
$demo_items,
function ($item) {
return ($item['table_name'] === 'tagente_modulo');
}
)
); );
$inventory_module_items = array_filter( $inventory_module_items = array_map(
$demo_items,
function ($item) { function ($item) {
return ($item['table_name'] === 'tagent_module_inventory'); $json_data = json_decode($item['item_id'], true);
} return $json_data['id_agent_module_inventory'];
},
array_filter(
$demo_items,
function ($item) {
return ($item['table_name'] === 'tagent_module_inventory');
}
)
); );
$items_delete_id_bfr = []; $in_clause = implode(',', $inventory_module_items);
foreach ($inventory_module_items as $item) {
$items_delete_id_bfr[] = $item['item_id'];
}
$in_clause = implode(',', $items_delete_id_bfr);
// Delete data from tagente_datos_inventory given inventory module id. // Delete data from tagente_datos_inventory given inventory module id.
db_process_sql('DELETE FROM tagente_datos_inventory where id_agent_module_inventory IN ('.$in_clause.')'); db_process_sql('DELETE FROM tagente_datos_inventory where id_agent_module_inventory IN ('.$in_clause.')');
$items_delete_id_bfr = []; $in_clause = implode(',', $module_items);
foreach ($module_items as $item) {
$items_delete_id_bfr[] = $item['item_id'];
}
$in_clause = implode(',', $items_delete_id_bfr);
// Delete data from tagente_datos give agent module id. // Delete data from tagente_datos give agent module id.
db_process_sql('DELETE FROM tagente_datos where id_agente_modulo IN ('.$in_clause.')'); db_process_sql('DELETE FROM tagente_datos where id_agente_modulo IN ('.$in_clause.')');

View File

@ -1196,7 +1196,7 @@ if (check_login()) {
$data[2] .= ui_print_truncate_text($module['nombre'], 'module_medium', false, true, true, '&hellip;', 'font-size: 9pt;'); $data[2] .= ui_print_truncate_text($module['nombre'], 'module_medium', false, true, true, '&hellip;', 'font-size: 9pt;');
$data[2] .= '</a>'; $data[2] .= '</a>';
if (empty($module['extended_info']) === false) { if (empty($module['extended_info']) === false) {
$data[2] .= ui_print_help_tip($module['extended_info'], true, '/images/default_list.png'); $data[2] .= ui_print_help_tip(io_safe_output($module['extended_info']), true, '/images/default_list.png');
} }
// Adds tag context information. // Adds tag context information.

View File

@ -1358,9 +1358,12 @@ class AgentWizard extends HTML
$table->rowstyle[$i] = 'color:#ccc;'; $table->rowstyle[$i] = 'color:#ccc;';
$data[0] .= ' '; $data[0] .= ' ';
$data[0] .= html_print_image( $data[0] .= html_print_image(
'images/alert-warning@svg.svg', 'images/info-warning.svg',
true, true,
['title' => $msgError] [
'title' => $msgError,
'class' => 'main_menu_icon',
]
); );
} }

View File

@ -280,6 +280,13 @@ class Prd
*/ */
private $itemsReferences; private $itemsReferences;
/**
* Current prdData.
*
* @var array
*/
private $currentPrdData;
/** /**
* Constructor. * Constructor.
@ -2282,12 +2289,37 @@ class Prd
$value = implode($csv_separator, $ref_arr); $value = implode($csv_separator, $ref_arr);
} else { } else {
$columns_ref = $this->getOneColumnRefs($ref['table']);
$value = $this->searchValue( $value = $this->searchValue(
$ref['columns'], $ref['columns'],
$ref['table'], $ref['table'],
$ref['id'], $ref['id'],
$value $value
); );
// Get reference in value
if ($columns_ref !== false) {
foreach ($columns_ref as $col => $col_ref) {
if (array_key_exists($col, $value[$ref['table']])) {
$sql = sprintf(
'SELECT * FROM %s WHERE %s = "%s"',
$ref['table'],
$col,
$value[$ref['table']][$col],
);
$row = db_get_row_sql($sql);
$this->getReferenceFromValue(
$ref['table'],
$col,
$col_ref,
$row,
$value[$ref['table']][$col]
);
}
}
}
} }
} }
@ -2413,12 +2445,37 @@ class Prd
$value = implode($csv_separator, $ref_arr); $value = implode($csv_separator, $ref_arr);
} else { } else {
$columns_ref = $this->getOneColumnRefs($ref['table']);
$value = $this->searchValue( $value = $this->searchValue(
$ref['columns'], $ref['columns'],
$ref['table'], $ref['table'],
$ref['id'], $ref['id'],
$value $value
); );
// Get reference in value
if ($columns_ref !== false) {
foreach ($columns_ref as $col => $col_ref) {
if (array_key_exists($col, $value[$ref['table']])) {
$sql = sprintf(
'SELECT * FROM %s WHERE %s = "%s"',
$ref['table'],
$col,
$value[$ref['table']][$col],
);
$row = db_get_row_sql($sql);
$this->getReferenceFromValue(
$ref['table'],
$col,
$col_ref,
$row,
$value[$ref['table']][$col]
);
}
}
}
} }
} }
} }
@ -2435,7 +2492,7 @@ class Prd
* *
* @return boolean * @return boolean
*/ */
private function getValueFromReference($table, $column, $reference, &$value) private function getValueFromReference($table, $column, $reference, $item, &$value)
{ {
if (isset($reference['conditional_refs']) === true) { if (isset($reference['conditional_refs']) === true) {
// Conditional refs. // Conditional refs.
@ -2445,8 +2502,8 @@ class Prd
if (isset($condition['when']) === true if (isset($condition['when']) === true
&& isset($condition['ref']) === true && isset($condition['ref']) === true
) { ) {
if (isset($this->currentItem['parsed'][array_key_first($condition['when'])]) === true) { if (isset($item[array_key_first($condition['when'])]) === true) {
$compare_value = $this->currentItem['parsed'][array_key_first($condition['when'])]; $compare_value = $item[array_key_first($condition['when'])];
if ($this->evalConditionalRef($compare_value, $condition['when']) === true if ($this->evalConditionalRef($compare_value, $condition['when']) === true
&& empty($value) === false && empty($value) === false
@ -2656,6 +2713,7 @@ class Prd
$result = ''; $result = '';
$prd_data = $this->getOnePrdData($type); $prd_data = $this->getOnePrdData($type);
$this->currentPrdData = $prd_data;
if (empty($prd_data) === false) { if (empty($prd_data) === false) {
$result .= '[prd_data]'.LINE_BREAK.LINE_BREAK; $result .= '[prd_data]'.LINE_BREAK.LINE_BREAK;
$result .= 'type="'.$type.'"'.LINE_BREAK; $result .= 'type="'.$type.'"'.LINE_BREAK;
@ -2903,6 +2961,7 @@ class Prd
unset($data_file['prd_data']); unset($data_file['prd_data']);
$prd_data = $this->getOnePrdData($type); $prd_data = $this->getOnePrdData($type);
$this->currentPrdData = $prd_data;
if ($prd_data !== false) { if ($prd_data !== false) {
// Begin transaction. // Begin transaction.
$db = $config['dbconnection']; $db = $config['dbconnection'];
@ -2941,6 +3000,7 @@ class Prd
$table, $table,
$column, $column,
$column_refs[$column], $column_refs[$column],
$this->currentItem['parsed'],
$value $value
); );
@ -2968,6 +3028,7 @@ class Prd
$table, $table,
$column, $column,
$json_refs[$column][$json_key], $json_refs[$column][$json_key],
$this->currentItem['parsed'],
$json_value $json_value
) === true ) === true
) { ) {
@ -3064,8 +3125,42 @@ class Prd
&& empty($array_value[$ref['table']]) === false && empty($array_value[$ref['table']]) === false
) { ) {
$where = ''; $where = '';
$columns_ref = $this->getOneColumnRefs($ref['table']);
foreach ($ref['columns'] as $column_name) { foreach ($ref['columns'] as $column_name) {
if (isset($array_value[$ref['table']][$column_name])) { if (isset($array_value[$ref['table']][$column_name])) {
// Get value from crossed reference in current value
if (isset($this->crossed_refs[$ref['table']]) === true
&& empty($this->crossed_refs[$ref['table']]['ref']) === false
&& in_array($column_name, $this->crossed_refs[$ref['table']]['ref'])
) {
$parent_table = $this->crossed_refs[$ref['table']]['parent_table'];
foreach ($this->crossed_refs[$ref['table']]['ref'] as $k => $f) {
$itemReference = $this->getItemReference(
$parent_table,
$this->crossed_refs[$parent_table]['value'][$k],
$array_value[$ref['table']][$f]
);
if ($itemReference !== false) {
$array_value[$ref['table']][$column_name] = $itemReference;
}
}
}
if ($columns_ref !== false) {
if (array_key_exists($column_name, $columns_ref)) {
$temp_value = $array_value[$ref['table']][$column_name];
$temp_value = (is_array($temp_value) ? json_encode($temp_value) : $temp_value);
// Get value from reference in current value
$ref_value = $this->getValueFromReference($ref['table'], $column_name, $columns_ref[$column_name], $array_value[$ref['table']], $temp_value);
if ($ref_value === true) {
$array_value[$ref['table']][$column_name] = $temp_value;
}
}
}
$where .= sprintf( $where .= sprintf(
"%s = '%s' AND ", "%s = '%s' AND ",
$column_name, $column_name,

View File

@ -22,7 +22,7 @@ use DI\ContainerBuilder;
/* /*
* Pandora build version and version * Pandora build version and version
*/ */
$build_version = 'PC240325'; $build_version = 'PC240326';
$pandora_version = 'v7.0NG.776'; $pandora_version = 'v7.0NG.776';
// Do not overwrite default timezone set if defined. // Do not overwrite default timezone set if defined.

View File

@ -1006,13 +1006,14 @@ function get_parameter($name, $default='')
function get_parameter_date($name, $default='', $date_format='Y/m/d') function get_parameter_date($name, $default='', $date_format='Y/m/d')
{ {
// TODO: Configure default value.
$date_end = get_parameter('date_end', 0); $date_end = get_parameter('date_end', 0);
$time_end = get_parameter('time_end'); $time_end = get_parameter('time_end');
$datetime_end = strtotime($date_end.' '.$time_end); $datetime_end = strtotime($date_end.' '.$time_end);
$custom_date = get_parameter('custom_date', 0); $custom_date = get_parameter('custom_date', 0);
$range = get_parameter('range', SECONDS_1DAY); $range = get_parameter($name, SECONDS_1DAY);
$date_text = get_parameter('range_text', SECONDS_1DAY); $date_text = get_parameter($name.'_text', SECONDS_1DAY);
$date_init_less = (strtotime(date('Y/m/d')) - SECONDS_1DAY); $date_init_less = (strtotime(date('Y/m/d')) - SECONDS_1DAY);
$date_init = get_parameter('date_init', date(DATE_FORMAT, $date_init_less)); $date_init = get_parameter('date_init', date(DATE_FORMAT, $date_init_less));
$time_init = get_parameter('time_init', date(TIME_FORMAT, $date_init_less)); $time_init = get_parameter('time_init', date(TIME_FORMAT, $date_init_less));
@ -1026,7 +1027,7 @@ function get_parameter_date($name, $default='', $date_format='Y/m/d')
$date_end = date('Y/m/d H:i:s', $datetime_end); $date_end = date('Y/m/d H:i:s', $datetime_end);
$period = ($datetime_end - $datetime_init); $period = ($datetime_end - $datetime_init);
} else if ($custom_date === '2') { } else if ($custom_date === '2') {
$date_units = get_parameter('range_units'); $date_units = get_parameter($name.'_units');
$date_end = date('Y/m/d H:i:s'); $date_end = date('Y/m/d H:i:s');
$date_init = date('Y/m/d H:i:s', (strtotime($date_end) - ((int) $date_text * (int) $date_units))); $date_init = date('Y/m/d H:i:s', (strtotime($date_end) - ((int) $date_text * (int) $date_units)));
$period = (strtotime($date_end) - strtotime($date_init)); $period = (strtotime($date_end) - strtotime($date_init));

View File

@ -805,7 +805,7 @@ function filemanager_file_explorer(
// Actions buttons // Actions buttons
// Delete button. // Delete button.
$data[4] = '<div class="table_action_buttons flex">'; $data[4] = '<div class="table_action_buttons flex flex-end">';
$typefile = array_pop(explode('.', $fileinfo['name'])); $typefile = array_pop(explode('.', $fileinfo['name']));
if (is_writable($fileinfo['realpath']) === true if (is_writable($fileinfo['realpath']) === true
&& (is_dir($fileinfo['realpath']) === false || count(scandir($fileinfo['realpath'])) < 3) && (is_dir($fileinfo['realpath']) === false || count(scandir($fileinfo['realpath'])) < 3)
@ -1069,7 +1069,7 @@ function filemanager_file_explorer(
); );
// Show Modal Real Path // Show Modal Real Path
$modal_real_path = "<div><b>Real path to plugin execution is:</b></div> $modal_real_path = "<div><b>Real path is:</b></div>
<div id='real_path'></div>"; <div id='real_path'></div>";
if (isset($_SERVER['HTTPS']) === true) { if (isset($_SERVER['HTTPS']) === true) {

View File

@ -2946,7 +2946,7 @@ function ui_print_help_tip(
$id = random_int(1, 99999); $id = random_int(1, 99999);
$output = '<div id="div_tip_'.$id.'" class="tip" style="'.$style.'" >'; $output = '<div id="div_tip_'.$id.'" class="tip" style="'.$style.'" >';
$output .= '<div id="tip_dialog_'.$id.'" class="invisible margin-15" data-title="'.__('Help').'"><span class="font_13px">'.$text.'</span></div>'; $output .= '<div id="tip_dialog_'.$id.'" class="invisible margin-15" data-title="'.__('Help').'"><span class="font_13px">'.io_safe_output($text).'</span></div>';
$output .= html_print_image( $output .= html_print_image(
$img, $img,
true, true,

View File

@ -1553,9 +1553,11 @@ function changePlugin() {
var moduleProtocol = $("#module_protocol").val(); var moduleProtocol = $("#module_protocol").val();
var executionType = $("#execution_type").val(); var executionType = $("#execution_type").val();
var pluginSelected = $("#server_plugin_" + moduleProtocol).val(); var pluginSelected = $("#server_plugin_" + moduleProtocol).val();
var pluginAllData = JSON.parse( var pluginAllDataSafe = $("#hidden-server_plugin_data_" + pluginSelected)
$("#hidden-server_plugin_data_" + pluginSelected).val() .val()
); .replace(/(?:\r\n|\r|\n)/g, "<br>");
var pluginAllData = JSON.parse(pluginAllDataSafe);
var pluginDescription = pluginAllData.description; var pluginDescription = pluginAllData.description;
var pluginMacros = pluginAllData.macros; var pluginMacros = pluginAllData.macros;
@ -1586,10 +1588,14 @@ function changePlugin() {
let macro = this.macro; let macro = this.macro;
let value = this.value; let value = this.value;
if (pluginMacrosElement["server_plugin"] == pluginSelected) { if (pluginMacrosElement !== null) {
if (pluginMacrosElement[macro + "_" + moduleProtocol + "_field"]) { if (pluginMacrosElement["server_plugin"] == pluginSelected) {
value = pluginMacrosElement[macro + "_" + moduleProtocol + "_field"]; if (pluginMacrosElement[macro + "_" + moduleProtocol + "_field"]) {
value = pluginMacrosElement[macro + "_" + moduleProtocol + "_field"];
}
} }
} else {
value = "";
} }
if ( if (

View File

@ -2416,10 +2416,10 @@ class Item extends CachedModel
foreach ($fields as $k => $v) { foreach ($fields as $k => $v) {
if (isset($v['id']) === true && isset($v['name']) === true) { if (isset($v['id']) === true && isset($v['name']) === true) {
// Modern environments use id-name format. // Modern environments use id-name format.
$rs[$v['id']] = $v; $rs[$v['id']] = io_safe_output($v);
} else { } else {
// In MC environments is key-value. // In MC environments is key-value.
$rs[$k] = $v; $rs[$k] = io_safe_output($v);
} }
} }

View File

@ -225,6 +225,7 @@ div.graphs-div-main {
/* height: 20px; */ /* height: 20px; */
margin-bottom: 5px; margin-bottom: 5px;
display: flex; display: flex;
z-index: 0;
} }
#droppable-graphs .droppable-zone { #droppable-graphs .droppable-zone {

View File

@ -265,7 +265,6 @@ div#welcome_modal_window .wizard #li-div_wizard_agent > div {
} }
div#welcome_modal_window .wizard #li-div_wizard_agent .select2-selection { div#welcome_modal_window .wizard #li-div_wizard_agent .select2-selection {
background-color: #f6f7fb !important;
border: 1px solid #c0ccdc !important; border: 1px solid #c0ccdc !important;
border-radius: 6px !important; border-radius: 6px !important;
width: 290px; width: 290px;

View File

@ -1956,7 +1956,7 @@ div.title_line {
#menu_tab_frame_view_bc { #menu_tab_frame_view_bc {
position: sticky; position: sticky;
top: 61px; top: 61px;
z-index: 3; z-index: 2;
display: flex; display: flex;
align-items: flex-end; align-items: flex-end;
justify-content: space-between; justify-content: space-between;
@ -13847,3 +13847,7 @@ button.disabled {
.tabs-show { .tabs-show {
display: list-item; display: list-item;
} }
.white_table_graph > div {
background-color: transparent;
}

View File

@ -24,7 +24,7 @@
color: white !important; color: white !important;
text-align: left; text-align: left;
} }
.select2-container--default>.selection>.select2-selection--single { .select2-container--default > .selection > .select2-selection--single {
border-color: #707070 !important; border-color: #707070 !important;
} }
.select2-container .select2-selection--single .select2-selection__clear { .select2-container .select2-selection--single .select2-selection__clear {
@ -76,7 +76,7 @@
position: absolute; position: absolute;
left: -100000px; left: -100000px;
width: 100%; width: 100%;
z-index: 1051; z-index: 1118;
} }
.select2-results { .select2-results {
display: block; display: block;

View File

@ -131,7 +131,7 @@
<div style='padding-bottom: 50px'> <div style='padding-bottom: 50px'>
<?php <?php
$version = '7.0NG.776'; $version = '7.0NG.776';
$build = '240325'; $build = '240326';
$banner = "v$version Build $build"; $banner = "v$version Build $build";
error_reporting(0); error_reporting(0);

View File

@ -597,15 +597,19 @@ function print_table(
} else { } else {
foreach ($all_interfaces as $key => $value) { foreach ($all_interfaces as $key => $value) {
// Filter interfaces array. // Filter interfaces array.
$filtered_interfaces[$key] = array_filter( if (empty($selected_interfaces) === false && in_array('', $selected_interfaces) === false) {
$value, $filtered_interfaces[$key] = array_filter(
function ($interface) use ($selected_interfaces) { $value,
return in_array( function ($interface) use ($selected_interfaces) {
$interface['status_module_id'], return in_array(
$selected_interfaces $interface['status_module_id'],
); $selected_interfaces
} );
); }
);
} else {
$filtered_interfaces = $all_interfaces;
}
} }
} }

View File

@ -265,13 +265,16 @@ function load_agent_interfaces_selector(selected_agents) {
}, },
function (data, status) { function (data, status) {
$("#module").html(''); $("#module").html('');
var option = $("<option></option>")
.attr ("value", "")
.html ("Any");
$("#selected_interfaces").append(option);
if (data) { if (data) {
Object.values(data).forEach(function(obj) { Object.values(data).forEach(function(obj) {
for (const [key, value] of Object.entries(obj.interfaces)) { for (const [key, value] of Object.entries(obj.interfaces)) {
option = $("<option></option>") option = $("<option></option>")
.attr ("value", value.status_module_id) .attr ("value", value.status_module_id)
.html (key + ' (' + obj.agent_alias + ')'); .html ('(' + obj.agent_alias + ') ' + key);
$("#selected_interfaces").append(option); $("#selected_interfaces").append(option);
} }
}); });

View File

@ -1613,7 +1613,7 @@ if (empty($result) === false) {
$table->align[11] = 'left'; $table->align[11] = 'left';
} }
if (check_acl($config['id_user'], 0, 'AR')) { if (check_acl($config['id_user'], 0, 'AW')) {
$actions_list = true; $actions_list = true;
$table->head[12] = __('Actions'); $table->head[12] = __('Actions');
$table->align[12] = 'left'; $table->align[12] = 'left';
@ -2263,7 +2263,7 @@ if (empty($result) === false) {
} }
if (check_acl_one_of_groups($config['id_user'], $agent_groups, 'AW')) { if (check_acl_one_of_groups($config['id_user'], $agent_groups, 'AW')) {
$table->cellclass[][2] = 'action_buttons'; $table->cellclass[][12] = 'table_action_buttons';
if (is_metaconsole() === true) { if (is_metaconsole() === true) {
echo "<form id='agent-edit-redirection-".$inc_id."' target='_blank' method='POST' action='".$row['server_url']."index.php?sec=gagente&sec2=godmode/agentes/configurar_agente&tab=module&edit_module=1'>"; echo "<form id='agent-edit-redirection-".$inc_id."' target='_blank' method='POST' action='".$row['server_url']."index.php?sec=gagente&sec2=godmode/agentes/configurar_agente&tab=module&edit_module=1'>";

View File

@ -169,6 +169,8 @@ if (is_ajax()) {
}, },
[] []
); );
} else {
echo json_encode([]);
} }
} }

View File

@ -43,82 +43,20 @@ if (!reporting_user_can_see_report($id_report)) {
exit; exit;
} }
// Calculations in order to modify init date of the report. $date_params = get_parameter_date('date', '', 'U');
$date_init_less = (strtotime(date('Y-m-j')) - SECONDS_1DAY); $date_end = date('Y/m/d', $date_params['date_end']);
$date_init = get_parameter('date_init', date(DATE_FORMAT, $date_init_less)); $time_end = date('H:i:s', $date_params['date_end']);
$time_init = get_parameter('time_init', date(TIME_FORMAT, $date_init_less));
$datetime_init = strtotime($date_init.' '.$time_init);
$pure = (int) get_parameter('pure', 0);
$period = null; $date_start = date('Y/m/d', $date_params['date_init']);
// Get different date to search the report. $time_start = date('H:i:s', $date_params['date_init']);
$date_end = (string) get_parameter('date_end', date(DATE_FORMAT));
$time_end = (string) get_parameter('time_end', date(TIME_FORMAT));
$datetime_end = strtotime($date_end.' '.$time_end);
// Calculate new inteval for all reports. $date_init = date('Y/m/d', $date_params['date_init']);
$custom_date = get_parameter('custom_date', 0); $time_init = date('H:i:s', $date_params['date_init']);
$date = get_parameter('date', 'none');
$date_text = get_parameter('date_text', SECONDS_1DAY);
$custom_date_end = ''; $custom_date_end = date('Y/m/d H:i:s', $date_params['date_end']);
$filter_type = '';
$custom_period = false;
if ($custom_date === '1') {
if ($date === 'chose_range') {
$date_init = get_parameter('date_init', 0);
$date_init = explode(' ', $date_init);
$date_init = $date_init[0];
$date_init .= ' '.get_parameter('time_init', '00:00:00');
$custom_date_end = get_parameter('date_end', 0);
$custom_date_end .= ' '.get_parameter('time_end', '00:00:00');
$date_end = date('Y/m/d H:i:s');
$period = (strtotime($date_end) - strtotime($date_init));
$custom_period = (strtotime($custom_date_end) - strtotime($date_init));
$filter_type = 'chose_range';
} else {
if ($datetime_init >= $datetime_end) {
$datetime_init = $date_init_less;
}
$period = ($datetime_end - $datetime_init); $period = $date_params['period'];
} $custom_period = $date_params['period'];
} else if ($custom_date === '2') {
$date_units = get_parameter('date_units');
$date_end = date('Y/m/d H:i:s');
$date_start = date('Y/m/d H:i:s', (strtotime($date_end) - ($date_text * $date_units)));
$period = (strtotime($date_end) - strtotime($date_start));
} else if (in_array($date, ['this_week', 'this_month', 'past_week', 'past_month'])) {
if ($date === 'this_week') {
// Last monday.
$date_init = date('Y/m/d H:i:s', strtotime('last monday'));
// $date_end = date('Y/m/d H:i:s', strtotime($date_init.' +6 days'));
$date_end = date('Y/m/d H:i:s');
$period = (strtotime($date_end) - strtotime($date_init));
$filter_type = 'this_week';
} else if ($date === 'this_month') {
// $date_end = date('Y/m/d', strtotime('last day of this month'));
$date_end = date('Y/m/d H:i:s');
$first_of_month = date('Y/m/d', strtotime('first day of this month'));
$period = (strtotime($date_end) - strtotime($first_of_month));
$filter_type = 'this_month';
} else if ($date === 'past_month') {
$date_end = date('Y/m/d', strtotime('last day of previous month'));
$first_of_month = date('Y/m/d', strtotime('first day of previous month'));
$period = (strtotime($date_end) - strtotime($first_of_month));
} else if ($date === 'past_week') {
$date_end = date('Y-m-d', strtotime('sunday', strtotime('last week')));
$first_of_week = date('Y-m-d', strtotime('monday', strtotime('last week')));
$period = (strtotime($date_end) - strtotime($first_of_week));
}
} else if ($date === 'none') {
// Prioritize the report item period based on the current local date/time.
$date_end = date('Y/m/d H:i:s');
} else {
$date_end = date('Y/m/d H:i:s');
$date_start = date('Y/m/d H:i:s', (strtotime($date_end) - $date));
$period = (strtotime($date_end) - strtotime($date_start));
}
// Shchedule report email. // Shchedule report email.
$schedule_report = get_parameter('schbutton', ''); $schedule_report = get_parameter('schbutton', '');
@ -318,12 +256,12 @@ if ($html_menu_export === ENTERPRISE_NOT_HOOK) {
if ((bool) is_metaconsole() === true) { if ((bool) is_metaconsole() === true) {
$table2->data[0][2] = html_print_label_input_block( $table2->data[0][2] = html_print_label_input_block(
__('Date').' ', __('Date').' ',
html_print_select_date_range('date', true, get_parameter('date', 'none'), $date_init, $time_init, date('Y/m/d'), date('H:i:s'), $date_text), html_print_select_date_range('date', true, get_parameter('date', 'none'), $date_init, $time_init, $date_end, $time_end, $date_text),
); );
} else { } else {
$table2->data[0][2] = html_print_label_input_block( $table2->data[0][2] = html_print_label_input_block(
__('Date').' ', __('Date').' ',
html_print_select_date_range('date', true, get_parameter('date', 'none'), $date_init, $time_init, date('Y/m/d'), date('H:i:s'), $date_text), html_print_select_date_range('date', true, get_parameter('date', 'none'), $date_init, $time_init, $date_end, $time_end, $date_text),
['label_class' => 'filter_label_position_before'] ['label_class' => 'filter_label_position_before']
); );
} }

View File

@ -6,7 +6,7 @@
%define debug_package %{nil} %define debug_package %{nil}
%define name pandorafms_console %define name pandorafms_console
%define version 7.0NG.776 %define version 7.0NG.776
%define release 240325 %define release 240326
# User and Group under which Apache is running # User and Group under which Apache is running
%define httpd_name httpd %define httpd_name httpd

View File

@ -6,7 +6,7 @@
%define debug_package %{nil} %define debug_package %{nil}
%define name pandorafms_console %define name pandorafms_console
%define version 7.0NG.776 %define version 7.0NG.776
%define release 240325 %define release 240326
# User and Group under which Apache is running # User and Group under which Apache is running
%define httpd_name httpd %define httpd_name httpd

View File

@ -3,7 +3,7 @@
# #
%define name pandorafms_console %define name pandorafms_console
%define version 7.0NG.776 %define version 7.0NG.776
%define release 240325 %define release 240326
%define httpd_name httpd %define httpd_name httpd
# User and Group under which Apache is running # User and Group under which Apache is running
%define httpd_name apache2 %define httpd_name apache2

View File

@ -1,5 +1,5 @@
package: pandorafms-server package: pandorafms-server
Version: 7.0NG.776-240325 Version: 7.0NG.776-240326
Architecture: all Architecture: all
Priority: optional Priority: optional
Section: admin Section: admin

View File

@ -14,7 +14,7 @@
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details. # GNU General Public License for more details.
pandora_version="7.0NG.776-240325" pandora_version="7.0NG.776-240326"
package_cpan=0 package_cpan=0
package_pandora=1 package_pandora=1

View File

@ -161,7 +161,7 @@ sub pandora_startup () {
# Start the task execution thread. # Start the task execution thread.
start_server_thread(\&pandora_server_tasks, [\%Config]); start_server_thread(\&pandora_server_tasks, [\%Config]);
# Start the policy queue thread. # Start the policy queue thread.
start_server_thread(\&pandora_process_policy_queue, [\%Config]) if ($Config{'__enterprise_enabled'} == 1 && $Config{'policy_manager'} == 1); start_server_thread(\&pandora_process_policy_queue, [\%Config]) if ($Config{'__enterprise_enabled'} == 1 && $Config{'policy_manager'} == 1);
@ -381,51 +381,53 @@ sub pandora_agent_autoconfiguration_scheduled($) {
$pa_config{'dbuser'}, $pa_config{'dbpass'}); $pa_config{'dbuser'}, $pa_config{'dbpass'});
while ($THRRUN == 1) { while ($THRRUN == 1) {
eval {{ eval {
local $SIG{__DIE__}; if (pandora_is_master($pa_config) == 1) {
local $SIG{__DIE__};
my @autoconfig = get_db_rows ( my @autoconfig = get_db_rows (
$dbh, $dbh,
'SELECT *, DATE_FORMAT(DATE_ADD(periodically_time_from, INTERVAL ' . $pa_config->{'autoconfigure_agents_threshold'} . ' SECOND), "%H:%i:%S") AS time_minutes 'SELECT *, DATE_FORMAT(DATE_ADD(periodically_time_from, INTERVAL ' . $pa_config->{'autoconfigure_agents_threshold'} . ' SECOND), "%H:%i:%S") AS time_minutes
FROM tautoconfig WHERE executed = 0 AND type_execution LIKE "scheduled" AND disabled = 0' FROM tautoconfig WHERE executed = 0 AND type_execution LIKE "scheduled" AND disabled = 0'
); );
# Get current time. # Get current time.
my ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = localtime(time()); my ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = localtime(time());
my $time = sprintf ("%.2d:%.2d:%.2d", $hour, $min, $sec); my $time = sprintf ("%.2d:%.2d:%.2d", $hour, $min, $sec);
foreach my $conf (@autoconfig) { foreach my $conf (@autoconfig) {
if (($conf->{'type_periodicity'} eq 'daily') || if (($conf->{'type_periodicity'} eq 'daily') ||
($conf->{'type_periodicity'} eq 'monthly' && $conf->{'periodically_day_from'} eq $mday) || ($conf->{'type_periodicity'} eq 'monthly' && $conf->{'periodically_day_from'} eq $mday) ||
($conf->{'type_periodicity'} eq 'weekly' && (($conf->{'sunday'} eq 1 && $wday eq 0) || ($conf->{'type_periodicity'} eq 'weekly' && (($conf->{'sunday'} eq 1 && $wday eq 0) ||
($conf->{'monday'} eq 1 && $wday eq 1) || ($conf->{'tuesday'} eq 1 && $wday eq 2) || ($conf->{'monday'} eq 1 && $wday eq 1) || ($conf->{'tuesday'} eq 1 && $wday eq 2) ||
($conf->{'wednesday'} eq 1 && $wday eq 3) || ($conf->{'thursday'} eq 1 && $wday eq 4) || ($conf->{'wednesday'} eq 1 && $wday eq 3) || ($conf->{'thursday'} eq 1 && $wday eq 4) ||
($conf->{'friday'} eq 1 && $wday eq 5) || ($conf->{'saturday'} eq 1 && $wday eq 6))) ($conf->{'friday'} eq 1 && $wday eq 5) || ($conf->{'saturday'} eq 1 && $wday eq 6)))
) { ) {
if ($time ge $conf->{'periodically_time_from'} && $time le $conf->{'time_minutes'}) { if ($time ge $conf->{'periodically_time_from'} && $time le $conf->{'time_minutes'}) {
# Update executed. # Update executed.
db_process_update ($dbh, 'tautoconfig', {'executed' => 1}, {'id' => $conf->{'id'}}); db_process_update ($dbh, 'tautoconfig', {'executed' => 1}, {'id' => $conf->{'id'}});
# Get agents. # Get agents.
my @agents = get_db_rows( my @agents = get_db_rows(
$dbh, $dbh,
'SELECT id_agente, alias, id_grupo, id_os, os_version, direccion, nombre AS agent_name FROM tagente 'SELECT id_agente, alias, id_grupo, id_os, os_version, direccion, nombre AS agent_name FROM tagente
WHERE `disabled` = 0' WHERE `disabled` = 0'
); );
foreach my $agent (@agents) { foreach my $agent (@agents) {
# Check if the agent matches the rules. # Check if the agent matches the rules.
my $match = enterprise_hook('autoconf_evaluate_rules', [$pa_config, $dbh, $agent, $conf->{'id'}, $agent->{'id_agente'}, 1]); my $match = enterprise_hook('autoconf_evaluate_rules', [$pa_config, $dbh, $agent, $conf->{'id'}, $agent->{'id_agente'}, 1]);
if (defined($match) && $match > 0) { if (defined($match) && $match > 0) {
enterprise_hook('autoconf_execute_actions', [$pa_config, $dbh, $agent->{'id_agente'}, $agent, $conf->{'id'}]); enterprise_hook('autoconf_execute_actions', [$pa_config, $dbh, $agent->{'id_agente'}, $agent, $conf->{'id'}]);
}
} }
}
# Update executed. # Update executed.
db_process_update ($dbh, 'tautoconfig', {'executed' => 0}, {'id' => $conf->{'id'}}); db_process_update ($dbh, 'tautoconfig', {'executed' => 0}, {'id' => $conf->{'id'}});
}
} }
} }
} }
}}; };
sleep ($pa_config->{'autoconfigure_agents_threshold'}); sleep ($pa_config->{'autoconfigure_agents_threshold'});
} }

View File

@ -46,7 +46,7 @@ our @EXPORT = qw(
# version: Defines actual version of Pandora Server for this module only # version: Defines actual version of Pandora Server for this module only
my $pandora_version = "7.0NG.776"; my $pandora_version = "7.0NG.776";
my $pandora_build = "240325"; my $pandora_build = "240326";
our $VERSION = $pandora_version." ".$pandora_build; our $VERSION = $pandora_version." ".$pandora_build;
# Setup hash # Setup hash

View File

@ -34,7 +34,7 @@ our @ISA = qw(Exporter);
# version: Defines actual version of Pandora Server for this module only # version: Defines actual version of Pandora Server for this module only
my $pandora_version = "7.0NG.776"; my $pandora_version = "7.0NG.776";
my $pandora_build = "240325"; my $pandora_build = "240326";
our $VERSION = $pandora_version." ".$pandora_build; our $VERSION = $pandora_version." ".$pandora_build;
our %EXPORT_TAGS = ( 'all' => [ qw() ] ); our %EXPORT_TAGS = ( 'all' => [ qw() ] );

View File

@ -24,6 +24,7 @@ use POSIX qw(setsid strftime);
use POSIX; use POSIX;
use HTML::Entities; use HTML::Entities;
use Encode; use Encode;
use Encode::MIME::Header;
use Socket qw(inet_ntoa inet_aton); use Socket qw(inet_ntoa inet_aton);
use Sys::Syslog; use Sys::Syslog;
use Scalar::Util qw(looks_like_number); use Scalar::Util qw(looks_like_number);

View File

@ -7,7 +7,7 @@
%define debug_package %{nil} %define debug_package %{nil}
%define name pandorafms_server %define name pandorafms_server
%define version 7.0NG.776 %define version 7.0NG.776
%define release 240325 %define release 240326
Summary: Pandora FMS Server Summary: Pandora FMS Server
Name: %{name} Name: %{name}

View File

@ -4,7 +4,7 @@
%global __os_install_post %{nil} %global __os_install_post %{nil}
%define name pandorafms_server %define name pandorafms_server
%define version 7.0NG.776 %define version 7.0NG.776
%define release 240325 %define release 240326
Summary: Pandora FMS Server Summary: Pandora FMS Server
Name: %{name} Name: %{name}

View File

@ -9,7 +9,7 @@
# ********************************************************************** # **********************************************************************
PI_VERSION="7.0NG.776" PI_VERSION="7.0NG.776"
PI_BUILD="240325" PI_BUILD="240326"
MODE=$1 MODE=$1
if [ $# -gt 1 ]; then if [ $# -gt 1 ]; then

View File

@ -38,7 +38,7 @@ use PandoraFMS::Config;
use PandoraFMS::DB; use PandoraFMS::DB;
# version: define current version # version: define current version
my $version = "7.0NG.776 Build 240325"; my $version = "7.0NG.776 Build 240326";
# Pandora server configuration # Pandora server configuration
my %conf; my %conf;

View File

@ -36,7 +36,7 @@ use Encode::Locale;
Encode::Locale::decode_argv; Encode::Locale::decode_argv;
# version: define current version # version: define current version
my $version = "7.0NG.776 Build 240325"; my $version = "7.0NG.776 Build 240326";
# save program name for logging # save program name for logging
my $progname = basename($0); my $progname = basename($0);
@ -1228,11 +1228,11 @@ sub param_error ($$) {
} }
############################################################################### ###############################################################################
# Print a 'not exists' error and exit the program. # Print a 'does not exist' error and exit the program.
############################################################################### ###############################################################################
sub notexists_error ($$) { sub notexists_error ($$) {
print (STDERR "[ERROR] Error: The $_[0] '$_[1]' not exists.\n\n"); print (STDERR "[ERROR] Error: The $_[0] '$_[1]' does not exist.\n\n");
logger( $conf, "($progname) [ERROR] Error: The $_[0] '$_[1]' not exists.", 10); logger( $conf, "($progname) [ERROR] Error: The $_[0] '$_[1]' does not exist.", 10);
exit 1; exit 1;
} }
@ -3459,6 +3459,10 @@ sub cli_agent_update() {
$new_value = $id_parent; $new_value = $id_parent;
} }
elsif($field eq 'agent_name') { elsif($field eq 'agent_name') {
if (!$new_value) {
print_log "[ERROR] Agent name cannot be empty\n\n";
exit;
}
my $agent_exists = get_agent_id($dbh,$new_value); my $agent_exists = get_agent_id($dbh,$new_value);
non_exist_check($agent_exists,'agent',$new_value); non_exist_check($agent_exists,'agent',$new_value);
$field = 'nombre'; $field = 'nombre';
@ -4104,7 +4108,7 @@ sub cli_exec_from_file() {
elsif($c == 3) { elsif($c == 3) {
$file = $opt; $file = $opt;
if(!(-e $file)) { if(!(-e $file)) {
print_log "[ERROR] File '$file' not exists or cannot be opened\n\n"; print_log "[ERROR] File '$file' does not exist or cannot be opened\n\n";
exit; exit;
} }
} }
@ -4952,7 +4956,7 @@ sub cli_validate_alert() {
if (defined $use_alias and $use_alias eq 'use_alias') { if (defined $use_alias and $use_alias eq 'use_alias') {
my @id_agents = get_agent_ids_from_alias($dbh,$agent_id); my @id_agents = get_agent_ids_from_alias($dbh,$agent_id);
if(!@id_agents) { if(!@id_agents) {
print (STDERR "[ERROR] Error: The agent '$agent_id' not exists.\n\n"); print (STDERR "[ERROR] Error: The agent '$agent_id' does not exist.\n\n");
} }
foreach my $id (@id_agents) { foreach my $id (@id_agents) {
@ -5946,7 +5950,7 @@ sub cli_get_bad_conf_files() {
$missings++; $missings++;
} }
elsif ($result == -1) { elsif ($result == -1) {
print_log "[WARN] File not exists /conf/".$file."\n\n"; print_log "[WARN] File does not exist /conf/".$file."\n\n";
$bad_files++; $bad_files++;
last; last;
} }