* lib/PandoraFMS/Tools.pm: Checked if pandora_server is already
running, in order to prevent multiple instances with same PID
file from running. And made PID file permissions 644, rather
than 666.
* bin/pandora_server: Remove PID file on shutdown.
* FreeBSD/pandora_server: Use -P option for PID file instead of
pgrep.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@4481 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* lib/PandoraFMS/Tools.pm: Added FreeBSD specific code to load_average()
and free_mem() functions.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@4447 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* lib/PandoraFMS/Tools.pm: Added UTF-8 flags deletion from multibyte
characters when files are opened.
* lib/PandoraFMS/DB.pm: Added mysql_enable_utf8. It enables character
semantics (support for multibyte characters).
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@4161 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* lib/PandoraFMS/Tools.pm
util/pandora_recode_db.pl: Added characters to translate
to html entities into safe_input and safe_output. Clean
repeated code into recode script.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@3812 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* pandora_server/DEBIAN/control,
pandora_server/pandora_server.spec,
pandora_server/pandora_server.redhat.spec: Added LWP dependency for
reverse Geocoding feature. This is included on all distros.
* pandora_server/conf/pandora_server.conf,
pandora_server/lib/PandoraFMS/Config.pm,
pandora_server/lib/PandoraFMS/DataServer.pm: Added support for reverse geocoding using
GoogleMaps api.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@3806 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* lib/PandoraFMS/Tools.pm: Added a parameter of unsafe_chars, '<>&',
to encode_entities(). It is support for multibyte characters.
If it is not defined, records with multibyte characters on database
are destroyed by 'pandora_recode_db.pl'. :(
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@3562 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* lib/PandoraFMS/DB.pm
lib/PandoraFMS/Core.pm
lib/PandoraFMS/ReconServer.pm
lib/PandoraFMS/DataServer.pm
lib/PandoraFMS/Tools.pm: Fixed insert db operations
in server to store the html entities. This improves
fix bug 3096436
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@3499 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* Config.pm: Parsing for mta_from doesn't remove blanks, allowing to
use a Normal name + Email address in the from.
* Tools.pm: Email output is parsed with a html decode first.
Added timeticks option for tools (intented to use in the future).
* pandora_server.conf: Example of usage in the mta_from with a fully
composed email address.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@3452 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* lib/PandoraFMS/Tools.pm: Changed ping count to for() loop instead of
using count(-c) option in pandora_ping(). By it, ping execution can be
finished in short time.
Added support for Solaris.
Changed some ping usage for FreeBSD.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@3445 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* lib/PandoraFMS/Tools.pm: Fixed timeout option for FreeBSD ping.
(Note: In ping6, '-t' option is not implemented. So, 'networktimeout'
is not used with ping6.)
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@3440 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* lib/PandoraFMS/NetworkServer.pm: Deleted FreeBSD specific SNMPGET
definition. It is the same as Linux.
* lib/PandoraFMS/Tools.pm: Added FreeBSD specific Ping function.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@3438 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* conf/pandora_server.conf.windows: Sample conf for running pandora server
on Windows (see windows.README).
* lib/PandoraFMS/NetworkServer.pm: Adapted to have SNMPGET and PING functions
redefined by each SO, this will allow to have native support on pandora
to run under different OS (need to check FreeBSD and Solaris!). Windows
support implemented.
* lib/PandoraFMS/Core.pm: Removed ping functions here and moved to Tools.pm
* lib/PandoraFMS/Tools.pm: Adapted Ping functions to work with any SO, at
this time Linux and Windows only, need to check for Solaris and BSD.
* util/windows.README: Small doc on how to make Pandora Server work on
Windows servers.
* util/pandora_logrotate: Removed the index in the logrotation.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@3431 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* conf/pandora_server.conf: Removed multicast options
* Makefile.PL: Removed need for dependencies on Mail::Sendmail
and Traceroute::PurePerl, now are included in the Pandora FMS
distribution.
* lib/PandoraFMS/Config.pm: Removed options for multicast
* lib/PandoraFMS/Traceroute.pm,
lib/PandoraFMS/Sendmail.pm,
lib/PandoraFMS/Traceroute/PurePerl.pm: Now included on Pandora FMS
distribution, this will help to do easier installs of Pandora, because
that packages was difficult to build/install in different distros.
* lib/PandoraFMS/Core.pm: Removed the old multicast-on change enterprise
feature, not used/supported anymore.
* lib/PandoraFMS/ReconServer.pm: Now uses the internal Traceroute Pureperl
implementation.
* lib/PandoraFMS/Tools.pm: Now uses the internal Mail::Sendmail copy.
* bin/pandora_server: Removed the multicast option from main loop.
* FreeBSD/pandora_server.conf: Removed multicast from options.
* util/mcast_client.pl: Deleted sample client for multicast.
* util/pandora_logrotate: Updated the rotate options for SNMP logfile.
* util/compaq_chassis_trap_manager2.pl: Added sample of SNMP Trap
postprocessor.
* pandora_server.redhat.spec,
pandora_server.spec,
DEBIAN/control: Updated packages deps and other minor changes (xprobe2 is not
mandatory now).
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@3365 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* lib/PandoraFMS/Tools.pm: Moved the util functions
from pandora_manage to Tools.
* util/pandora_manage.pl: Added the apply policy
feature: includen conf file management; modules, alerts
and collection creation
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@3290 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* lib/PandoraFMS/Core.pm: Redefine downtime name and description if
not defined.
* lib/PandoraFMS/Tools.pm: Octopus is now known as Octopods.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@2900 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* conf/pandora_server.conf: New option, self_monitoring.
* lib/PandoraFMS/Config.pm: Support for new option self_monitoring.
* lib/PandoraFMS/Core.pm: Access update is not refreshed by network
modules anymore (gaining a lot of performance here). Added new functions
for internal statistics and automonitoring.
* lib/PandoraFMS/Tools.pm: New funtions for self_monitoring.
* bin/pandora_server: Modified error handler to avoid show info about bad
load of some optional libraries.
Modified general loop of maintance tasks in three
blocks: high, medium and low latency. Placed here in fixed steps (5, 30 and
one minute) all tasks pending before by server_threshold. Added
self_monitoring and internal statistic mode (for group and servers).
* util/pandora_db.pl: Update tconfig with last time of database maintance
time
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@2377 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* pandora_server.spec: Added xprobe2 dep (we made the xprobe2 rpm package
so now it's possible to satisfy dependency). Alter all paths to binary from
/usr/local/bin to /usr/bin. Other minor issues in RPM fixed.
* pandora_server_installer: Added description to get deps from zypper and yum.
Installing services in debian/ubunty systems with update-rc.d.
Make check to link from /usr/local/bin to /usr/bin if install
deploy binary at /usr/local. /usr/bin is the new default.
* pandora_server_upgrade: /usr/bin as new default. Link issue fixed.
* DEBIAN/make_deb_package.sh: Fixed Makefile replace regexp to replace all
target binary to put then in the jail under /usr/bin path.
* DEBIAN/postinst: Fixed path for tentacle_server at /usr/bin
* DEBIAN/prerm: Using native debian commands to remove services.
* Tools.pm: If there is a problem loading something in the enterprise, show it
to log.
* util/pandora_server,
util/tentacle_serverd: new path to /usr/bin/
* pandora_server.conf: new path for pandora_exec to /usr/bin/
* util/plugin/udp_nmap_plugin.sh: Check parameters before calling to namp.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@2220 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* pandora_server_installer: A few bunch of upgrades for SUSE, added
logrotate.d and some minor fixes.
* pandora_server_upgrade: Some minor fixes.
* PandoraFMS/Tools.pm: Fixes to internal SMTP Auth mechanism.
* util/pandora_logrotate: Much better configuration for pandora
logrotate config, this also rotate pandora_server.error and delete
files after 5 days.
* util/pandora_server: more fixes and small improvements to daemon
script: Removed Mysql dependency on LSB, added variable for let user
to choose timeout before KILL, and now checks for especific .conf file
on detecting PID, this should work with several servers running in the
same server.
* util/plugin/ssh_pandoraplugin.sh: rewritten to use real parameters
and be more verbose and easy to integrate in Pandora FMS Plugin server.
* util/plugin/udp_nmap_plugin.sh: Same as above.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@2097 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* tools.pm, core.pm: Float data with "," will be replace this
character with "." and manage it properly as float.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@2035 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* lib/PandoraFMS/SNMPServer.pm: Fixed small problem in snmp2agent
forwarding and better implementation of server error control.
Also solved problem with duplicated traps in SNMP console.
* lib/PandoraFMS/Server.pm: better implementation of server error control.
* lib/PandoraFMS/Core.pm: SNMP alerts now show the IP in _agent_ macro
* lib/PandoraFMS/Tools.pm: Better management of enterprise_hook on
opensource version.
* util/alert_multicast.pl: Added sample of alert script for render
alerts as multicast XML.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@2023 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* lib/PandoraFMS/Tools.pm: Undone commit of 19/8 to fix ugly mesg from
enterprise load: was breaking enterprise....
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1869 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* pandora_server.spec: Added nmap to required packages, removed xprobe2.
* lib/PandoraFMS/Config.pm, conf/pandora_server.conf: New token for nmap.
* lib/PandoraFMS/ReconServer.pm: New parent detection, TCP scanning imple-
mented using NMAP. Implemented TCP profile scanning.
* lib/PandoraFMS/Tools.pm: Some reordering in pandora_get_os() gives
more accurate OS guessing. enterprise_hook() now don't yell when enterprise
is not found :-)
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1868 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* lib/PandoraFMS/Core.pm: Add id_agente to tagente_estado when
creating a new module.
* lib/PandoraFMS/DataServer.pm: Added support for inventory XML files.
* lib/PandoraFMS/Tools.pm: Moved get_tag_value function from
DataServer.pm to Tools.pm.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1826 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* pandora_ctl, pandora_network, pandora_wmi, pandora_plugin,
pandora_prediction, bin/pandora_wmi, bin/pandora_plugin,
bin/pandora_prediction, bin/pandora_snmpconsole, bin/pandora_recon,
bin/pandora_network, pandora_recon, pandora_snmpconsole: Deleted
from repository. Old server code and startup scripts.
* Makefile.PL, pandora_server_installer, lib/PandoraFMS/Config.pm
lib/PandoraFMS/DB.pm, lib/PandoraFMS/Tools.pm, bin/pandora_server,
pandora_package_installer, pandora_server: Updated to work with the
new code, removed unneeded dependencies, fixed some bugs etc.
* lib/PandoraFMS/SNMPServer.pm, lib/PandoraFMS/PluginServer.pm,
lib/PandoraFMS/ProducerConsumerServer.pm, lib/PandoraFMS/Server.pm,
lib/PandoraFMS/PredictionServer.pm, lib/PandoraFMS/Core.pm,
lib/PandoraFMS/ReconServer.pm, lib/PandoraFMS/DataServer.pm,
lib/PandoraFMS/NetworkServer.pm, lib/PandoraFMS/WMIServer.pm: Added
to repository. New server code.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1620 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* lib/PandoraFMS/Tools.pm: Added Apple to the detected OS'es
* bin/pandora_recon: Added TCP scanning if ICMP fails to more accurately
detect systems that are firewalled from pings.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1571 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* bin/pandora_network: Better management of snmpget binary call, using
a config setup variable and checking it in startup.
* pandora_server.conf: new options added (snmpget, UDP multicast)
* Config.pm: New options managed (snmpget), new version updated (3.0-dev)
* DB.pm: Fixed two issues that makes me some problems on undefined values.
* Tools.pm: New function to manage numerical data.
* util/plugin/multicast.pl: Fixed plugin for multicast check.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1508 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* lib/PandoraFMS/DB.pm: Partially rewrote the alert core to support the
new DB schemas. Compound alerts have been temporarily disabled.
Rewrote alert macro substitution code.
* lib/PandoraFMS/Tools.pm,
bin/pandora_snmpconsole: Aesthetic changes to enterprise code.
* lib/PandoraFMS/Config.pm,
bin/pandora_network: Added support for UDP multicast status reports
(enterprise version).
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1347 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* lib/PandoraFMS/Config.pm,
lib/PandoraFMS/DB.pm,
lib/PandoraFMS/Tools.pm,
bin/pandora_snmpconsole: Added support for enterprise version
features.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1214 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* Makefile.PL: Added WMI and fixed lot of small things.
* pandora_server_installer: Fixed several things.
* pandora_wmi: Launcher script added.
* lib/PandoraFMS/Config.pm: Update version.
* lib/PandoraFMS/DB.pm
* lib/PandoraFMS/Tools.pm: Added defined check in limpia_cadena().
This should fix warning message on some calls.
* bin/pandora_snmpconsole: Fixed code for SNMP TRAP alerts.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1024 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* bin/pandora_recon: New functional recon server. It implements
different recon tasks based on OS type. Uses a production/consumer
thread model, detec OS typew and assign automatically network profiles
(including new WMI components) and WMI, Plugin, Network and Prediction
servers, taken the first master server that could found. Uses xprobe2
external tool to detect remote OS.
* Makefile.PL: Added new dependencies (HTML::Entities), and new
binary tool for controlled time executing (pandora_exec), used now
by pandora_wmi and pandora_plugin.
* Config.pm: Fixed problem parsing xprobe2 command.
* DB.pm: Functions pandora_create_agent() and pandora_event() moved
from Tools.pm to here. Removed some old DEBUG messages.
* Tools.pm: Moved pandora_create_agent() and pandora_event() to DB.pm
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1002 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* pandora_network: Minimal style changes. Added status change in
tserver table on controlled shutdown.
* pandora_server: Added status change in tserver table on controlled
shutdown. Minimal changes and optimizations. Recheck for bad XML is
adjusted to 3 instead 10.Fixed problem with "blank" agent names. Added
support for async types (data, proc and string).
* config.pm: Added support for new config token: max_log_size. This
stablish a max log filesize.
* DB.pm: Added support for postprocess (as simple multiplier value).
Fixed problem with continuous update of laststart in server keepalive.
Updated also several logger priorities (raise them).
* Config.pm: pandora_get_os() fixed for void OSes. Logger() implements
a file-rotation system with a maximum in bytes for PandoraFMS log file.
* pandora_server.conf: Updated with new options and removed some from 1.3.1
* pandora_export: Deleted skeleton file por export server.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@967 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* pandora_dbstress.pl: Added suppor for "text" moduletypes.
* pandora_recon: Now is multithreaded. Better management of already
registered IP's. Better status update. Some fixes (xprobe2 crash).
* Config.pm: Added support for recon_threads token.
* Tools.pm: added pandora_trash_ascii(), autocreate
set agent in learning mode automatically.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@879 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* config.pm: Added options for xprobe2, and autocreate.
* tools.pm: Added functions pandora_create_agent(), pandora_get_os(),
and pandora_event() (this has been moved from DB.pm).
* pandora_server.conf: Added options for xprobe2, autocreate and
autocreate_group.
* pandora_network: Added support for TCP scanning (not implemented in
console yet), parent detection using traceroute, OS fingerprinting with
xprobe2, event creation using central functions, and some optimizations.
* pandora_server: Added support for agent autocreation, OS detection from
the XML header, and event notification "new_agent" type.
* pandora_recon: First code to implement traceroute functionality
using Pureperl module. Added code for remote OS fingerprinting.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@874 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* conf/pandora_server.conf: Added new internal MTA feature config tokens .
* pandora_server_installer: Copy default plugins to /usr/share/pandora/util
* Config.pm: New MTA feature tokens, and added event when starting server.
* DB.pm: Changes in execute_alert function (now passes several hash refs).
Alerts and events now use new format of events. Add support for new inter-
nal MTA/SMTP alert feature. Discovered and FIXED a very annoying bug on
need_update usage in write_state function that was making a HUGE
degradation when too many non-init modules in network server.
* Tools.pm: Added pandora_sendmail() function. Needs Mail::Sendmail dep.
* All servers: Support for pandora_shutdown notify on event database.
* pandora_snmpconsole: Updated SNMP alert mechanism. Need to be tested!.
* pandora_recon: Now generate an event when discover a new host.
* util/pandora_db.pl: Added support to automatically delete events.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@859 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
* lib/PandoraFMS/Config.pm: New pandora_startlog function. Added support to manage PID
in daemon mode. Added support for quiet mode. Added prediction_threads option.
* lib/PandoraFMS/Tools.pm: daemonize function now manages PID and store in a file when
it forks.
* lib/PandoraFMS/DB.pm: Removed some gotos. Modified generic-access DB functions and
added one to manage entire row in a hash: get_db_free_row ().
* bin/pandora_plugin: A lot of fixes. This code actually works fine :-)
* bin/pandora_prediction: First version of usable code. Works but not seriously tested.
* bin/pandora_network: Adjusted to work with new features (quiet mode) and new db
schema. Some code cleanup.
* util/pandora_dbstress.pl: Updated default values.
* util/pandora_dbstress.README: Improved README documentation for dbstress tool.
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@747 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f