Revision history for FusionInventory agent

2.5.1 Tue, 02 Jul 2019

core:
* build: fix fusioninventory-remoteinventory was not installed
* fix HTTP server plugins base configuration folder
* fix HTTP server plugins installation from Makefile
* fix HTTP server SSL plugin so SSL sessions are not closed after one second
* fix #679: Win32 service HTTP server wasn't answering during an inventory
* feature: Added Proxy and SecondaryProxy HTTP server plugins

inventory:
* Bump Inventory task version to 1.8
* fix error message while starting fusioninventory-inventory script
* fix #667: LG tv monitor inventory failure
* win32: VirtualBox or VPN network adapters are now set as virtual
* added Samsung S24E450 monitor serial support
* linux: fix megacli storage analysis
* linux: check package status before telling it is installed on debian/ubuntu
* fix #688: inventory on "windows x64 1903" takes too much time. That was only
  happen when an antivirus other than Windows Defender was enabled and it blocks
  WMI call toward MSFT_MpComputerStatus class.
* win32: Add Symantec/Norton antivirus support
* fix #399: Deduplicate logged users without being case sensitive on win32
* Updated pci.ids to 2019.06.30 version
* Updated usb.ids to 2019.05.08 version

netdiscovery/netinventory:
* Bump NetDiscovery task version to 4.0
* Bump NetInventory task version to 4.0
* add Hygon Dhyana Support
* refactor: the multi-threading scheme has been re-worked so it is now working for
  netinventory task and more efficient for netdiscovery while scanning many range
  by job
* refactor: Collected datas are also sent to server from threads
* Added 2 options to fusioninventory-netdiscovery to save XMLs as file and
  automatically start netinventory when convenient:
  * add --inventory option to netdiscovery to automatically start netinventory
  * add --save option to define a folder where to save related XML
* Updated sysobject.ids (tagged fia-2.5.1 tag on github repository)

esx:
* Bump ESX task version to 2.5
* Support EnclosureSerialNumberTag and SerialNumberTag values as availables since
  VMware ESXi 6.5, Patch Release ESXi650-201811002 (build-10884925) and in latest
  VMware ESXi 6.7.
* add esx script new options:
  Add --dump and --dumpfile option to help ESX support debugging

2.5 Fri, 12 Apr 2019

core:
* linux: reload logger during daemonize to avoid issues like not listening http
  daemon if logger has still not been used before starting the listener
* Fix #646: HTTP daemon not starting on CentOS 7
* revert dfcb64573e as now more generic fix has been implemented in a538abaed7
  (tested on CentOS 6)
* win32: don't show service memory usage on OS not supporting GetProcessMemoryInfo
* Fix #601: Log URL for server target and log path for local target
* win32: add early stderr logging support for service
  Just rename "fusioninventory-win32-service.rc.sample" removing ".sample" part
  to enable this feature. This can be handy to investigate start service failures.
* Added support for HTTPD plugins
* Added Inventory HTTPD plugins to permit remote inventory request (disabled by default)
* Added Listener target to permit agent to only answer http requests
* Updated configuration to support HTTPD plugins dedicated configuration file
* Added fusioninventory-remoteinventory script to request agent with Inventory
  HTTPD plugin enabled
* Fix HTTPD local address reuse
* Added SSL HTTPD plugins to support SSL in any server plugins
* Limit the reload target check to 30 seconds
* win32: report memory usage as Working Set Size (WSS) and Page File Usage (PFU)
* win32: revert handling service with callbacks. Even if Win32::Daemon proposes
  the callbacks usage obsoletes the typical skeleton code, the callbacks usage
  is known to leak memory and tests with latest Win32::Daemon shows that's true.
* win32: handle task run in a managed thread as this is more efficient than using
  perl fork with thread emulation under win32 and preserve a little memory usage.
* win32: wait service control manager is ready before really starting the service
* logger: don't use File::stat module to just get logfile file size, better use -s
  as File::stat module seems to fail in rare case.

inventory:
* Bump Inventory task version to 1.7
* Fix lspci command subsystem parsing
* Fix hponcfg.exe can output on stderr on win32 when not really usable
* Skip not working under win32 Generic::Users inventory
  Also avoid error in log on /etc/passwd and /etc/group not found files
* Fix #601: Log deviceid as agentid and related target when running an inventory
* Fix #644: Make WORKGROUP inventory consistent
* Fix #541: Don't try to scan virtualbox VM in win32 users directories
* Updated pci.ids to 2019.04.12 version
* Updated usb.ids to 2019.03.20 version

netdiscovery/netinventory:
* Bump NetDiscovery task version to 2.9
* Bump NetInventory task version to 3.3
* Add Lancom in networking devices recognized by description parsing
* Fix #650: discard empty consumable level elements
* Fix #651: discard empty type element
* Add Netdisco export contrib script from Stoatwblr, see contrib/netdisco
* Fix #638: Fix Kyocera counters handling thanks to Stoatwblr
* Printers: assume -2 counter value means a WARNING level and report it
  Thanks Stoatwblr for the deep investigation
* Add Oki printer support
* Add APC serialnumber support
* Fix #612: Enhanced Ubnt AccessPoint support
* Updated sysobject.ids (tagged fia-2.5 tag on github repository)

deploy:
* Bump Deploy task version to 2.8
* Fix #394: Check file parts source/mirror url to guaranty it ends with a slash
  and trigger an error if it doesn't look like a valid URL.

collect:
* Bump Collect task version to 2.6
* WMI properties can now be a list of properties with comma or space as separator

2.4.3 Fri, 22 Feb 2019

core:
* fix some cases where a file handle was not closed
* win32: fix a handle leak case when agent was running as service
* Fix #637: Don't depend on GNU install during "make install" to support
  more Unix systems
* daemon/service: reload target when the stat file has been updated by
  another script to use the updated next run timeout
* For server target, server connection attempts are delayed from 60 seconds,
  doubled at each new failed attempt, now until reaching max defined by delaytime
  configuration parameter.

inventory:
* Bump Inventory task version to 1.6
* win32 antivirus support update:
 - nicer product name report for ESET
 - report expiration date for ESET
* Fix #582: Add other Acer monitors support
* Fix #687: Virtuozzo inventory task doesn't include first container
* Add few minor fix to virtuozzo containers inventory
* Fix LXC containers support to support recent LXC versions
* Fix #625: Container UUID is the same than host UUID
* Fix #624: Skip incomplete battery infos from dmidecode (seen on MacOS)
* Fix #631: Fix duplicated memory inventory on MacOS
* linux: fix storage size inventory
* linux: try to set storage serialnumber from mbr partition id or even
  PV UUID when not found (hdparm missing or virtual drive)
* Fix #604: Only inventory Windows Store on recent win32 platforms
* Fix #596: Openstack container seen as Physical on win32
* Fix #593: Correct detection of machine type when /var/log/dmesg is too short
* Fix #583: Add BitDefender antivirus support
* Encrypted filesystems support added
* Updated pci.ids to 2019.02.20 version
* Updated usb.ids to 2019.01.17 version

netdiscovery/netinventory:
* Bump NetDiscovery task version to 2.8
* Bump NetInventory task version to 3.2
* Add BlueCoat proxy appliance serialnumber support
* win32: Support arp table check for NetDiscovery task
* Fix #634: Net::Ping version may not numeric with win32 installer
* Add Panasas PanFS support
* Add few HP/Compaq serialnumber cases support
* Fix #605: try 'ip neighbor show' if 'arp' is not available for netdiscovery
* Add UPS-MIB support for Riello, S2S & APC
* Components support added
* Updated sysobject.ids (tagged fia-2.4.3 tag on github repository)

2.4.2 Wed, 03 Oct 2018

core:
* Linux: fix agent not listening on http port when syslog logger is active
  and Sys::Sylog module is too old

inventory:
* Bump Inventory task version to 1.5
* Fix physical memory error correction detection via WMI under win32
* Fix #299: Added UWP/APPX/Windows Store software inventory
* win32 antivirus detection enhanced support:
  - add support for few antivirus base versions (defender, kaspersky,
    EST, avira, MSE, McAfee, F-Secure)
  - try to set license expiration date for F-Secure, kaspersky & avira
* Fix #442: kaspersky not fully recognized in russia
* Fix #501: wrong status was reported when windows defender was disabled
* Enhanced software inventory under Arch Linux
* Fix #453: under MacOS, skip XML DTD validation for software inventory as
  parsing may fail if a proxy is enabled
* Fix #473: fix arch detection under MacOS
* Fix #475: fix video cards support under MacOS
* Fix #504: support non-standard ssh port to report local ssh server pubkey
* Updated pci.ids to 2018.10.02 version
* Updated usb.ids to 2018.08.15 version

deploy:
* Bump Deploy task version to 2.7
* Fix deployment of private packages: their downloaded parts were not
  fully found when download were too long (closes: #542)
* Handle retention duration differently for p2p and not p2p files
* P2p files have a default retention of 3 days by default
* P2p files have a default retention of 3 times the target prolog delay
  after download, parts retention is reset to the same delay for all file parts,
  so the retention duration applies at the time parts has been downloaded
* P2p file parts are now cleaned up after job success if retention duration
  is null
* Fix WinKeyNotEquals audit check to also be true when the registry key is
  simply missing
* Add support to "startjob" key for failing deploy audit check to permit
  to skip remaining checks when a failing condition makes them obsolete.

esx:
* Bump ESX task version to 2.4
* Support 2 ServiceTags case to cover chassis & lame board S/N inventory
* Updated AssetTag support
* fix wrong cpu core computation when only one package is available

netdiscovery/netinventory:
* Bump NetDiscovery task version to 2.7
* Bump NetInventory task version to 3.1
* Thanks to @QuickNerd357, Brocade devices will now show serial number and
  firmware informations.
* Sanitize VLAN names. This fixes an issue with Cisco Small Business Switches.
* Get rid of unofficial Net::Ping::TimeStamp support to only use official
  support if available. Net::Ping v2.67 is now mandatory to discover
  devices thanks to timestamp ping.
* Fix #481: Add Synology NAS support
* Fix #480: Add CheckPoint support
* Fix #488: Update HP Printers support
* Updated LLDP/CDP connection match checks
* Updated sysobject.ids (tagged fia-2.4.2 tag on github repository)

collect:
* Bump Collect task version to 2.5
* Thanks to David Durieux, add support for dynamic pattern in registry key
  collect under win32. The dynamic pattern is '**' to glob subkeys like in:
   HKEY_USERS/**/Software/**/**/CurrentVersion

maintenance:
* Bump Maintenance task version to 1.1
* Disable Maintenance task if no maintenance module could be used

test suite:
* Make snmp walk tests faster

2.4.1 Fri, 29 Jun 2018

core:
* Update setup & FusionInventory::Agent::Version modules during make install
* Can set FusionInventory::Agent::Version module VERSION & COMMMENTS during
  perl Makefile.PL configuration stage
* Normalized Target class APIs
* Register planned tasks at target level so target class can filter out
  unsupported tasks
* Add Scheduler target support to be used at the same time than Server target
  but more often to make maintenance other server target storage
* One scheduler target is created for each configured server target
* Scheduler target will trigger between one to 2 minutes
* Get rid of Time::Piece dependency

maintenance:
* New Maintenance v1.0 task
* Maintenance task handles quick server target storage cleanup to deploy
  packages are really removed afetr their expiration time
* Task only supported by Scheduler target

inventory:
* Fix BSD Storages support
* Don't try to run dmidecode inventories if it returns no output
* Set Bios && Hardware from /sys/class/dmi on recent Linux when dmidecode is missing
* Add PowerSupplies support
* Add BSD batteries support
* Add UUID to LXD containers under Linux
* Fix #439: Wrong network interface speed under win32
* Fix #472: On MacOS, add monitors serial number when available
* Fix #479: No virtual machine memory under Proxmox
* Fix #485: Fix df output parsing under MacOS
* Fix #500: Add Acer monitor EDID id match
* Better SQL Server software inventory under win32
* Update Xen Server support
* Fix get-edid command output parsing, thanks to David Durieux
* Updated pci.ids to 2018.06.29 version
* Updated usb.ids to 2018.05.04 version

netdiscovery/netinventory:
* Bump NetDiscovery task version to 2.6
* Bump NetInventory task version to 3.0
* fusioninventory-netdiscovery & fusioninventory-netinventory scripts
  now support '--port' and '--protocol' options for not standard snmp support.
* Fix RAM & CPU are missing from net inventory
* Fix MEMORY/RAM OID support
* Added support for HP Net Peripheral, involving better HP printers inventory
 * Get Serial number & firmware version
 * Fix total printed pages counter in many case
 * Added total color pages counter support
* Don't assume colors table was read: fixes black toner detection on many HP printers
* Added Microtik devices support
* Enhanced Epson printers support, including model name, serial number and firmwares
* Updated LLDP support
* NetInventory task protocol upgrade to fix multithreading scheduling according to
  upgrades done server-side.
* Fix discovery of devices with only ping responding and without found hostname. In
  that case, we default the DNSHOSTNAME to the scanned ip.
* fix entity option in fusioninventory-netdiscovery script
* Get rid of nmap support for NetDiscovery task
* Add Zebra printer support
* Add QuesCom Appliance detection
* Add Linux Appliance template support
* Closes: #441,#519
* Update extmod function calls, thanks to Vadim Pisarev
* Add custom OID for Canon printer counters
* Updated sysobject.ids (tagged fia-2.4.1 tag on github repository)

deploy:
* Bump Deploy task version to 2.6
* Fix file retention support
* Add P2P peers caching to reduce peers discovery load in the meantime
* Reduced timeout for peer discovery and file parts downloading for P2P. This
  efficiently limits the time passed to discover the local peers and disqualify
  any busy or not responding peers in a more acceptable delay.
* For better P2P support, agent ajusts its 404 message to "Nothing found" when it
  has nothing to share with other agents. So peers won't ask again and again for
  any file part during 20 minutes by default.

2.4 Fri, 29 Dec 2017
core:
* Cleanup confdir use in task so using deprecated etc/softwares folder is no more
  logged in journal
* Get rid of confdir setup in setup.pm
* Added "include" directive support while reading configuration file to make
  configuration maintenance easy
* Update syslog name to fullname agent
* Get rid of List::Util & Proc::PID::File module dependencies
* Try to load more recent IDS database files if found in well-known places
* Fixed default daemon pid filename
* When --pidfile is used, don't permit to manually start daemon even in foreground
  unless --pidfile parameter is different
* Makes --pidfile filename optional to compute a default one
* Check if we need to include libdir while daemonize
* Class refactoring: Get rid of discouraged 'use base' syntax in favor of lighter
  'use parent' and as fields pragma is not used (see 'base' man)
* Logger refactoring: no more an Exporter based class to simplify its usage and
  as Logger object should be commonly shared everywhere it is used.
* Fix command run to also time out while an alarm has been set
* Fix WMI calls to also time out under win32
* Few code refactoring
* remove devtom30 from maintainers

inventory:
* Bump Inventory task version to 1.4
* Fixed Provider program name in agent context
* Fixed HyperV VM issue while BIOSGUID is not defined
* Fix #349: Include last logged user as usual computer user on win32 platform
* Linux distro: Add support for reading os-release file and removing LSB support
* Fix Solaris drives df output parsing adding better zfs handling
* Make backend-collect-timeout working even while waiting on command output
* Support ASM filesystems on Oracle Grid
* Introduce getDeviceId() API on Inventory class so it returns task deviceid if set
  or set a new deviceid (aka agentid or machineid) in case of remote inventory
* Fix #161: Support retrieving License software via WMI, including Office 2016
* Fix #364: [win32] Get antivirus version from software installation and get
  Windows Defender version via WMI
* Added Windows 10 version support
* Updated pci.ids to 2017.12.20 version
* Updated usb.ids to 2017.12.28 version

netdiscovery/netinventory:
* Bump NetDiscovery & NetInventory task version to 2.5
* Added section support for MODEMS, SIMCARDS & FIRMWARES
* Added new detection algorithm based on exposed device supported MIB (sysORID list)
  and/or sysObjectID
* Added support for HP iLO cards
* Added support for Digi devices with enhanced MODEMS, SIMCARDS & FIRMWARES support
* Updated sysobject.ids with a lot of new devices support
* Keep first MAC address found while discovering
* Try first to select MAC address from SNMP session during SNMP device scan
* Updated sysobject.ids (tagged fia-2.4 tag on github repository)

deploy:
* Bump Deploy task version to 2.5
* ddurieux fixed a regression introduced in 2.3.18 preventing to re-use known
  good peer to download file parts.

esx:
* Bump ESX task version to 2.3
* Removed no more needed createFakeDeviceid() API

injector:
* Support --no-ssl-check option to avoid checking server SSL certificate

wmi-inventory:
* Added new task and script to permit agent-less inventory on win32 platform based
  on remote WMI support.

2.3.21 Mon, 31 Jul 2017
core:
* Service/daemon refactoring:
 * Move all daemon method to dedicated FusionInventory::Agent::Daemon package
 * Win32 service now based on private FusionInventory::Agent::Service inheriting
   from FusionInventory::Agent::Daemon
 * support configuration reloading on SIGHUP signal (unix)
 * support pausing service under win32
 * support run now on SIGUSR1 signal (unix)
 * and a lot of daemon/service optimizations and enhancements
 * daemon process renamed to provider derivated name under unix-like systems with
   tag if defined. Example: "fusioniventory-agent (prod)"
* Report http proxy error to help debug communication problems: #324
* Prevent setup.pm indexing in CPAN as requested by CPAN admins
* Other fixed issues: #321

inventory:
* Bump Inventory task version to 1.3
* Fixed win32 softwares finally missing when 2 'inventory' are set in tasks
* Fixed bug: last dmidecode block wasn't parsed
* Updated pci.ids to 2017.07.27 version
* Updated usb.ids to 2017.07.29 version
* Updated storage inventory on MacOS supporting Firewire storages: #309 #310
* Fixes on dmidecode memory inventory: #320
* Update memory component capacity on virtual systems: #339
* Fix lenovo system information product name read from dmidecode: fix #311
* Include TL in AIX OS version: #328
* Fix Xen vm with space in name not colleted: #176

netdiscovery/netinventory:
* Bump NetDiscovery & NetInventory task version to 2.3
* Fix credentials option support
* Fixed duplicated mac addresses: #315
* Also accept LLDP notifications on sysName
* Force MANUFACTURER to match real vendor, VENDOR inventory key removed
* Better cleanup of canonical strings with invalid characters
* Support more alternate mac address formats
* Fix some string field encoding
* Support Digi devices serial
* Support ups model oid
* Fixed Juniper serial retrieval
* Enhanced Konica printer discovery
* Enhanced mac address discovery
* Fixed wrong result on snmp read case: #139
* Enhanced error messages in netdiscovery task
* Updated sysobject.ids

deploy:
* Bump Deploy task version to 2.4
* Added new audit checks winkey not equals support
* Support User Interaction under win32 using WTS API (need server-side plugin upgrade)

injector:
* Support xml file extension: #360
* Fixed returns exit code 0 even on error: #329
* Enhanced displayed error messages

2.3.20 Thu, 1 Jun 2017
core:
* Fix #224, #254, #268
* Fix 2.3.19 regression while installing from sources
* Fix bad initialization while computing inventory checksum involving crash in rare case
* Include new CONTRIB.md file to reference not mergeable contributions
* Fix scheduling issue restarting tasks too early
* Avoid a warning on Socket module version check, issue found on Debian and MacOS
* Fix: Support SSL debugging at verbosity 2 on Stderr only

inventory:
* Bump Inventory task version to 1.2
* Fixed Docker support
* Added system software category support
* Added firewall status innventory support
* Fix last user computation on some unix systems
* Add CPU CORECOUNT support based on dmidecode output
* Fix STORAGES support on some platforms
* MacOS: Refactoring to replace Tie::IxHash dependency with XML::XPath to better
  parse system profiler output
* Fix: block device inventory still possible even if fdisk command is missing on linux
* Fix #289: Add ARM Board support
* Support UUID for lxc containers

netinventory:
* Fix #221, #275
* Command documentation updated
* a lot more of additional devices in sysobject.ids
* Fix Juniper new model and firmware detection

deploy:
* Bump Deploy task version to 2.3
* Audit checks refactoring and fixes
* Fix win32 registry key check
* Added new audit checks like winkey values, needs a server plugin upgrade
* Enhanced audit checks error reporting
* Fix and enhanced command action to really report output, may require a server plugin upgrade
* Fix command action exit code while target command is not found on unix

wakeonlan:
* Bump WakeOnLan task version to 2.2
* Fix thanks to Ludovic Pouzenc: send magic packets to all non-loopback non-dumb interfaces

2.3.19 Fri, 17 Feb 2017
core:
* Version & provider refactoring to simplify release process
* Provided agent versions can now been commented by providers and  programs will
  expose comments for --version argument
* Tasks version is now read more efficiently and should reduce agent memory
  footing while running under daemon or service mode
* Bump tasks versions to reflect new way of reading task version
* Support no-compression option: useful for debugging or while server do not
  support compression
* Replace JSON dependency with JSON::PP pure perl version
* Fixed configuration parsing
* Fix sigterm support on win32
* Reduced agent memory footprint on win32
* Service optimizations limiting inventory run time on win32
* Fix service registration on win32 while requested from sources
* Try to reschedule target sooner on network error
* add Thomas Lornet aka devtom30 as maintainer

inventory:
* Fix VERSIONCLIENT not set
* Screen inventory refactoring introducing ALTSERIAL inventory value which may
  show a better serial number for some manufacturer. This will ease future
  screen serial number fix integration: comparing expected S/N toward ALTSERIAL
  will tell us we just need to update dedicated subclass for a given monitor.
* Some portable computer screens are now recognized
* Previously undefined screen caption may now contains additionnal informations,
  mostly for lcd internal panel, like panel model. These are taken from EDID
  "monitor_text" when found.
* Few more Acer serial number are fixed
* Fix some memory size read using canonical API
* add --no-compression|-C option to disable compression of communication with server
* Fix HOSTNAME for MacOS
* Add docker container support for linux
* Fix install date while using rpm packaging or for MacOS
* solaris support update
* macos support updates & fixes
* rudder updates
* virtualization/container detection updates (HyperV, VMWare, KVM, LXC/LXD, VirtualBox)
* Added TeamviewerID support for win32 & MacOS
* Fix win32 key registry reading while it contains white space
* Add batteries support on MacOS
* Add HOSTID support on linux & solaris

deploy:
* Bump Deploy task version to 2.2
* Deploy task audit refactoring
* Add support for fileSHA512mismatch check processor in audit
* Fix #205 - Improve software package's audits
* Support optional audit check name in reported status (needs server update)
* Add checkprocessor unit tests

injector:
* add --no-compression|-C option to disable compression of uploaded files

2.3.18 Thu, 16 Jun 2016
core:
* Many bug fixes
* enhance daemon/service mode:
 - running tasks are killed while service is stopping
 - httpd daemon is now made not blocking so daemon/service handles
   external events quickly
* full win32 service refactoring introducing Windows 10 support
* win32 service can be registered/deleted from sources
* support new option --tasks to specify tasks to execute and their order
* support new option --conf-reload-interval to ask to reload conf at
  regular time interval while running in daemon or service mode.

inventory:
* Many bug fixes
* enhanced McAfee antivirus reporting
* added REMOTE_MGMT section to report infos related to installed remote
  management tools. Actually reports Teamviewer ID
* Eventually try ethtool syscall on linux to find network cards
* Fixed memory reporting on Solaris
* Enhanced installdate for softwares on many platforms
* Enhanced drive a storage reporting on win32
* Fix #584: Acer B196HQL S/N support

deploy:
* Bump Deploy task version to 2.1.0
* trigger error on servers missing Digest::SHA library to help diagnostic
* Backport some master branch work done by guillomovitch on P2P support
* Net::Ping & Parallel::ForkManager library are now mandatory for P2P support
* POE & POE::Component::Client::Ping requirements are now obsolete
* Also add few fixes and enhancement to P2P support
* Added unittest for P2P support
* fixed issues related to JSON support
* Enhanced run command output to help debugging failures

injector:
* add --recursive|-R option to scan sub-folder for OCS files

* add g-bougard as maintainer

2.3.17 Sun, 27 Sep 2015
inventory:
* add collect task support
* fix CPU frequency retrieval on Windows (#2876)
* fix CPU core and thread retrieval on Windows (#2894)
* small fixes for DragonFlyBSD (#2899)
* fix interface speed retrieval in Solaris zones (#2939)
* fix memory information retrieval on Solaris (#2907)
* fix recurrent timeout for system_profile usage on MacOS (#2913)
* fix hangup when enumerating ovirt virtual machines (#2917)
* fix virtuozzo virtual machines identification (reported on mailing-list)
* fix offline xen virtual machines properties retrieval (#2988)
* fix warning and parsing issues with LSI RAID adapter
* retrieve Rudder agent information for all kind of Unix systems (#2999)

netdiscovery:
* fix multi-threading issues

netinventory:
* better serial retrieval (#2912)
* better VLAN retrieval for non-Cisco devices
* fix firmware retrieval issues leading to malformed XML (#2908, #2956, #2994)
* fix multi-threading issues
* add support for Kyocera printers page counters
* additional devices in sysobject.ids (#2912, #2932, #2965, #2966, #2994)
* minor fixes in sysobject.ids
* relax constraints on sysobjectid syntax

wake-on-lan:
* fix communication issue with latest FusionInventory for GLPI (#2937)

fusioninventory-injector:
* allow to mimic agent in user-agent HTTP header

fusioninventory-netinventory:
* support multi-threading via --threads option
* support inventory toward multiple hosts
* dropped unused --entity option

test suite:
* more robust SSL connection tests

2.3.16 Sun, 1 Mar 2015
inventory:
* fix Rudder server UUID file location (#2865)
* use BIOS ID as guest ID for HyperV hypervisor (#2881)
* filter disabled CPUs in DMI data (#2525)
* minor fixes in CPU information retrieval

netdiscovery:
* fix communication with latest FusionInventory for GLPI (#2862)
* add multiple H3C/SMC/HP models in sysobject.ids (#2873)
* change sysobject.ids file format

netinventory:
* fix communication with latest FusionInventory for GLPI (#2862)
* add hirschman-specific firmware and serial OIDs (#2631)

2.3.15 Tue, 6 Jan 2015
inventory:
* retrieve attached network gateway from default gateway
* do not report 0.0.0.0 as address for non-configured IPMI interfaces
* fix last user retrieval with 32 bit agent on 64 bit Windows

netinventory:
* better firmware retrieval (#2806)

test suite:
* fix Perl version check for POE tests
* force IPv4 for connection tests

2.3.14 Mon, 15 Dec 2014
core:
* fix ESX and Deploy task execution from server request (#2809, #2820, #2823)
* manage PID file explicitely (#2796)
* make PID file location configurable, through --pidfile option (warning:
  default location is now in agent state directory)

netdiscovery:
* add a few H3C/HP models in sysobject.ids (#2812)

netdiscovery:
* fix fast interface speed computation (#2833)

install:
* add versioned dependencies on IO::Socket::SSL and Thread::Queue

2.3.13 Thu, 6 Nov 2014
core:
* log HTTP replies status
* log agent stop event (#61)
* better logging of task initialisation process
* fix syslog logger usage with debug level >= 2 (#2780)
* fix SNMPv1 multiple values queries

netdiscovery:
* skip SNMP scan immediatly if there is no answer from remote host
* send task termination message to server when shutting down (#185)
* thread usage cleanup

netinventory:
* propagate error messages to server
* fix null-character presence in XML output (#2670,#2746,#2754,#2784)
* fix WWN physical address parsing (#2759)
* send task termination message to server when shutting down (#185)
* thread usage cleanup

inventory:
* add support for FibreChannel controller on Linux (#2759)
* fix HyperV machines enumeration (#2141)
* fix typo in printer property name on Windows (#2782)
* fix wrong function call on BSD i386 (#2797)
* fix wrong function call on Solaris (#2799)
* fix parsing of psrinfo -vp output on Solaris (#2798)

test suite:
* disable tests requiring POE under perl 5.8

2.3.12 Mon, 06 Oct 2014
core:
* drop Socket::GetAddrInfo usage, and use Socket directly for name to address
  resolution

inventory:
* fix networks interface enumeration on Windows XP (#2733)
* fix BIOS date format error on Solaris (#2735)
* retrieve OS minor version on Solaris (#2736)
* identify dockers containers (#2731)
* fix adobe license key format (RT #99164)

2.3.11.1 Wed, 25 Sep 2014
core:
* update MANIFEST to fix missing files

2.3.11 Wed, 25 Sep 2014
core:
* additional distribution metadata
* more flexible message filtering in logger

inventory:
* additional exclusion categories
* more detailed log message for inventory execution
* utf8 encoding fixes for local users and groups on Windows
* fix mac address retrieval for bonded addresses on Linux (#2622)
* fix network interface type identification on Windows
* add network interface type on BSD and Linux (#1838,#2622)
* add WIFI info for network interfaces on BSD and Linux ()
* identify interfaces aliases on Linux (#2622)
* add PCIID for network interfaces and video cards 
* better Xorg log file parsing on Linux
* fix disk size computation on Linux (#2718)
* prevent abusive /etc/blkid.tab update on Linux
* ignore whitespace-only disk serial numbers on Windows (#2665)
* fix architecture identification on Solaris (#2672)
* add publisher for dpkg-based distribution on Linux

netinventory:
* drop consumables database in favor of standard consumable identification data
* no more arbitrary consumables number limit
* report unknown and approximate consumable level values as such
* fix negative consumable level values
* report multiple IP addresses associated with each port (#1421)
* report aggregated network ports (#2179,#2564,#2575)
* log sysdescr lookup in devices database
* additional Hischmann and Fortinet devices IDs (#2631)

2.3.10.1 Mon, 04 Aug 2014
inventory:
* fix regression introduced in 2.3.10 wrt hostname on Windows (#2647)
* fix regression introduced in 2.3.10 wrt last logged user on Windows
* provide error messages for name to resolution failures

netdiscovery and netinventory:
* avoid crash for missing logger with command-line tools

2.3.10 Wed, 30 Jul 2014
inventory:
* fix serial key retrieval regression on Windows (#2632,#2641)
* fix office 32bits serial retrieval on 64bits Windows (#2616)
* fix duplicate network interface on AIX (#2527)
* fix warnings for non-parsable etime on Unix (#2636)
* fix global zone identification on Solaris (#2620)
* fix software retrieval on recent BSDs (#2637)
* better file system types identification on Solaris
* add support for HyperV machines enumeration (#2141)
* add support for LXC container identification (#2311)
* add --scan-profiles option to fusioninventory-inventory (#2625)

netdiscovery:
* fix nmap parameters computation (#2618)
* better device identification (#2601, #2194)

netinventory:
* fix invalid character presence in XML output
* add support for Extreme Discovery Protocol (EDP)
* better handling of CDP implementation differences
* better handling of multiple discovery protocols

2.3.9.1 Tue, 15 Jul 2014
install:
* fix sysobjectid and consumables databases files installation

2.3.9 Tue, 15 Jul 2014
core:
* disable lower-level SSL checks when no-ssl-checks is used

netinventory and netdiscovery tasks:
* merge all files from sysobjectid database into a single one
* update sysobjectid database

netdiscovery task:
* catch more SNMPv3 authentication errors
* allow multiple SNMP credentials for netdiscovery executable

netinventory task:
* better printer consumable identification, using vendor references
  (#2581,#2582,#2583,#2584,#2587,#2589,#2591,#2592,#2593,#2594)
* externalize consumable ids in a data file
* report 0% level instead of 100% for wastetoners with OK status (#2593) 
* skip problematic address only for non-existing interfaces (#2599)
* mark --model option as deprecated for netinventory executable

inventory task:
* disable user profile scanning for software by default on Windows (#2555)
* avoid fatal dmidecode usage on Windows 2003 for CPUs (#2562)
* fix last loggued user identification on Windows (#2553)
* fix product key decoding on Windows 8 (#2544)
* fix IE 10+ version retrieval on Windows (#2528)
* more details for USB devices on Windows (#2598)
* get OS UUID for SPARC on Solaris (#2539)
* add Xen Citrix server VM support (#2529)

2.3.8 Sun, 11 May 2014
netinventory task:
* add support for trunk port identification on non-cisco hardware (#2386)
* add VENDOR element, and keep MANUFACTURER bound to original manufacturer
* add H3C hardware database
* better error messages for non-existing interfaces

inventory task:
* fix multiple crashes introduced by command logging
* fix crash in Windows License module when office is not installed (#2202)
* fix last loggued user retrieval on Windows (#2458)
* fix 32bits software in user environment retrieval on Windows 64bits

test suite:
* transfer hardware tests in private hardware repository

2.3.7.1 Wed, 30 Apr 2014
inventory task:
* fix crash introduced by command logging on BSD hosts

2.3.7 Tue, 29 Apr 2014
install:
* do not rely on GNU install specific options

netinventory and netdiscovery tasks:
* drop support for SNMP dictionary
* drop support for SNMP models
* large code cleanup
* enhance firmware and serial number retrieval
* update extreme networks models database

inventory task:
* fix multiple warnings for missing commands (#2460)
* fix 'broken pipe' error messages on Solaris (#2460)
* fix warnings for NIS/NIS+ external references in /etc/passwd (#2460)
* log executed commands with debug level >= 2
* fix a crash in Windows storage inventory (#2471)
* fix process inventory on AIX (#2481)
* fix firmware version retrieval on AIX (#2480)
* fix mac address extraction for infiniband interfaces (#2432)
* fix CPU identification on newer ARM kernels (#2485)
* fix inconsistencies in process runtime computation (#2491)

test suite:
* ship missing LXC test file (#2483)

2.3.6 Mon, 10 Mar 2014
core:
* abort with explicit error message when there is 
  no available task
* when receiving a push request from a server, reschedule
  contact for this server only

inventory task:
* fix a warning with LXC 1.0.x

netinventory task:
* fix SNMPv3 credentials handling
* fix mac address retrieval on non-default VLANs
* fix LLDP info retrieval for some hardware
* fix memory exhaustion for some hardware (#2414)
* use get-next-requests instead of get-bulk-requests, slower but safer,
  especially with large gaps in indexes

netdiscovery task:
* fix SNMPv3 credentials handling
* do not report errors for non-responding host with SNMPv3

wake-on-lan task
* honour all mac addresses from server request (#2353)

test suite:
* fix network interface test on Solaris (#2438)

2.3.5.1 Tue, 14 Jan 2014
inventory task:
* fix AIX LVM regression introduced by incorrect fix (#2384)
* fix another potential warning on AIX

2.3.5  Tue, 14 Jan 2014
netinventory task:
* add more default OIDs for mappings undefined in SNMP model
* fallback on default OID if SNMP model mapping doesn't bring any result
* restore and enhance mac adressses extraction for connected devices on
  non-default VLANs
* fix trunk port identification
* fix model loading with fusioninventory-netinventory

inventory task:
* get size for Adaptec RAID controller disks on Linux (#2360)
* fix size reporting for LSI RAID controller disks on Linux
* add support for modern MegaRAID controllers on Linux (#2361)
* better identification for hard disk manufacturers (#2362)
* fix timeout for user enumeration in AD environment on Windows (#2201)
* fix a potential crash in software inventory on Windows
* cleanup whitespace for DMI and /proc values (#2391)
* fix multiple potential warnings on AIX (#2384)

test suite:
* fix test files list (#2394)
* fix network interface enumeration test on Solaris (#2346)

2.3.4  Fri, 29 Nov 2013
netdiscovery task:
* install missing sysobjectid database files
* add additional device types (phones, storage, etc...) support

netinventory task:
* add default OIDs for mappings undefined in SNMP model
* add IFALIAS support for interfaces
* allow SNMPv3 usage from fusioninventory-netinventory
* allow discovery without model from fusioninventory-netinventory

netinventory and netdiscovery tasks:
* fix infinite recursion in mac address canonicalisation, leading to memory
  exhaustion (#2336)
* fix SNMPv3 usage without optional parameters

linux:
* OpenVZ: disable the Virtuozzo module if libvirt is already plugged on OpenVZ

2.3.3  Wed, 06 Nov 2013
core
* clean up in the distribution, thanks Olivier Mengué <dolmen@cpan.org>

inventory task
* fix missing 32bits software on 64bits windows (#2212)

netinventory task
* fix SNMP reconnection when issuing VLAN-specific queries on some Cisco
  devices (#2178)
* use longer default SNMP timeout, and make them configurable
* handle MAC addresses with embedded VLAN identifier

netdiscovery task
* backport device model identification from sysobjectid value

2.3.2  Fri, 20 Sep 2013
core
* avoid some warning messages

netinventory task
* fix: properly pass the SNMP credentials
* better handling of mac addresses

2.3.1  Mon, 09 Sep 2013
inventory task
* report when running in a BSD Jail or a LXC system, thanks Igor Morozov
* better strategy for extracting USB printer serial on windows (#2213)
* force lowercase identifiers for USB and PCI lookups (#2122)

netdiscovery task
* fix invalid log message and spurious warnings during discovery (#2200)
* fix dictionary update handling, breaking fusioninventory-netdiscovery usage
* use sysobjectid for better identification
* more sysdescr-based identification rules
* fix loss of information when applying sysdescr-based identification rules
* normalize sysdescr better before dictionary lookup

netinventory task
* ensure device type is set in agent answer
* emits warnings when retrieved values are obviously wrong
* better handling of mac addresses
* large code cleanup and optimisation

wake-on-lan task
* fix wrong mac address pattern check

2.3.0  Thu, 01 Aug 2013
distribution:
* Deploy, Network and ESX tasks are now integrated in the distribution
* new fusioninventory-inventory executable, dedicated to inventory task

core:
* no more thread usage for HTTP interface
* no more token usage for HTTP interface, request source address is enough
* --httpd-trust option now allows multiple values
* --daemon and --no-fork options are now available from command-line only 

inventory task:
* add DNS_DOMAIN, BOOT_TIME and FQDN in OPERATINGSYSTEM section (#1197, #1347, #1358)
* collect public SSH keys
* collect local users and groups (#1570, #1870)
* collect license key for MS Office on Windows (#152)
* collect software from user profile on Windows(#1674)
* collect license key for Adobe suite, Panic's Transit, VMware Fusion on MacOs
* collect service package version on AIX (#1896)
* collect manufacturer information for memories (#1735)
* enforce consistent handling of USB and PCI identifiers (#1861)
* enforce consistent TYPE values for network interfaces (#1838)
* various UTF8 encoding fixes
* better stripping of bogus values
* Megaraid and 3ware RAID controller support on BSD (Egor Morozov)
* Megaraid controller support on Linux (Egor Morozov)
* support new OpenVZ configuration on Linux (Alessandro Iurlano)
* LPAR support on AIX (#950, #952)
* FreeBSD jail support on BSD (#736, #1555)
* better caching of system_profiler output (#2076)
* better Qemu support (#2106)
* better OpenVM support (#1774)
* better HyperV support (#1989, #1990, #1991)
* fix CPU inventory for non-i386 arches on Linux (#2172)
* better CPU inventory on Solaris (#1741, #1905, #2152)
* better memory inventory on Solaris (#1711, #1714, #1737)
* better slot inventory on Solaris (#1730)
* fix VXFS filesystem identification on Solaris (#1696)
* minimal support for busybox-specific command output (#1372)
* no more memconf usage on Solaris
* no more Mac::SysProfile usage on MacOS (#1646)

wake-on-lan task:
* ethernet and udp methods support on all systems

netdiscovery task:
* fix for regression introduced during code refactoring regarding printers
  identification

test suite:
* check the link for 404 error in the doc
* check for warnings generated during parsing
* check entries generated from parsing match expected inventory format
* normalize list before comparaison, for perl 5.18 hash randomisation

2.2.8  unreleased

AIX:
* minor fixes in LVM support

2.2.7  Tue, 13 Nov 2012

General:
* additional hack for LG screens (#1848)
* additional model for ACER screens hack (#1840)
* fix directory creation error handling with older File::Path versions (#1817)
* fix initial delay randomness (#1809)
* fix spurious null character in decoded strings (#1837)

Windows:
* fix missing bios release information on some machines (#1820, #1825)

2.2.6  Fri, 14 Sep 2012

Installation:
* fix installation with older MakeMaker versions
* do not generate html version of man pages
* minor fixes to dependencies list

General:
* better fix for size parsing with HP RAID controllers, avoiding warnings
  (#1807)
* implement model-specific hack for ACER screens serials (#1607)

Linux:
* fix parsing of newer ifconfig output, such as used on Fedora 17

2.2.5  Thu, 16 Aug 2012
General:
* Fix: deal with broken last_state file
* Fix: fix HP RAID size parsing
* Fix: virtual machine inventory with VMware desktop
* Fix: add /usr/local/{bin,sbin} in default $PATH

Windows:
* Fix: do not run dmidecode.exe on Win2003
* Fix: software inventory

Solaris:
* Fix: improve ZFS support
* Fix: get memory on solaris on Sun-Fire-V490

HP-UX:
* Fix: variou syntax issues (Drives, Uptime, etc)
* Fix: get network interfaces from netstat -nrv
* Fix: import VXFS 7 volumes

Test suite:
* Add an AIX slot test
* Deals properly with disabled thread support
* use the first available TCP port for network tests
* Enable SSL test even in IPv6 environment

2.2.4  Sun, 22 Jul 2012
General:
* Fix: non blocking flock() on log file

MacOSX:
* Fix: STORAGES uses MiB instead GB
* Fix: add Fiber Channel storage support
* Fix: Don't ignore second screen, if both have the same name

Linux:
* Fix: collect qemu -drive information (Alexander Evseev)

Windows:
* Fix: OCS Inventory registry support
* Fix: some time the softwares were not collected

Solaris:
* Fix: Collect ZFS drives properly

2.2.3  Mon, 25 Jun 2012
General:
* Fix battery voltage and capacity retrieval
* Add --timeout option

MacOSX:
* Fix global memory and CPU inventory
* Fix drives inventory

Linux:
* LXC support (Egor Morozov)

2.2.2  Wed, 30 May 2012
General:
* Improve README
* Fix Screen.pm syntax error
* Add a test_requires dependency on LWP::Protocol::https

Windows:
* fix command execution

7ff3260 fix warning if getDevicesFromUdev returns nothing

Linux:
* detect Virtuozzo VM (Alexander Evseev)

2.2.1  Thu, 24 May 2012
General:
* failure encoding with UTF8 content when using Fusion protocol (#1663)
* wrong CSS path (#1580)
* missing test suite dependency (#1575)
* improve CPU details (#1597)
* --no-category process support (#1630)
* replace IS64BIT software property with more general ARCH property (#1581)
* sync EDID parsing code with mandriva
* more EDID manufacturer codes

Windows:
* various encoding issues (#1550)
* network addresses collecting failure (#1549)
* inventory all the KB on Win Vista/7 (#1668, #197, #706)
* Store the XML file with the local codepage (#272)

Virtualization:
* wrong character in Xen machine ID (#1562)
* additional disk emulation types for qemu and kvm support (#1630)

BSD:
* multiple network addresses per interface support (#1565)

Solaris:
* no swap/memory informations for unknown hardware (#1594)
* solaris container zone bug (#1586)
* sparc T3-1 CPU support (#1583)
* solaris 8/9/10 swap bug (#1577)

Linux:
* bad name for physical volumes (#1587)
* missing volume group ID (#1585)
* wrong volume group ID (#1584)
* duplicate volume groups (#1582)
* fix Lsilogic raid controller support (#1630)
* get device name from udev file content, not file name (#1630)
* get more disk informations from smartctl (#1630)
* sparc arch mismatch (#1573)
* read EDID data directly from /sys when available

2.2.0  Sat, 07 Apr 2012

Major changes:
* large speed improvement: up to 150% for a local inventory
* better multitasking support:
 - the agent use fork() to run task if needed, instead of running a new process
   from scratch, avoiding the need to use a temporary file to transmit
   parameters, with related security risks
 - the agent only forks to run a tasks when running as a server, making tracing
   and debugging easier
 - the agent only use one thread for the web interface
* better SSL support:
  - IO::Socket::SSL perl module is now required for certificate validation
  - Crypt::SSLeay perl module still allow HTTPS support, but without
    certificate validation, and the connection will be aborted unless
    certificate checking is disabled
  - validation is now performed by SSL library, and honours alternative subject
    names, and other subtilities
* large cleanup of values returned from inventory:
  - unknown values are filtered out
  - strings are trimmed for trailing spaces
  - irrelevant values, such as windows internal USB serial number, or
    controllers type and manufacturer on AIX and HPUX, are filtered out
* installation procedure automatically setup configuration and data directories
  locations in executable, there is no need to manually configure them anymore
* removal of useless features:
  - support for OCS account info have been dropped, the agent doesn't store
    arbitrary informations locally anymore
  - support for OCS network discovery and software deployment features within
    inventory task have been removed, we have better alternatives
  - useless Ping task has been dropped
* cleanup of available options:
  - deprecated --nosoft and --nosoftware options have been removed
  - --devlib, --share-dir, --basevardir and --realm options have been
    deprecated, as their values are now computed automatically at installation
  - --daemon-no-fork option has been deprecated, and replaced by --daemon
    --no-fork options
  - --info option has been deprecated, as it had no effect
  - --rpc-trust-localhost option has been deprecated, in favor of a more
    generic --http-trust option, allowing an arbitrary IP adresse or range
  - --debug option can be specified multiple times, for additional verbosity
  - --no-inventory, --no-ocsdeploy, --no-snmpquery, --no-netdiscovery options
    have been deprecated in favor of a generic --no-task option
  - --no-software, --no-printer options have been deprecated in favor of a
    generic --no-category option, and 'environment' value support has been added
* new --config option allows to select configuration backend, allowing to use
  file configuration if needed under windows, or to ignore any external
  configuration
* fusioninventory-agent-config executable has been dropped, in favor of better
  documentation
* documentation has been reviewed for consistency in various places where it
  appears (--help output, man page, configuration file)
* XML::TreePP perl module is now used instead of XML::Simple, reducing native
  perl modules dependencies
* OcsDeploy task is now deprecated. Please continue to use the 2.1.x agent is
  you need it.

Minor changes:
* Add the HARDWARE/CHASSIS_TYPE information
* Linux: report all IP addresses used by each interfaces (#854)
* HPUX: don't report unoccupied memory slots
* AIX: add LVM support

2.1.14  Wed, 22 Feb 2012

LINUX
 ✔ Detected OS is &quot;RedHat&quot; for CentOS servers if lsb_release not available
       commit:d3a252
     http://forge.fusioninventory.org/issues/1193
   thanks: Jonathan Clarke

MACOSX
 ✔ no-software option doesn't work as advertised
       commit:18dfaf
     http://forge.fusioninventory.org/issues/1476
   thanks: Ronan Mejecaze
 ✔ syntax error in Video module
   thanks: Walid Nouh

WINDOWS
 ✔ No 2007 Microsoft Office system into XML
       commit:39f3c7
     http://forge.fusioninventory.org/issues/1065
   thanks: Walid Nouh, Xavier Caillaud, jerome slayer
 ✔ On Windows Vista Office 2007 is not correctly gathered
       commit:39f3c7
     http://forge.fusioninventory.org/issues/1425
   thanks: Walid Nouh, Xavier Caillaud
 ✔ VM System incorrect
       commit:259996
     http://forge.fusioninventory.org/issues/1436
   thanks: Mario Gzuk
 ✔ Inventory Internet Explorer when it's not present in Add/remove programs
       commit:39f3c7
     http://forge.fusioninventory.org/issues/1441
   thanks: Walid Nouh, Xavier Caillaud, jerome slayer

2.1.13  Wed, 14 Dec 2011

TEST-SUITE
 ✔ 2.1.10 Test suite fails
       commit:8035bd
     http://forge.fusioninventory.org/issues/1161
   thanks: Remi Collet

WINDOWS
 ✔ VM System incorrect
       commit:b59a09
     http://forge.fusioninventory.org/issues/1391
   thanks: Mario Gzuk
 ✔ Fix the CPU detection on Windows
   thanks: Anthony Facchin

2.1.12  Wed, 23 Nov 2011

GENERIC
 ✔ Memory: Add ECC / no ECC information
       commit:b01f6f
     http://forge.fusioninventory.org/issues/1234
   thanks: Walid Nouh, jerome slayer

LINUX
 ✔ Duplication virtualmachine name on the same machine
       commit:982c08
     http://forge.fusioninventory.org/issues/1140
   thanks: DuyLong LE

WINDOWS
 ✔ [windows] Virtual network adapter reported as physical - and breaks all computer linking in GLPI
       commit:5b4a1e
     http://forge.fusioninventory.org/issues/1166
   thanks: David Durieux, V'yacheslav Stetskevych
 ✔ use $ENV{COMPUTERNAME} is HARDWARE/NAME is empty
       commit:44c07b
     http://forge.fusioninventory.org/issues/1330
 ✔ 2.1.11 - Total amount of total RAM memory incorrectly detected on some Windows 7 computers
       commit:f93d24
     http://forge.fusioninventory.org/issues/1334
   thanks: Tomás Abad, Andre Silva
 ✔ Dual screen configuration ignored on Windows Vista/7
       commit:6cbf8b
     http://forge.fusioninventory.org/issues/1351

SOLARIS
 ✔ Fix some warnings for spurious stat() calls
 ✔ Fix hostname being forced to 'SOLARIS'

2.1.11  Mon, 12 Sep 2011

WINDOWS
 ✔ Fix the BIOS information collect on Win2003 <= system
       commit:8c2427da5, commit: fe345815
     http://forge.fusioninventory.org/issues/1156

2.1.10  Tue, 06 Sep 2011

 ✔ Model and SSN don't correct
       commit:7bb7b1
     http://forge.fusioninventory.org/issues/1061
   thanks: DuyLong LE

INTERNAL
 ✔ Report Linux distribution version number
       commit:c7e958
     http://forge.fusioninventory.org/issues/1066
   thanks: Guillaume Rousse, Jonathan Clarke
 ✔ incorrect FSF postal address
       commit:190a04
     http://forge.fusioninventory.org/issues/965
   thanks: Remi Collet
 ✔ Incorrect test for LWP version
       commit:ebd880
     http://forge.fusioninventory.org/issues/994
   thanks: Guillaume Rousse

LINUX
 ✔ Use of uninitialized value in pattern match on CPU.pm
       commit:ba5ee3
     http://forge.fusioninventory.org/issues/1068
   thanks: DuyLong LE

SOLARIS
 ✔ Can't get network interface
       commit:c54339
     http://forge.fusioninventory.org/issues/1056
   thanks: DuyLong LE
 ✔ Agent segfault on Opensolaris when trying to send an inventory using https
       commit:fcfb8a
     http://forge.fusioninventory.org/issues/332
   thanks: Walid Nouh

TEST-SUITE
 ✔ FusionInventory::Agent::RPC build fails is no JSON
       commit:914cb5
     http://forge.fusioninventory.org/issues/955
 ✔ New build-deps: Test::Exception, HTTP::Server::Simple::CGI,
   HTTP::Server::Simple::Authen

WINDOWS
 ✔ use BIOS/MMODEL instead of BIOS/SMODEL on Win32 &lt;= 2003
       commit:0b5ce8
     http://forge.fusioninventory.org/issues/1139
 ✔ keyboard with same serial added twice in connected items
       commit:ce7244
     http://forge.fusioninventory.org/issues/788
   thanks: David Durieux, Fabrice Flore-Thebault, jerome slayer

2.1.9  Tue, 14 Jun 2011

HPUX
 ✔ HARDWARE/MEMORY missing on HPUX PA-RISC 11.11
       commit:262392
     http://forge.fusioninventory.org/issues/737
   thanks: Amir Pakdel, yanick durant
 ✔ machinfo on HP-UX 11.31 ia64 (tukwila chip) reports differently - breaks Fusioninventory CPU reporting
       commit:0a9037
     http://forge.fusioninventory.org/issues/757
   thanks: Earl Flack
 ✔ HP-UX: typo in CPU name
       commit:050ead
     http://forge.fusioninventory.org/issues/760
 ✔ Serial and bios informations are missing on 11.31
       commit:2e5608
     http://forge.fusioninventory.org/issues/761
   thanks: yanick durant
 ✔ HPUX Superdome CPU not correctly identified
       commit:0a9037
     http://forge.fusioninventory.org/issues/767
   thanks: yanick durant
 ✔ HPUX: Error in execution of fsdb in Drive.pm
       commit:9d1045
     http://forge.fusioninventory.org/issues/773
   thanks: yanick durant
 ✔ should we use fsdb on HP-UX to get the FS creation date?
       commit:39cd5a commit:ecd475
     http://forge.fusioninventory.org/issues/778
   thanks: Guillaume Rousse, Amir Pakdel

INTERNAL
 ✔ Change message &quot;Force run now&quot;
       commit:03c651
     http://forge.fusioninventory.org/issues/535
   thanks: Walid Nouh
 ✔ RPC: do not regenerate a token if RPC request come from local loopback
       commit:96915c
     http://forge.fusioninventory.org/issues/730
 ✔ regression if --rpc-trust-localhost --scan-homedirs have no argument
       commit:d9a436
     http://forge.fusioninventory.org/issues/741
 ✔ Agent should follow HTTP err 301 redirection
       commit:7f61f3
     http://forge.fusioninventory.org/issues/776
 ✔ on linux, type of computer not reported
       commit:d01560
     http://forge.fusioninventory.org/issues/791
   thanks: Fabrice Flore-Thebault
 ✔ use full name key for LVM inventory
       commit:75bb13
     http://forge.fusioninventory.org/issues/863
 ✔ missing RPC port in the agent log
       commit:504d53
     http://forge.fusioninventory.org/issues/870
 ✔ LWP 6 support
       commit:5953dc
     http://forge.fusioninventory.org/issues/878
 ✔ add Hyper-V virtual machine detection
       commit:9152c7
     http://forge.fusioninventory.org/issues/910
 ✔ set TAG in local mode
       commit:000fcb
     http://forge.fusioninventory.org/issues/946

LINUX
 ✔ rhn inventory
       commit:e13d10
     http://forge.fusioninventory.org/issues/713
   thanks: Remi Collet
 ✔ HP DL servers - Harddisk
       commit:caa030
     http://forge.fusioninventory.org/issues/768
   thanks: Amir Pakdel, Walery Wysotsky
 ✔ Add Linux LVM support
       commit:5f861e commit:0a3aa5 commit:9e6d79
     http://forge.fusioninventory.org/issues/802
   thanks: Sébastien Dagnicourt
 ✔ Vmware desktop virtual machines not detected on Linux
       commit:88b545
     http://forge.fusioninventory.org/issues/808
   thanks: Walid Nouh
 ✔ With newer gentoolkit software query is failing
       commit:a07afd
     http://forge.fusioninventory.org/issues/852
   thanks: Guillaume Rousse, İbrahim Özgür Erişen

MACOSX
 ✔ Software installed on parallel virtual guest listed in physical host inventory
       commit:69ffe5
     http://forge.fusioninventory.org/issues/716
   thanks: Guillaume Rousse
 ✔ Error during Vmware Fusion inventort on Mac OS X
       commit:3eecb1
     http://forge.fusioninventory.org/issues/762
   thanks: Walid Nouh
 ✔ Error running Parallels Desktop on Mac OS X
       commit:4ec184
     http://forge.fusioninventory.org/issues/763
   thanks: Walid Nouh
 ✔ Improve Parallels Desktop support
       commit:823aec
     http://forge.fusioninventory.org/issues/769
   thanks: Walid Nouh
 ✔ Fix MONITORS/VIDEOS detection on MacOSX
       commit:974fd8
     http://forge.fusioninventory.org/issues/936
   thanks: Loic Lhermitte

SOLARIS
 ✔ SolarisZones module ignored in fusioninventory-agent  2.1.8_rc1
       commit:9368ea
     http://forge.fusioninventory.org/issues/787
   thanks: Christian Lete

TEST-SUITE
 ✔ FusionInventory::Agent::RPC build fails is no JSON
       commit:782834
     http://forge.fusioninventory.org/issues/955
   thanks: Remi Collet

WINDOWS
 ✔ The agent still conflicts with Oracle Perl
       commit:a63eba commit:1d18c6 commit:4afe98
     http://forge.fusioninventory.org/issues/889
   thanks: GuruNot
 ✔ GLPI plugin imports duplicate entries with software from Windows Agent
       commit:4553aa
     http://forge.fusioninventory.org/issues/927
   thanks: David Durieux, Peter Luk

2.1.8  Fri, 25 Mar 2011
       * Show a larger part of the string returned by the server in case of
         error
       * Win32: Decrease the severity of a winkey read error
       * add FusionInventory::Agent::Tools::Win32::getValueFromRegistry()
         unused for now.
       * Win32: getWmiProperties() depends on Win32::OLE, load it first.
       * Win32/AntiVirus: avoid pointless OLE error
       * Add BNQ screen manufacturer support
         https://bugs.launchpad.net/bugs/736095
       * scan-homedirs and rpc-trust-localhost don't works in command line
         http://forge.fusioninventory.org/issues/636
       * Update the Inventory XML documentation
       * HPUX: use NAME instead of TYPE to set the CPU name (Yanick Durant)
         http://forum.fusioninventory.org/viewtopic.php?id=278
       * Document NETWORKS/{BSSID,SSID}
       * Add VIRTUALMACHINES/COMMENT and OWNER keys
       * VirtualBox: major rewrite of the mostly broken Vbox mod
       * add support for the task called «Deploy»
       * add support for the task called «ESX»

2.1.8_rc1  Sat, 05 Mar 2011
       * Linux, correctly read the number of core from /proc/cpuinfo
       * MacOSX: KB unit in missing in Mac OS X Drive.pm
         http://forge.fusioninventory.org/issues/521
       * FusionInventory::Agent::Task::Base, correctly preinitialize
         'myData' by loading the expected file.
       * A yum plugin in contrib to trigger FusionInventory after the updates
         (Remi COLLET)
       * SSL certificat check: Accept wild card in the hostname
         http://forge.fusioninventory.org/issues/542
       * Linux/CPU: avoid a warning is $serial is undef, thanks Raúl who
         pointed the issue
       * SSL: try to use the default CA if now --ca-cert-* is avalaible,
         thanks Kevin Cousin who suggested the idea
       * Inventory must be run after the deployment (OcsDeploy)
       * Linux: fix Knoppix version format
       * fix month number in process list start date
       * Avoid failure if the agent can't load the .dump file, see: #542
         thanks Kevin Cousin for the report
       * Decrease the severity of the error message when a optional module
         is missing
       * MacOSX/Drives: do not ignore the / filesystem
       * MacOSX/USB: no empty devices
       * Win32/Software: avoid a warning
       * Networks: improve the error message if deflat fails, thanks Walid Nouh
         for the suggestion
       * HP-UX/CPU: add a test-suite
       * HP-UX/CPU: identify the CPU on HP RX4640, (Yanick Durant)
       * HP-UX/Memory: hack to preinitialize the memory map (Yanick Durant)
       * t/README.t: only run the test if TEST_AUTHOR=1
       * Makefile.PL: add XML::TreePP in test_requires
       * RPM: feed the PUBLISHER field (Stéphane Urbanovski)
       * MacoSX/Software: Avoid breakage if .app's plist file is corrupted
       * Solaris: SUNWCzone is optionnal, use zonename instead (Raphaël SurcouF)
       * Inventory: look for backend module in @INC+$archname.'/auto' too, thanks
         to Philip Grodzki who helped to point out the issue.
       * Inventory: improve POD documentation
       * Inventory: Display a debug message if the STORAGES/INTERFACE is invalid
       * backport from master FusionInventory::Agent::Tools::getCanonicalManufacturer()
       * Linux/CPU rename AuthenticAMD to AMD
       * injector: --help show usage menu
       * injector: minor clean up in the --help menu
       * Add 2011 in the copyright years
       * Win32: set HARDWARE/DESCRIPTION
       * Tools: move the code used to find .pm in @INC in getFusionInventoryLibdir()
       * Linux/Network: set the IPv6 network address (Ludovic Hutin)
       * HP-UX/CPU: improve the machinfo parsing, thanks Amir Pakdel for
         the machinfo output on HP-UX 11.23
       * AIX: collect EMC/Clariion LUN storage (Sébastien Dagnicourt)
       * Win32: fix NETWORKS/VIRTUALDEV on OS prior Vista (David DURIEUX)
       * Internal: add and use getFusionInventoryLibdir(), getFusionInventoryTaskList()
       * Linux/Storage: collect WWN from SAS / SATA disk using hdparm
       * Win32/Networks: avoid duplicated IP in HARDWARE/IPADDR, thanks Fernando Lagrange
         for the bug report
         http://forge.fusioninventory.org/users/603
       * Gentoo: fix the regex to collect packages,
         https://bugs.launchpad.net/ocsinventory-contact/+bug/720626
       * Linux: dhcp-leases file now always detected, mostly on Redhat hosts (Bernhard Denner)
         https://bugs.launchpad.net/ocsinventory-unix-agent/+bug/720628
       * Win32: retrieve Antivirus information from //./root/SecurityCenter2 on Win7
         http://forge.fusioninventory.org/issues/583
       * Add VIRTUALMACHINES/MAC key
       * Win32: software, do not ignore software with very few information
       * Win32: better detection of product key on 64bit system, thanks Ionut Bujor for
         the feedbacks http://forge.fusioninventory.org/issues/582
       * Drop the Ping task. Was not used.

2.1.7  Sun, 12 Dec 2010
       * RPC: Better message if access is denied
       * add --no-p2p parameter
         http://forge.fusioninventory.org/issues/507
       * initialize $config->{'rpc-trust-localhost'} to avoid a warning
         with --help
       * injector: fix the --help, there is no default server
       * fusioninventory-agent, do not load lib with use to be able to change the @INC first.
         this is needed for AIX 6.1 prebuilt.
       * AIX/CPU: use addCPU() and collect the CORE/THREAD
       * AIX/hardware: fix a typo sysplanar0 instead of sysplana00
       * AIX/storage: reinitialise temp var correctly
       * AIX/storage: store the harddrive serial number
       * AIX/storage: use addStroage
       * AIX/user: use addUser()
       * Big Oops, CPUID != CPU serial number, see:
         http://en.wikipedia.org/wiki/CPUID
         Revert commit a1c4c665, which is broken because of that:
         Win32: try to identify dual core CPU even if Windows thinks it two physical CPU
       * Linux/resolution: fix the parsing for Nouveau, than Remi Collet
       * Linux: improve the Harddrive detection if lshal is not avalaible,
         thanks Bernhard DENNER for the initial patch
         https://bugs.launchpad.net/bugs/682689
       * No warning if ddcprobe is not avalaible

2.1.7_beta1  Fri, 19 Nov 2010
       * replace Cwd::abs_path with File::Spec->rel2abs
         abs_path fails if the directory doesn't exist yet. This was breaking
         --basevardir on UNIX system.
         The problem was fixed on Win32 with the 2.1.5 release. See commit
          6f376013c8584145a8f824632f1292b3212bd3ca
          a1f32c62145c46fa176165bba1695420505290b7
       * Fix regression: Do not empty log file if logfile-maxsize is undef
         or 0, thanks Remi Collet
         http://forge.fusioninventory.org/issues/414
       * Linux/PPC: Fix various warnings in CPU.pm
       * Linux/PPC: ignore some wrong warning
       * Linux: CPUS/TYPE renamed to CPUS/NAME
       * POD: add doc for BIOS/{S,B}MANUFACTURER
       * POD: fix a syntax error in fusioninventory-agent
       * use the default basevardir.
       * POD: clarify, we ignore virtual filesystem like /proc in <DRIVES />
       * Solaris: move showrev output example in ressources/solaris
       * Solaris: ignore Zone on Solaris < 5.10
       * Solaris: collect the UUID on x86
         http://forge.fusioninventory.org/issues/428
       * OpenSolaris: collect firmware information even if showrev is not installed
       * OpenSolaris: support GNU df to collect partition
       * Solaris: identify zfs filesystem and collect serial number (UUID)
       * Solaris/Drives.pm code clean up
       * Solaris/Storages.pm Don't set revision to 'Serial' if revision is empty
       * MacOSX: No serial & uudi gathered on Mac OS X 10.5 running VirtualBox
         fail back on ioreg when system_profiler do not give the wanted information
         http://forge.fusioninventory.org/issues/431
       * import a dmidecode output on OpenBSD 4.5
       * BSD/Storage: Avoid warning if model is unknown
       * BSD/CPU: failback on CPU Family if Version is empty in dmidecode, closes: #439
         http://forge.fusioninventory.org/issues/439
       * Linux, distro detection: ensure /etc/issue is parsed last if lsb_release is
         missing. This way /etc/debian_version is used on Debian
       * Linux: correctly parse /etc/resolv.conf to identify the domain
       * Linux: don't save 2 time the same domain
       * Linux/ARM: collect the Hardware information from /proc/cpuinfo
       * BSD: use sysctl -n hw.model to get the CPU name and frequency
       * MacOSX: Mem.pm, convert hex string to ASCII when needed, thanks Sylvain la Gravière
         for the bug report
         http://forge.fusioninventory.org/issues/440
       * Screen.pm: Add support for 3 new manufacturer. Backport Adam Buchbinder changes on
         1.1.x branch
       * Linux/ARM: collect the Hardware information from /proc/cpuinfo
       * Windows: Disable dmidecode.exe on Win2003
         http://forge.fusioninventory.org/issues/379
       * MacOSX/Drives: don't ignore autofs filesystem, thanks François Legastelois
         for the bug report
         http://forge.fusioninventory.org/issues/446
       * BSD: use mount to identify the filesystem type, this shoud fix bug #450
         http://forge.fusioninventory.org/issues/450
       * Win32: try to identify dual core CPU even if Windows thinks it two physical CPU
       * Win32: no need to change %PATH% anymore
         http://forge.fusioninventory.org/issues/151
       * fusioninventory-agent-config, better question for server address
       * BIOS: clean up
          - do not mix motherboard and system information anymore
          - do not use CPU information do create fake serial anymore
          - retrieve the SKU number
       * MacOSX: use ioreg to get the machine serial number
         http://forge.fusioninventory.org/issues/442
       * Logger: ensure the logger is load just one time
       * add fusioninventory-injector in the distribution
       * Linux: fix: Agent don't give video ram size and video resolution,
         Eric FREYENS for the fix suggestion.
	 We now use ddcprobe or Xorg to get the resolution of the main screen.
	 This fix will be improved in the futur and should be seen as experimental
	 http://forge.fusioninventory.org/issues/316
       * Win32: ignore garbage character in the XML, and filter SOFTWARES/VERSION
         to deal with some very strange case, thanks Mario GZUK for the bug report
         and RDP access
         http://forge.fusioninventory.org/issues/415
       * MacOSX: ignore a warning in Drives.pm
         http://forge.fusioninventory.org/issues/441
       * MacOSX: retrieve partition UUID on MacOSX 10.4
       * Linux, use ddcprobe and Xorg log file to detect the X resolution, turn
         off the generic Screen.pm module
       * Solaris/Networks: no ugly hack to detect the Perl bin path to launch kstat
         http://forge.fusioninventory.org/issues/497
       * Solaris/Networks: no useless grep call
       * HTML: add the deviceid in the HTML file
       * Linux/CPU: workaround if cpuinfo has broken "physical id"
         http://forge.fusioninventory.org/issues/505
       * BSD: add support for DragonFlyBSD! :D
       * VirtualBox: Don't use process list (ps) to find running process
       * MacOSX/VirtualBox: looks for user dir in /Users on MacOSX
       * Linux/Storage: ignore fdisk -l error message
         http://forge.fusioninventory.org/issues/503
       * Linux/Storage: avoid error message with fdisk -s on invalid devices
       * RPC: Allow access to / from everywhere

2.1.6    Tue, 05 Oct 2010
       * Ensure the RPC serivce URL printed in the log message targets
         http://127.0.0.1::62354 with the default settings
       * Restore the Storage even if the target is not a server.
         Enable --tag and keep the DeviceID
       * fix 2.1.5 regression, correctly initialise $basevardir default value
       * POD, explain the registry is used on Windows, thanks Stéphane URBANOVSKI
       * Add support for MontaVista Linux, thanks Luka KODRIC
       * BSD: Fix a syntax error in Domain
       * BSD: Some adjustement for Debian GNU/kFreeBSD
       * BSD: avoid warning if the lease file can't be parsed
       * BSD: Drives.pm hide, df messages on STDERR
       * BSD: convert the IP mask from hex to dec
       * Win32: workaround to add timeout for HTTPS on Windows
       * OpenBSD: Do not fails if dmesg is in /sbin/dmesg instead of /bin/dmesg
       * AIX: ignore /proc filesystem like on Linux
         http://forge.fusioninventory.org/issues/397
       * Logger: avoid breakage if log file is > 5MB, thanks Benoit Machiavello
         http://forge.fusioninventory.org/issues/406
       * AIX: Error running AIX::Mem module on AIX 6.1, thanks Luka KODRIC
         http://forge.fusioninventory.org/issues/399
       * AIX: Erroor in harddrive module on AIX 6.1, thanks Luka KODRIC
         http://forge.fusioninventory.org/issues/398

2.1.5    Wed, 15 Sep 2010
       * Win32: Do not fail if the log file doesn't exist yet, thanks Igor
       * Win32: Correclty launch the sub Perl process, thanks Igor
       * Fix: Some NETWORKS/VIRTUALDEV were set to yes instead of 1
         http://forge.fusioninventory.org/issues/352

2.1.4    Wed, 15 Sep 2010
       * Save the realm if we found it by ourself. With this changes
         we avoid useless request with the wrong realm from sub module
       * Add Win32::OLE and Win32::TieRegistry dependency on Win32
       * MacOSX: fix the memory size inventory, thanks Eric Freyens for the
         bug report
       * Do not use dmidecode if it fails to give valuable information,
         use WMI instead on Win32
       * ensure basevardir and share-dir are canonical pathname
       * POD doc, add this sentence:
         "The command line parameters overwrite the configuration file."
       * Fix several issues in agent.cfg file (Walid NOUH)
       * Corrected a lot of english sentences (Benoit MORTIER)
       * Win32, avoid warning if the CPU has no name
         http://forge.fusioninventory.org/issues/349
       * if envvar REALLIB is defined, we use it to overright @INC, this in order
         to relocate the perl tree easily
       * Pass @INC content to the subprocess
       * Vmsystem, ignore some normal warning (missing /proc on some OSes)
         http://forge.fusioninventory.org/issues/326
       * fix Solaris Zone detection and add a test and some Solaris release file
         http://forge.fusioninventory.org/issues/323

2.1.3    Wed, 01 Sep 2010
       * Linux: Avoid error on system with no /proc/bus/input/devices
       * agent.cfg, add more server= parameter example
       * --server remove spaces at the begin and end of the server parameter
       * Networks.pm: fix is_success, load use HTTP::Status;
       * fix t/xml-query-inventory.t to not fail on non i486-linux-gnu-thread-multi
         arch
       * fix t/app.t on Windows

2.1.2    Mon, 23 Aug 2010 
       * set a default SNMP version to really avoid warnings
       * Add ./t/README.t to check is README{,.html} files are present
       * Really set a default SNMP version, and bails out if an invalid version
         is used
       * Fix compatibility with snmpquery and netdiscovery plugins
       * Fix some warnings in Screen.pm
       * Ensure Xen PVH host identification
       * Linux: fix DNS domain detection
       * t/modules.t: do not fail on Syslog on Windows

2.1.1    Wed, 18 Aug 2010
       * Turn daemon mode off in the base configuration file
       * Fix some POD warnings
       * POD: document the common server URL for OCS and FusInv for GLPI
       * Add resources/hal/rh4-kvm and test it with t/drives.t
         adjustment needed
       * RH4, avoid false STORAGES (partition instead of disk)
       * Proc::Daemon close all the file descriptors including the file logger.
         We reopen it if needed
       * Print rpc-trust-localhost value in --help
       * RPC, cosmetic adjustement in debug message format
         http://forge.fusioninventory.org/issues/290
       * Linux/Storage: avoid breakaging if there is no disk in HAL
       * FusionInventory::Agent::SNMP clean up to avoid warning at run time
         (Guillaume Rousse)
       * Linux: parseLshal(): do not return empty hash ref anymore, thanks
         Guillaume Garson
       * Fix bypassing of virtualised system detection
       * Fix error message for non-present zoneadmin command
       * Do not call getCapacity() in parseUdev(), thanks Michał Panasiewicz

2.1      Sun, 15 Aug 2010
       * cleanup Makefile.PL
       * enhance documentation with optional and mandatory dependencies
       * drop README file lost in the middle of perl modules
       * Fix some warnings on Windows
       * agent.cfg, fix a syntax error
       * turns most call to carp() and die() into logger usage
       * Linux: storage, hdparm gives more reliable serial number
       * XML, storage, rename STORAGES/SERIAL to STORAGES/SERIALNUMBER, thanks
         azman
       * Win32: uses WMI to collect Environment vars to get correct UTF-8 data
       * Win32: ensure the hostname is in UTF-8
       * Win32: fix: load Win32::OLE in UTF-8
       * Win32: get the hostname from WMI in unicode
       * Win32: use the standard codepage to access the registry
       * Big thank you to Denis Linvinus who gave RDP access to a Russian
         Windows
       * Win32: don't put BIOS ROM in STORAGES, thanks EmpereurZorg
       * Win32: add Modem.pm
       * Fix: Virtuozzo containers memory unit (Jan JUNGMANN)
       * Win32: Ignore network it the network interface has no PNPDeviceID
         http://comments.gmane.org/gmane.comp.monitoring.fusion-inventory.devel/34
       * HP-UX: fix --no-software support
       * Win32: retrieve the Windows key on Windows 64 bit,
         http://forge.fusioninventory.org/issues/267
       * Win32: Push the default monitor in <MONITORS />
         http://forge.fusioninventory.org/issues/252
         http://forge.fusioninventory.org/issues/269
       * Win32: Use the GUID as software name is NAME is empty
       * Solaris: Various fixes (CPU, memory, storage)
       * Fix HTTP auth on non HTTPS server, _BIG_ thinks to Mario Gzuk and
         Michael Kolowicz
       * Linux: Avoid a warning if /sys/class/net/%INTERFACE%/device/uevent doesn't
         exist
       * Basic HTTP Auth: if the realm parameter is missing, the agent reuse the one
         from the server
       * Initialize PROLOG_FREQ to 1h for every target
       * Don't fail is RPC module can't be loaded. threads and HTTP::Daemon are optional
         and it may be normal.
       * web interface: do not open a new windows when an inventory is forced

2.1_rc3  Sun, 25 Jul 2010
       * MacOSX: fix if diskutils gives size in GB/MB instead of GiB/MiB
       * MacOSX: ignore printer if name start with:
         The printers list is empty. To add printers (fixes: #169)
       * MacOSX, BSD, Linux: unify domain name computation to use host name
         as primary information source, and avoid using windows-specific
         'workgroup' as default value
       * Add resources/cpuinfo/linux-686-samsung-nc10-1
       * Fix, restore ability to specify server as an host name rather
         than a full URL
       * Fix, restore --noinventory support, print a warning saying
         --no-inventory should be used instead
       * Fix: Linux, PC: detect CPU configuration of machine with one
         CPU with one core and 2 threads (Samsung NC10)
       * Fix: Linux, PC: support /proc/cpuinfo with no "physical id:"
         thanks Sébastien Prud'homme
       * Fix: Linux, PC: get the number of core from dmidecode if
         avaible
       * Win32 and Linux, PC: get the CPU frequency from the CPU name, if
         possible. That's the most reliable way to get the
         information since 'Max Speed' in dmidecode is most of the
         time on crack and /proc/cpuinfo is not reliable because of
         the frequency scaling
       * Linux, PC: the cpu detection can work if only dmidecode is
         here
       * remove --perl-bin-dir-in-path, turns it on only in the Windows
         service
       * test scripts: fix is_deeply() argument order
       * RPC: print "now" as next contact date instead of 1/1970
       * Inventory, correctly store user list
       * Fix the noDuplicated to avoid duplicated XML sections in inventory
       * Import the new FusionInventory logo
       * Fix, HP-UX errors when listing drives
         http://forge.fusioninventory.org/issues/188 (Amir PAKDEL)
       * Win32, network: Filter interfaces with no IP, IPv6 and MAC
       * Win32, printer: restore the DRIVER field
       * Win32, drive: restore the SIZE field
       * Win32, get the memories from WMI only if dmidecode is missing
       * Dmidecode, drop the unit from the memory speed like the Win32 OCS
         agent do
       * Win32, set the BIOS/TYPE field
       * Win32, storage: clean up. Reduce the number of hdparm call.
       * Win32, set USBDEVICES/NAME
       * RPC: rewrite the thread management to reduce the memory consumption
         on Windows
       * Win32: Users, we need to use Get() to retrieve Win32::OLE::Variant
         object content
       * Add more test scripts: xml-query-inventory.t,
         xml-query-simplemessage.t, t/xml-response.t
       * Fix a typo scanhomedirs → scan-homedirs
       * HP-UX: add HP-UX VM support (Sébastien PRUD'HOMME)
       * Linux, PC: CPU fixes for VMware ESX, thanks Benoit Machiavello
       * Linux: set correctly HARDWARE/WORKGROUP with the domain name,
         thanks Benoit Machiavello
       * HARDWARE/USERID: don't put more than one time in row the same user
       * Makefile.PL: Turns off the post-installation script. The hack is broken.
       * Solaris: imporove CPU, Mem, Slots (Lucas MASSE)
       * Solaris: imporove Bios, Controllers, Domains, Drives, IPv4, Memory,
         Networks, Packages, Storages and Users (Jérome LEBAS)
       * Add comment and default settings in agent.cfg (Walid NOUH)
       * UUID, improve the code to support old dmidecode
       * VirtualBox, improve Virtualbox detection, closes: #230
       * MacOSX: Set the UUID
       * MacOSX: rewrite storage.pm without Mac::SysProfile
       * MacOSX: collecte IPv6 address
       * Win32: set the NT Domain for the WORKGROUP if avalaible like OCS agent
       * MacOSX: Collect Firewire disk

2.1_rc2  Thu, 01 Jul 2010
       * MANIFEST.SKIP, we need the resources files for the test suite
       * Linux: set back DRIVES/FREE
       * Linux: CONTROLLERS/NAME drop the trailing whitespace
       * addEntry(), do not ignore $noDuplicated parameter
       * remplace --html-dir by --share-dir
       * use pciid to know the pci device name and manufacturer, thanks
         Sébastien Prud'homme
       * load dmidecode from $PATH
       * fix VirtualBox VM detection (David DURIEUX)
       * Makefile.PL, UNIVERSAL::require is a dependency now
       * Document --logger
       * Fix --logger: to not overwrite other loggers if --logfile is on
       * POD, add for PROCESSES inventory
       * tools/ fixes for Solaris shell
       * Add CONTROLLERS/REV
       * Fix: Linux/i386: retrieve the number of CORE correctly
       * Fix: Vmsystem, don't load 'version', we don't use it anymore
       * Fix: Linux/ARM: drop a debug print
       * Fix: Linux Storages, fix fdisk parsing
       * MacOSX: use addCPU to collect cpu information
       * MacOSX: the number of core of the CPU
       * MacOSX: Collect all the net devices and set VIRTUALDEV=1/0
       * MacOSX: collect all the drives (fixes: #119)
       * MacOSX: DRIVES, swap VOLUMN and TYPE fields
       * Makefile.PL, no parameter for install_share, thanks Act from GLPI
         forum (http://www.glpi-project.org/forum/viewtopic.php?pid=107979#p107979)
       * Network.pm: drop the dependency on Net::SSLeay and IO::Socket::SSL,
         we don't need them (!)
         Fix: HTTP proxy with HTTPS
       * Network.pm: drop the dependency on Net::SSLeay and IO::Socket::SSL,
         we don't need them (!)
         Fix: HTTP proxy with HTTPS
       * Makefile.PL, no parameter for install_share, thanks Act from GLPI
         forum (http://www.glpi-project.org/forum/viewtopic.php?pid=107979#p107979)
       * Fix: don't ignore 0 values in the XML
       * MacOSX: don't use Mac::SysProfile to get memory info
       * Linux/i386: Igore empty CPU socket, thanks Sébastien Prud'homme,
         bug: #177
       * MacOSX: USB devices inventory
       * LInux/PC: Fix the core detection on multiCPU system
       * in tools:build-perl-tree.sh  download-perl-dependencies.sh
         merge-fusinv-with-perl-tree.sh and README are now in a new git
         repository 'agent-tools.git'
       * Linux + Lsilogic, avoid a warning if smartctl is installed
       * Linux Storage, parseUdev() use SERIALNUMBER _SHORT if avalaible

2.1_rc1 Sat, 26 Jun 2010
       * Add Windows support for 2000/XP/2003/Vista/2008/Seven
       * Windows: Add new values for SOFTWARES key
       * Add Windows service
       * disable --color for Windows for now
       * Collect Solaris process informations (Emengao)
       * VirtualMachine: Add Vserver.pm
       * VirtualMachine: Check is the status is correct
       * detect Slackware packages (David DURIEUX)
       * Libvirt.pm switch SUBSYSTEM and VMTYPE values.VMTYPE is "libvirt"
         now
       * Better error handling if it's not possible to create basevardir
       * Inventory: reduce the number of debug messages
       * Add DRIVES/SYSTEMDRIVE to know if it's the system partition
       * Inventory.pm, fix: addStorages is deprecred, not addStorage
       * Inventory.pm, addSection() is now deprecated and a warning is
         printed everytime the function is called
       * Linux/PC/CPU: set CPU name and detect CORE/THREAD
       * Stores environement variables
       * Bios, add ENCLOSURESERIAL BASEBOARDSERIAL and BIOSSERIAL keys
       * Identify USB devices (Windows, Linux)
       * --realm was two time in --help
       * LoggerBackend/Syslog.pm: fix https://bugs.launchpad.net/bugs/571655
         (Guillaume Rousse)
       * LoggerBackend/File.pm: don't reopen file descriptor for every new
         message (Guillaume Rousse)
       * Cups.pm: gets all installed printers and their drivers names
        (Aurelien Bondis)
       * ocsinventory-ng is not more the default server hostname, you've to
         set it yourself in agent.cfg
       * Inputs.pm: adds Inputs support for Linux clients (Aurelien Bondis)
       * Turns off interactive mode of GNU fdisk (Aurelien Bondis)
       * Add a few new PNP monitor IDs (Alex Mauer)
       * Makefile.PL: Define Perl 5.8 as the minimal version.
       * RPC: Add http://hostname:62354/status to get the current status of
         the agent
       * Add --rpc-trust-localhost
       * RPC: serve a basic page to present the agent
       * --html-dir parameter
       * Linux/Domains. Use Sys::Hostname to get the domain
       * Exit if no --server or --target is defined
       * Inventory: If two modules with the same name are found, only load
         the first
       * Linux/Storages: detect floppy and block devices (Amir PAKDEL)
       * Linux/Storages: don't attempt to run df on cdrom devices
         (Guillaume Rousse)
       * Linux/Storages: factorize redudant code for udev devices detection
         (Guillaume Rousse)
       * HP-UX numerous improvement (Amir PAKDEL)
       * Add NETWORKS/SPEED (in MB/s) (Amir PAKDEL)
       * HP-UX/Drives: Swapped "Type" and "File System" (Amir PAKDEL)
       * Inventory: POD doc for NETWORKS part
       * add --no-printer parameter
       * BSD: don't use uname to get the OSName, but $^O aka $SNAME
       * BSD: chomp() the number of CPU
       * HP RAID disk detection is now in Generic directory and so, can be
         used by Windows and probably HP-UX.
       * Linux: use blkid to get the partition serial number
       * Task: Add the Ping.pm module for debugging purpose
       * HTTP::Daemon::get_request is not thread safe and must be called from
         the master thread. The timeout is set at 5 seconds to avoid
         blockage
       * Linux: HP Integrated Lights-Out (iLO) (Management Interface of HP
         ProLiant servers) (Amir PAKDEL)
       * HP-UX: HP Management Processor (MP) (Management Interface of HP
         Integrity servers) (Amir PAKDEL)
       * Add --perl-bin-dir-in-path parameter for the Windows package
       * Collect Batteries information
       * Add --disable-perllib-envvar to be able to ignore PERLLIB and
         PERL5LIB envvar
       * turns off PERL5LIB envvar in win32-service
       * Get CONTROLLERS/PCISUBSYSTEMID
       * Simplify a lot Inventory.pm, add _addEntry() function
       * Do not set CPU Id as MBoard serial number anymore
       * XML: Only set the non empty field to decrease the final file
         size and improve the performance
       * Add a template config file in etc/agent.cfg
       * Add --conf-file=XXX parameter to allow the user to use another
         config file
       * Fix, allow dash in key name in config file
       * Rethink the script in ./tools, see ./tools/README
       * Inventory: use encode('UTF-8', $string) to reencode to UTF-8
         string detected invalide.
       * print help messages on STDERR
       * Linux: factorize redundant modules for non-LSB Linux distribution
         identification (Guillaume Rousse)
       * rewrite lshal and dmidecode parsing code for readability and
         efficiency (Guillaume Rousse)
       * don't test umask() result, it always succeed
       * don't test Sys::Hostname availability, it's a core module
       * RPC: ignore when socket::accept return an undef $socket
       * RPC: display the date of the next inventory planned
       * testing: test modules loading (Guillaume Rousse)
       * testing: test PBP compliance (Guillaume Rousse)
       * testing: test dmidecode and lshal parsing tests (Guillaume Rousse)
       * code cleanup: ensure consistent 4-spaces indentation step everyhwere
        (Guillaume Rousse)
       * code cleanup: use strict and warning pragmas everywhere
        (Guillaume Rousse)
       * code cleanup: use lexical file handles (Guillaume Rousse)
       * code cleanup: use 3-args open statement (Guillaume Rousse)
       * code cleanup: use block-style eval statement (Guillaume Rousse)
       * code cleanup: use english names for magic variables (Guillaume Rousse)
       * code cleanup: use explicit return statement (Guillaume Rousse)
       * code cleanup: ensure all opened file handles are proprely closed
        (Guillaume Rousse)
       * code cleanup: ensure all open failure are signaled to user with a
         meaningful message (Guillaume Rousse)
       * code cleanup: ensure object constructors can handle subclasses
         (Guillaume Rousse)
       * Linux/Storages: Rename addStorages to addStorage finally
       * Add Virtuozzo support (Jan JUNGMANN)
       * merge README file with the fusioninventory-agent POD documentation
       * File::Find is required
       * Add --html parameter
       * Improve --help presentation

2.0.7    Mon, 14 Jun 2010
       * Avoid a warning if --stdout is used.
       * print help messages on STDERR
       * --wait: no need to wait before the final exit
       * Inventory PROCESSES. Support more different date format and avoid
         warning

2.0.6    Fri, 28 May 2010
       * Fix DRIVES/CREATEDATE for ext* filesystem
       * Inventory: Always generate a CHECKSUM, OCS is not able to import
         inventory is the key is missing, thanks Eric Feron
       * Ipdiscover: Fix, wrong IP/MAC pair, thanks anto1ne
         https://bugs.launchpad.net/bugs/585753
       * Fix dmidecode version comparaison
         https://bugs.launchpad.net/ocsinventory-unix-agent/+bug/586321
         (Guillaume Rousse)
       * Mismatch between xen dom0 and xen PV host
         https://bugs.launchpad.net/ocsinventory-unix-agent/+bug/586337
         (Guillaume Rousse)

2.0.5    Wed, 12 May 2010
       * Don't use dmidecode with -t and -s parameter since it's not
         supported on RHEL4
       * Remove wrong code to detect problem with umask. umask(077) will
         returns the previous umask. In daemon mode, the umask is set to
         0 which was seen as an error code
       * Fix a minor typo in Storage.pm
       * daemon mode: don't change current directory to / if --devlib is
         on
       * Add MIME::Base64 as recommended package
       * A Fedora RPC spec file in contrib/fedora (Remi COLLET)
       * RPC: drop the sleep(1) before every new request
       * RPC: avoid threads::running to keep compatiblity with Perl < 5.10
       * SSL: --ca-cert-file correctly detect if the cert is present
       * Don't use ExtUtils::Installed to identify the installed files,
         ExtUtils::Installed looks all the @INC directory for .pack files,
         including '.'. When the agent was launched by a cron task or in
         daemon mode, the current directory is / and so the whole system was
         scanned, thank you Remi COLLET for pointing this issue.
       * BIOS: correctly set SMANUFACTURER and SSN instead of
         SMANUFACTURERSSN

2.0.4    Thu, 06 May 2010
       * Add debug message on WOL and correction when no mac address comes
         in xml file from server (David DURIEUX)
       * etc/cron.d/fusioninventory-agent, call fusioninventory-agent
         instead of ocsinventory-agent
       * limit the number of RPC connection, and fix the Win32 issue
       * Restore --wait XXX
       * Fix --wait documentation.
       * Avoid an error with --lazy, thanks Remi Collet
       * Bump "Next server contact planned for ..." message severity from
         debug to info

2.0.3     Sun, 11 Apr 2010
       * Fix a syntax problem in FusionInventory::Agent::Network

2.0.2     Sat Apr 10
       * fusioninventory-agent-config: Fix a typo, thank you Act
       * --delaytime really read the parameter, thanks Walid NOUH
       * fix --no-socket
       * Fix a typo in fusioninventory-agent-config, logtotate (Girish NAVUDA)
       * Fix: between two server query, really wait during a random period
         still based on server PROLOG_FREQ
       * Do not load Crypt::SSLeay and IO::Socket::SSL at the same
       * POD doc, explain how to use more than one server
       * Fix: between two server query, really wait during a random period
         still based on server PROLOG_FREQ
       * SNMP.pm: Correct bug when oid result is pack and put mac in right format
         (David DURIEUX)
       * Set 2.0.1 release date in Changes file

2.0.1 (Solarium)    Sun, 28 Mar 2010
       * tools/build-perl-tree.sh: clean up
       * Only use thread if Perl has got thread support, thank you
         Lei Andy Shi for the bug report (LP: #545477)
       * -D/-d avoid unless loop if --local is used too
       * RPC: correctly initialize $logger in new()
       * Add a warning for the Storage.pm breakage with pre 2.0 tasks
       * SNMP.pm: fixes (David DURIEUX)

2.0 (Zygotene Bouquet)   Tue, 23 Mar 2010
       * OcsDeploy: avoid a warning when the server don't send DOWNLOAD
         option
       * Drop the Net::Walk dependency
       * README, add File::Copy::Recursive in the list of dependency
       * OcsDeploy: use 'df -Pm' to get a consistent output with GNU tools
       * Task exec: Log the errcode return by the system()
       * Debug: do not drop the FusionInventory-Agent.dump to help debbuging
       * VERSION is not defined in $FusionInventory::Agent::VERSION
       * README: Clean up
       * Storage: Use only hashref to pass arguments
       * SNMPQuery: translate in english some comments
       * FusionInventory::Agent::Task::{OcsDeploy,NetDiscovery,SNMPQuery} are now
         maintained in new sub-projects
         - drop their dependencies in Makefile.PL
       * backport a fix from ocsinventory in fusioninventory-agent-config to fix a typo
         thanks Guillaume PROTET and Jean-Sebastien NORMAND
         ocsinventor-agent → ocsinventory-agent
       * Don't try to parse empty response from server
       * fusioninventory-agent-config: RPM/DEB mode turn off by default
       * Check if the module is installed before the execution
       * fusioninventory-agent-config: add a minimalist POD doc
       * FusionInventory::Agent::RPC add POD documentation
       * Network.pm: Load LWP::UserAgent and HTTP::Status in an eval to get these
         dependencies loaded only when needed
       * Makefile.PL add Net::CUPS is recommended
       * Linux, retrieve the PCI Class

2.0beta4 Thu, 04 Mar 2010
       * Drop the dependency on Net::SSLGlue::LWP because its own dependencies
         are not avalaible on RHEL5.x, thank you Remi Collet for pointing
         this issue.
       * Makefile.PL: suggest IO::Socket::SSL for SSL
       * Drop the Dependency on LWP::Simple
       * RPC: Do not die if client send random data
       * HP-UX: Use can_run to know if machinfo if avalaible  (François MERMET)
       * HP-UX: code clean up  (François MERMET)
       * Net::IP is now required.
       * OcsDeploy: Fix 2 malformed regex, thank you Mario Gzuk
       * OcsDeploy: avoid a warning if $rc in unset on Perl 5.8
       * OcsDeploy: Archive::Extract is just recommended now
       * Network: load HTTP::Status
       * standalone.sh dropped, was deprecated with the 2.0 changes
       * Do not ignore --server if --local is present
       * Inventory: No need to generate in local mode
       * Inventory: create one last_state file per server
       * Inventory: save last_state if server send a response
       * Storage: use umask 077 for stored files
       * Target and Logger: fix the lock, use a global var now
       * Inventory: Set the VERSIONCLIENT XML key
       * HPUX: Software, fix the package name
       * MacOSX, move the MacOSX packing files from the main branch to
         lp:fusioninventory-agent/macosx
       * SNMPQUERY : Update Dico to known new devices (David DURIEUX)
       * SNMPQUERY : Corrections of ports, mac address and other things (David DURIEUX)
       * NETDISCOVERY : Correction of NMAP discovery (David DURIEUX)
       * NETDISCOVERY : Correction of many bugs (empty devices, data send to server...) (David DURIEUX)
       * rename FusionInventory::Agent::Task::NetDiscovery::dico in FusionInventory::Agent::Task::NetDiscovery::Dico;
       * WAKEONLAN : Begin to rewrite good WOL, so send magic packet directly on OSI2 of network card (ONLY FOR LINUX UNDER ROOT) (David DURIEUX)

2.0beta3 Mon, 22 Feb 2010
       * README: clean up
       * Do not use IPC::Run, thanks Mario Gzuk
       * Fix --local
       * fix: Invalid type 'W' in pack in RPC.pm, thanks Mario Gzuk
       * HP-UX: fix the module. They'd been broken during the merge
       * Turns Off FusionInventory::Agent::Storage
       * Correctly checks if $basevardir exist (-d instead of -f)
       * --no-ssl-check, show warning just one time
       * Libvirt.pm: ignore stderr
       * HP-UX: Fix CPU/serial detection on HP-UX 11.31 (Marty RIEDLING)
       * POD documentation for FusionInventory::Agent::Network
       * POD documentation clean in FusionInventory::Agent::XML::Query::Inventory
       * POD documentation for FusionInventory::Agent::XML::Query::SimpleMessage
       * Linux: Handle channel bonding interfaces (Stéphane URBANOVSKI)
       * XML: clean up addNetwork (Stéphane URBANOVSKI)
       * CPU: Add CORE/THREAD
       * Inventory: use the standard Inventory object
       * Inventory: correctly save OcsDeploy package ID
       * NetDiscover/SNMP: Various changes (David DURIEUX)

2.0beta2 Wed, 17 Feb 2010
       * Update dico for detected devices in NETDISCOVERY module
         (David DURIEUX)
       * Changes file clean up

2.0beta1 Wed, 17 Feb 2010
       * Use Sys::Hostname instead of uname for better portability
       * add --daemon-no-fork
       * post-install.pl: Don't ask the user if Download.pm should be
         enabled
       * Drop the linux_agent modules compatibility layer
       * Rename module hook functions:
          check()    → isInventoryEnabled()
          run()      → doInventory()
          longRun()  → postInventory()
       * Add isPostInventoryEnabled() function
       * Drop AccountConfig. replaced by Storage
       * Move Ocsinventory::Agent::XML::{Inventory,Prolog,SimpleMessage} in
         Ocsinventory::Agent::XML::Query
       * WakeOnLan support (David DURIEUX)
       * Ocsinventory renamed to FusionInventory
       * OcsDeply jull rewrite
       *  P2P mode in daemon mode (-d or -D)
       * add --rpc-ip
       * SNMP support (David DURIEUX)
       * Network discovery (David DURIEUX)
       * WakeOnLan (David DURIEUX)
       * postinst.pl is now and is installed in the $PATH
       * Solaris: use regex to identify CPU class (Jerome LEBAS)
       * Solaris/Network: support Zone (Jerome LEBAS)
       * HP-UX: initial support, tested on RP3440 (François MERMET)
       * Changed arguments to dpkg-query for compatibility (Scott HANNAHS)
       * MacOSX: Distinguish clearly between "OS Name" and "System Version" by
         parsing output carefully for both variables. Clean up language in
         description. (Scott HANNAHS)
       * Add an in contrib example of script to identify specific software
         (Simon CLARA)
       * Upgrade memconf to V2.13
       * Use parameters to simplify the way dmidecode is called (Dmitry ILYIN)
       * Solaris: Bonding support (Stéphane URBANOVSKI)
       * Remove exec flag on
         lib/Ocsinventory/Agent/Backend/OS/MacOS/Hostname.pm (Remi COLLET)
       * spelling in manpage authentification → authentication
       * MacOSX: Correctly identify the CPU frequency on MacOSX 1.6 French,
         thanks Grek
       * Improve the README about non-interactive installation
       * Bump copyright date from 2009 to 2010
       * Linux/PPC: Frequency is an integer, not a float
       * run dosfslabel on the correct device
       * Nmap: Check ip send by server

1.1.2    Sun, 27 Dec 2009
       * Avoid problem with dmidecode -V output on RHEL3.9 (Remi COLLET)
       * Fix internal --delaytime handling. That's seconds, not hours!
       * Download.pm: improve a error message

1.1.1    Mon, 21 Dec 2009
       * NETWORKS/VIRTUALDEV should be 1 or 0
       * FreeBSD: Fix CPU detection (David DURIEUX)
       * Virtualization::Qemu, fix kvm detection
       * Don't run brctl if it's not installed
       * Various wording fixes (Vincent KNECHT)
       * Improve README (Barius DRUBECK)
       * Get serial number from ext4 partition if ext4dev driver is used
       * LP: #494908 Agent fails to retrieve info file when a package is
         activated only with the server name (Pascal DANEK)
       * LP: #495398 Fix RedHat version detection (Stéphane URBANOVSKI)
       * Improve README (Barius DRUBECK)
       * LP: #490774 Fix PowerPC CPU detection on Linux, thanks darkpep for
         the bug report

1.1     Fri, 06 Nov 2009
       * addMemorie() renamed to addMemories(), this had been broken during
         the addMemories() → addMemory() transition
       * Debug mode: msg "check function failed" changed to "ignored" since
         the fails may be wanted by the check() function
       * CompatibilityLayer: $self->{params} changed to $self->{config},
         this restore the debug mode in Download.pm
       * Continue XML::Inventory functions name clean up. Rename:
        - addSlots() calls to addSlot()
        - addMemories() calls to addMemory()
       * Move ocsinventory-agent POD documentation frol Ocsinventory::Agent
         to the ocsinventory-agent shell script. So now the manpage has the
         correct name
       * Fix RPM output parsing (Remi COLLET)
       * VMWareESX: avoid breakage is VM has spaces in its name
         (Christian Michallek)
       * Try to detect kvm --uuid value
       * Makefile.PL, check for Net::SSLeay
       * Move Ocsinventory::Agent in a .pm and add a wrapper script to load
         in order to by able to process --devlib
       * Parallels.pm: doesn't use sudo anymore and check for
         --scan-homedirs
       * Prune 'Mac OS X' from the version on Mac + typo fixes (Scott HANNAHS)
       * POD doc, add a paragraph about the config file
       * LP: #462529, Fix EDID screen detection, thanks Sergio MERINO
       * Use boolean for networks/virtualdev
       * Generic/Screen: chomp uuencode output
       * Generic/Screen: HSD code for "Hanns.G" (Remi COLLET)
       * postinst.pl, put user $PATH in /etc/cron.d/ocsinventory-agent

1.1_beta1    Fri, 18 Sep 2009
       * Can use Net::CUPS to find the default printer
       * AIX: Hide procfs in Filesystem
       * OS::Linux::Storages, correctly retrieve the serial (Vladimir ELISSEEV)
       * load $http_proxy env settings and --proxy option is available
       * Add OS::Linux::Distro::NonLSB::ArchLinux (Julien SAFAR)
       * New Backend OS::Generic::Processes
       * Linux/BSD: detect DNS servers config
       * Solaris: Better output for $OSVErsion (Vladimir ELISSEEV)
       * Solaris: Sun Fire T1000 patches for memory (Vladimir ELISSEEV)
       * Solaris: memory SPARC Enterprise T5220 (Vladimir ELISSEEV)
       * Solaris: CPU SPARC Enterprise T5220 (Vladimir ELISSEEV)
       * Solaris: CPU SPARC Enterprise T5220 (Vladimir ELISSEEV)
       * Linux: split the /proc/cpuinfo parsing depending on the arch
       * Linux: drop Linux::Controllers which is duplicated with
         Generic::Lspci::Controllers (Vladimir ELISSEEV)
       * AIX: Various fixes in Memory.pm (Sebastien DAGNICOURT)
       * AIX: Storages.pm, Virtual disks support and fixes (Sebastien DAGNICOURT)
       * Backend.pm: Bump the default timeout from 30 to 180 secondes
       * Agent/XML/Inventory: Fix when version == 0, bug found by neisen
       * AIX: device type adjustment (Sebastien DAGNICOURT)
       * Solaris: Sun-Fire-V440 support (Sebastien DAGNICOURT)
       * Add a missing space is the name banner in --debug mode
       * Agent/XML/Inventory.pm: Add FROM and INSTALLDATE fields in software
         list and LASTLOGGEDUSER DATELASTLOGGEDUSER
         in HARDWARE (Nicolas EISEN)
       * Initialize etcdir key even if there is no config file
       * CompatibilityLayer: correctly set $debug
       * CompatibilityLayer: better log messages
       * getOptionInfoByName return an array ref now
       * rename getOptionInfoByName to getOptionsInfoByName
       * --debug print the XML on STDERR
       * Rename the params key to config to avoid ambiguity
         with $params
       * set HARDWARE/DEFAULTGATEWAY (Nicolas EISEN)
       * RPM: collect the install date and the size (Nicolas EISEN)
       * Linux: Collect LASTLOGGEDUSER and DATELASTLOGGEDUSER (Nicolas EISEN)
       * DPKG: collect the Installed-Size (Nicolas EISEN)
       * Linux: Collect the ext{2,3,4} and xfs serial number
       * Linux: Collect the ext{2,3,4} creation date
       * Add a warning when no certificat is found
       * Turns off alarm once it's backend run is finish
       * Fix the IPMI module detection
       * Linux: Store the PCISLOT and the driver name
       * NETWORKDS, only store Networks with an address
       * Linux: detect virtual network device
       * Linux: Store CONTROLLERS/DRIVER and CONTROLLERS/PCISLOT
       * Linux: Collects xfs, ext{2,3,4} and vfat label
       * runs the backend module from main() it's possible to
         reuse the Backend object.
       * Linux: filter non standard MAC address returned by ifconfig like
         00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 mac
       * Linux: Fix the Uptime check()
       * Preliminary libvirt support
       * Partial rewrite of the Download.pm backend
       * Add a warning if the user is no root, thanks Nicolas EISEN and
         Sylvain LUCE
       * SPARC-Enterprise M4000 and M5000 support (Sylvain LUCE)
       * Libvirt: collect VCPU info (Philippe LIBAT)
       * Add Virtualization::Xen module (Philippe LIBAT)
       * Solaris: add a warning if memconf is not in $PATH
       * Switch the XML content from ISO-8859-1 to UTF-8, BTW we force
         LC_ALL=C...
       * Fix the history flood in Download.pm (Pascal DANEK)
         https://sourceforge.net/tracker/index.php?func=detail&aid=2806585&group_id=58373&atid=487492
       * Stores PCIID in CONTROLLERS/PCIID
       * Storage the monitor EDID string in BASE64 and UUENCODE
       * Linux: Storages: reorganize the code base and use lshal
       * Linux: Drives, complete inforamtions with lshal (Nicolas EISEN)
       * Linux: fix the PowerPC CPU detection
         https://sourceforge.net/tracker/?func=detail&atid=487492&aid=2043221&group_id=58373
       * Warns the user during the install process if one of
         the recommended module is not installed
       * Update out copy of memconf, thanks WeatherDave who notified the new
         revision and of course Tom Schmidt who do a great job
       * MacOSX: Avoid a scalar used has hash ref error, thanks Adadov
       * Save VIDEOS/MEMORY and VIDEOS/RESOLUTION
       * MacOSX: Correctilly detect Up/Down network interfaces
         (David OLIVIER)
       * AddNetwork() doesn't ignore network with no IP address
         (David OLIVIER)
       * add --backend-collect-timeout parameter (Nicolas EISEN)
       * MacOSX: convert the IP mask from hex (David OLIVIER)
       * MacOSX: add a workaround to avoid Mac::SysProfile failure on
         MacOSX 10.5.7 (David OLIVIER)
       * Add Virtualization::VirtualBox module (Nicolas EISEN)
       * Add Virtualization::Qemu module (Nicolas EISEN)
       * Add Virtualization::Vmsystem module (Nicolas EISEN)
       * Better smartctl detection (Nicolas EISEN)
       * optimization and vm users detection Virtualization::VirtualBox (Nicolas EISEN)
       * Add Virtualization::VmwareFusion module (Walid NOUH)
       * Don't use hdparm prior 9.2.2 anymore to avoid crap in kernel log, see
         http://forums.ocsinventory-ng.org/viewtopic.php?pid=20768
       * Correctly detect ipmitool
       * Solaris: i86pc Memory support (Jean-François BOUCHER)
       * Solaris Zone support (Maurizio BERTABONI)
       * Always send tag, even if server already has one
       * Add the byHand software collect method (Sébastien DAGNICOURT)
       * add logging to can_read(), can_load() and can_run()
       * use addUser() instead of setHardware()
       * Add the runcmd() in the Backend modules

1.0.1    Sun, 22 Mar 2009
       * Fix a typo in Ocsinventory::Agent::Backend::OS::AIX::Memory

1.0    Sun, 22 Mar 2009
       * Hide warning messages when tw_cli or hpacucli are not present on CentOS
       * Avoid unnecessary about missing 'http://' in local mode
       * Ipmi.pm: use can_run do detect ipmitool
       * LSB.pm: properly use can_run
       * Avoid a warning in CompatibilityLayer.pm in local mode
       * Improve the README file
       * Avoid a warning at runtime if rpm is not correctly installed
       * BSD: Detect AMD64 arch (David DURIEUX)
       * HP.pm: force detection even if slot 1 is 0 (Remi COLLET)
       * HP.pm minor clean up + indentation
       * HP.pm send the $model as NAME to avoid NAME == 'unknown' (Remi COLLET)
       * New backend module ServeRaid for IBM ServeRAID card (Remi COLLET)
       * Linux::Storages, fix the hdparm call (Remi COLLET)
       * OS::Generic::Dmidecode::Bios, fix for RHEL2 dmidecode (Remi COLLET)
       * launch backend modules with a 30sec timeout
       * post-inst.pl: use prompt() from ExtUtils::MakeMaker to avoid
         unexpected error with cpan
       * avoid the "No LSB modules are available." warning message
       * Backend: --debug print a warning when arun() function is not found
       * Fix the Debian/Ubuntu detection for non lsb system
       * postinst.pl also drop /etc/cron.d/ocsinventory-client is the user
         want to drop the old linux_agent
       * Backend::OS::Solaris::Memory: use the Logger instead of "print"
       * Solaris: Drop unwanted spaces around OSVERSION and STORAGES/DESCRIPTION
       * Solaris: Avoid warning is the user can't use fstyp
       * MANIFEST.SKIP: ignore .git/ and .gitignore
       * add a workaround for http://rt.cpan.org/Ticket/Display.html?id=38067
       * build-perl-tree.sh use cpanp and perl 5.10 now
       * Backend.pm: do a eval around require File::Find
       * Add a workaround to find the backend modules for PAR::Packer
       * Backend.pm: internal change, now do eval 'use $pmodule' instead of require
       * fix serialnum detection in Lsilogic.pm and Adaptec.pm (Edouard GAMIN)
       * Makefile.PL: drop wait(), not used
       * Makefile.PL: fix a syntax error
       * add tools/makedist.sh to document the workaround used to avoid
         http://rt.cpan.org/Public/Bug/Display.html?id=43060
       * Fix --logfile=/somewhere.log, see
         http://forums.ocsinventory-ng.org/viewtopic.php?id=3092
       * tools/build-perl-tree.sh, add a new script
       * Don't print ugly error if next_timefile can't be saved
       * OS::Linux::Domains, improve the way it deals with multiple
         domaine entries (Remi COLLET)
       * AIX: Record the last memory Slot (Wilfried BRUNKEN)
         http://sourceforge.net/tracker/?func=detail&atid=487492&aid=2350694&group_id=58373
       * Bump 0.0.10 to 1.0 because it's the first release to be officially part
         of the OCSInventory distribution

0.0.10beta2    Wed, 24 Sep 2008
       * README: add a not about the $PATH varible on Solaris.
       * Added extra section support for backends (Pascal DANEK)
       * Fix the way submodules are disabled with $runMeIfTheseChecksFailed
       * Linux: Use lsb_release if presents to detect the OS, this will fix
         the Ubuntu detection
       * Hide a Perl warning if the agent is run by the user want the last_state
         file is missing
       * Add Ipmi backend module (Jean PARPAILLON)
       * Drop the control characters from the inventory XML
         https://sourceforge.net/tracker/index.php?func=detail&aid=2100606&group_id=58373&atid=487492
       * Apply a little change in standalone.sh that may fix the ParserDetails.ini problem,
         thanks tharoun

0.0.10beta1    Thu, 04 Sep 2008
       * Fix a "ocs server name" => URI side effect (Pascal DANEK)
       * Download::Store: used absolute path to "cp" on STORE action (Pascal DANEK)
       * Download::Store: set -dpR flags to "cp" (Pascal DANEK)
       * Solaris: Replaced hostid in serialnumber by real serialnumber (Nicolas DORFSMAN)
                  (SUNWsneep becomes mandatory on sparc)
       * Solaris: Return only one IP address (trying to guess which one corresponds to hostname) (Nicolas DORFSMAN)
       * Solaris: return disks SERIALNUMBER and FIRMWARE as XML fields (Nicolas DORFSMAN)
       * Redirection and stderr issue on Solaris (Nicolas DORFSMAN)
         - Removed close of stderr fd
         - Modified lspci and screen check() to avoid pollution of stdout/stderr
       * fix the previous changelog entry, the 0.0.9.1 fix had been done by Nicolas DORFSMAN
       * postinst.pl checks for MANIFEST present
       * improve the backend module detection by also scanning the symlinked directory
       * add the --devlib flag to load ./lib only if wanted and remove '.' from the directory to scan
         with File::Find.
       * import the can_run, can_load and can_read functions in the Backend modules
       * the backend module can have no check function, in this case OCS assume it's ok
       * apply a patch by Etienne GUILLAUMONT to fix CPU detection on AIX 4
       * standalone.sh checks PAR::Packer presence now
       * only inventory installed .deb
       * postinst.pl: accept another vardir if the first one was invalide
         https://sourceforge.net/tracker/?func=detail&atid=487492&aid=1961771&group_id=58373
       * postinst.pl Download.pm correctly actived in modules.conf is the user needs it
       * add MacOSX support thanks to Wes YOUNG (Wes YOUNG)
         - Added tools/darwin/ support scripts/code for OS X enterprise deployment
       * add the follow_skip==2 flag to File::Find in Backend.pm so it doesn't detect the same
         file two time
       * import of backend module for RAID controler on Linux (3ware, Adaptec, HP and Lsilogic)
         (Edouard GAMIN)
       * remove a warning in Debug mod, if a backend module has no run() function
       * don't crash in Daemon mode if the server is unreachable (Wes YOUNG)
       * Net::IP is just (strongly) suggested now
       * fix --basevardir so it really accepts a parameter, thanks Gubluts from the forum who
         pointed out the bug
       * postinst.pl use which to find ocsinventory-agent location
       * Makefile.PL, Perl 5.6 doesn't have Config::config_re, I call it from an eval now
       * Added --delaytime option as commandline / .cfg file adjustable (Wes YOUNG)
       * standalone.sh, don't use grep -v since it's not POSIX
       * doesn't die if Storable.pm is missing like with perl 5.6
       * avoid a warning with gzip -h on AIX if Compress::Zlib is missing
       * README: depends on Perl 5.8
       * README: On solaris the Makefile needs gmake
       * README: Add a note about crontab and PATH
       * Linux: redirect hdparm error to /dev/null
       * postinst.pl yes/no questions have a default value now
       * postinst.pl fix a bug in the import of the old ocsinv.adm
         https://sourceforge.net/tracker/index.php?func=detail&aid=1991668&group_id=58373&atid=487492
       * postinst.pl doesn't create two vardir directories anymore
       * do not print a wrning is --nosoftware is used. Thanks Knarfling and Remi who pointed the issue
         out.
         http://forums.ocsinventory-ng.org/viewtopic.php?pid=12569
       * fix the POD documentation, some mistakes were detected by Perl 5.10's perldoc.
       * the agent doesn't crash anymore if ocsinv.adm or ocsinv.conf is corrupted
       * Makefile.pl: install memconf on Solaris
       * Solaris: apply patches to use memconf for CPU, Drives and Memory (Christoph HALMES)

0.0.9.2 04/18/2008 Bug fix
       * Add /ocsinventory in the server path if the user enter just the hostname
         https://sourceforge.net/tracker/?func=detail&atid=487492&aid=1945865&group_id=58373

0.0.9.1 04/03/2008 Bug fix
       * fix a error in the previous release that was forcing the local mode (Nicolas DORFSMAN)
         https://sourceforge.net/tracker/?func=detail&atid=487492&aid=1945863&group_id=58373

0.0.9 04/01/2008 April Fool release!
       * Added fallback for --lazy if no prolog freq was found and server error (Pascal DANEK)
       * Fixed accountinfos handling bugs (Pascal DANEK)
       * Changed --wait behaviour (--wait=number_of_seconds || "server") (Pascal DANEK)
       * PROLOG_FREQ is handled in prolog phase (Pascal DANEK)
       * the random value for file_nexttime is computed only if prolog_freq has changed since last prolog (Pascal DANEK)
       * import the documentation documentation by adding a description of the
         agent and pointer to the official website
       * --nosoft option renamed to --nosoftware, --nosoft still works but with a warning
       * add --basevardir to be able to use a specific place to store the var file
       * add the --lazy parameter: send an inventory only if the a random delay between 0 and PROLOG_FREQ had been run over. Usefull for package maintainer (Remi COLLET)
       * return 1 to the shell is the agent failed to contact the server
       * postinst.pl asks for the basevardir
       * postinst.pl write the modules.conf
       * OS::Linux::Network::Networks, correctly reset the ipaddress before every loop so
         now a network can't have the address of the previous one
       * rename the key $params->{conffile} to $params->{accountconfig}
       * fix the way accountinfo information are stored
       * improve (a bit) tools/standalone.sh to avoid error if people launch it
         from the tools directory
       * --server is ignore if --local is in use
       * adjust Backend::OS::Generic::Screen to be able to use monitor-edid with DVI link (Remi COLLET)
       * OS::Linux::Storages, add NEC as a know manufacturer add assume the manifacturer is Seagate if
         the model doesn't match the others and begin with ST (rjhill)
       * fix the CPU detection on Linux Sparc64 and ARM (Linksys NSLU2)
       * improve the Solaris version detection by reading the /etc/release file (Nicolas DORFSMAN)
       * Solaris: fix the MAC addresses when the leading zeros is missing (Jean-Jacques MICHEL)
       * Solaris: Add publisher is possible in the software list (Nicolas DORFSMAN)
       * Solaris: improve the hard drive detection (Nicolas DORFSMAN)
       * postinst.pl can remove the previous linux_agent
       * postinst.pl reuse linux_agent old config file to set the default server and tag
       * return the SERIALNUMBER and the FIRMWARE on Linux with hdparm, the feature is not supported
         yet by the server (egamin)

0.0.8.1 02/20/2008
       * postinst.pl, correctly save the realm, do not override the password
       * Added "CAPTION" field to memory (Pascal DANEK)
       * Fix a bug with "NUMSLOTS" memory field (Pascal DANEK)
       * improve the parsing of the config file to accept quote and spaces in the value
       * postinst.pl save the configfile with 0600 right since the server
         password maybe be stored in it
       * standalone.sh doesn't scan the inc/ directory anymore
       * remove the BUNDLE packages which seem to break the install process
       * change Solaris::CPU to use psrinfo -v to get the CPUs which works fine on x86
       * fix a path error in Ocsinventory::LoggerBackend::File (Remi COLLET)
       * fix: don't send the inventory if the server doesn't need it (Remi COLLET)

0.0.8 02/05/2008
       * fix the deviceid and old_deviceid handling (Pascal DANEK)
       * fix a debug message in Network.pm (Pascal DANEK)
       * different fixes on Compress.pm (Pascal DANEK)
       * fix an event message name in Option/Download.pm (Pascal DANEK)
       * fix the Compatibility Layer with prolog_read hook (Pascal DANEK)
       * merge PowerPC and PC code to detect the CPU and improve/fix the regex
       * looks for config file in /etc/ocsinventory /usr/local/etc/ocsinventory and
         /etc/ocsinventory-agent
       * add a pod documentation about the different config files and directories
       * Compress::Zlib is required but recommended now. In fact, you need it with
         ocs server prior 1.02

0.0.7.2 01/16/2008
       * fix the post installation script to avoid invalid cron time

0.0.7.1 01/14/2008
       * add setup.sh in the MANIFEST.SKIP to keep it out of the tarball

0.0.7 01/13/2008
       * Ocsinventory::Agent::AccountInfo does not warn accountinfofile if runned in debug mode
         without root privilege
       * fix params->{etcdir} to /etc/ocsinventory, /etc/ocsinventory-agent/modules.conf must be moved
         to /etc/ocsinventory/modules.conf
       * Solaris: Improve the CPU detection (Olivier ROUSSY)
       * AIX: Return the directory with the AIX package name (Olivier ROUSSY)
       * Ocsinventory::Agent::XML::Inventory can now write software inventory
         value of FILESIZE, FOLDER and PUBLISHER
       * processChecksum() and feedInventory() are called by Ocsinventory::Agent::XML::Inventory
         directly now
       * the server responses are not parsed in the main script anymore
       * do not create an inventory if the server doesnn't need it
       * new parameters for the backend modules (run and check functions):
         - prologresp, the Ocsinventory::Agent::XML::Response::Prolog object returned by
           the prolog
         - storage: an hashref stored on the harddrive at the end of the execution of the module
       * a backend module without a run function is accepted now
       * Inventory.pm: add addIpDiscoverEntry() to add host from the same network
       * @runMeIfTheseChecksFailed: new optional setting for Backend module
       * Ipdiscover is now a backend module and nmap can be used instead of ipdiscover
       * --nosoft disable the Ocsinventory::Agent::Backend::OS::Generic::Packaging modules
       * Remove the deprecated modules Ocsinventory::Agent::Option::Ipdiscover and
            Ocsinventory::Agent::Option::Update
       * the check function of the backend accepts the same parameter than the run function
       * Linux::Archs::I386 regex are more robust
       * perldoc documentation for the ocsinventory-agent command
       * minor improvment on the Makefile.PL
       * change the way --server parameter is read. Now we can have a full URL, --remotedir
         is now useless
       * fix: correctly load the last_state
       * improve the Makefile.PL by using inc::Module::Install and adding new check
       * add a --version parameter and improve the --help
       * come with bundled dependency to simply the build process
       * fix the login/passwd/realm authentification
       * remove Agent/Pid.pm, I've to prepare a better system to keep the pid first
       * try to read the config in /usr/local/etc/ocsinventory/ocsinventory-agent.cfg if the
         standard one is missing

0.0.6.2 07/16/2007 Bug fix release

       * remove a debug "die" in the code

0.0.6.1 06/12/2007 Bug fix release
       * Fix an undef value in Ocsinventory::Agent::Backend::OS::BSD::Mem
       * AIX: retrieve correctly the MAC address of some FibberChannel card
       * now standalone.sh will try to find every module before the build to
         avoid unexplicated error

0.0.6  06/07/2007
       * Enable "verbose" is debug is turned on
       * AIX: Ocsinventory::Agent::Backend::OS::AIX::Networks rewrote
       * AIX: Memory.pm, remove the spaces from the end of the DESCRIPTION
       * add standalone.sh, a script designed to prepare a stand-alone binary of the agent
       * AIX: Retrieve all the gateway of every subnet instead of just the default one
       * Config.pm renamed to AccountConfig.pm
       * New flag: --stdout to print the inventory directly on STDOUT
       * If the use want write on the system var directory, the agent create one in
         ~/.ocsinventory/var
       * The agent setting can be preinitialised with /etc/ocsinventory/ocsinventory-agent.cfg or
         ~/ocsinventory/ocsinventory-agent.cfg.
       * remove two debug messages printed during accountinfo rewrite and the
         daemon starting process
       * remove a stupid check in Ocsinventory::Agent::AccountConfig, the
         accountconfig file was not written unless the file was already present
       * add a recMkdir function in ocsinventory-agent to create directory recursivly
       * do not process checksum in local mode

0.0.5  04/17/2007
       * AIX: use lslpp -c -l to find installed packages
       * AIX: fixes on CPU.pm, Networks.pm and Memory.pm
       * AIX: fetch the serial number with lscfg unless it was found with lsvpd
       * add the .ocs extension to local written files
       * with --local flag: don't not warn if last_state doesn't exit
       * Solaris: retrieve installed package
       * downgrade some message important from info to debug
       * read screen serial number in the EDID (DDC screen)
       * Xorg.pm replaced by Screen.pm
       * Screen.pm all the data are read from EDID now
       * Initial Linux PPC support (tested in Debian Etch).
         thanks Walid Nouh for the hardware
       * Apply patch by Remi Collet to fix an issue with Linux distro detection and Perl 5.6.1
       * Turn of STDERR during the module execution to avoid useless message (e.g: foo: not found)
         use --debug to turn them back
       * If the system side vardir can't be created. The agent try to create one in ~/.ocs-inventory-agent
       * Add a THANKS file

0.0.4 03/20/2007
       * use of gzip when Compress:Zlib is not avalaible. OCS server 1.01 and
         prior are not supported.
       * dmidecode parsing improved
       * lspci stuffs moved to generic
       * Linux: find Wifi connection
       * fix: pass correctly the logger to the modules
       * don't write the last_state is the connexion failed
       * Deals correctly with the accountinfo if it's internaly stored in a
         array ref
       * BSD support by Thierry Lacoste
