Revision history for Ocsinventory::Agent

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

2.0beta1 Wed, 17 Feb 2010 22:08:00 +0100
       * Use Sys::Hostname instead of uname for better portability
       * add --daemon-no-fork
       * Don't ask the user if should be
       * 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
       * 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)
       * 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/ (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 

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

1.1.1    Mon, 21 Dec 2009 22:38:12 +0100
       * 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 16:07:08 +0100
       * 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
       * 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
       * doesn't use sudo anymore and check for
       * 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)
       *, put user $PATH in /etc/cron.d/ocsinventory-agent

1.1_beta1    Fri, 18 Sep 2009 11:54:12 +0200
       * 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 (Sebastien DAGNICOURT)
       * AIX:, Virtual disks support and fixes (Sebastien DAGNICOURT)
       * 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/ Add FROM and INSTALLDATE fields in software
         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
       * RPM: collect the install date and the size (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: 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 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
       * Fix the history flood in (Pascal DANEK) 
       * 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
       * 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
       * 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
       * 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 20:48:49 +0100
       * Fix a typo in Ocsinventory::Agent::Backend::OS::AIX::Memory 

1.0    Sun, 22 Mar 2009 20:14:26 +0100
       * Hide warning messages when tw_cli or hpacucli are not present on CentOS
       * Avoid unnecessary about missing 'http://' in local mode
       * use can_run do detect ipmitool
       * properly use can_run
       * Avoid a warning in in local mode
       * Improve the README file
       * Avoid a warning at runtime if rpm is not correctly installed
       * BSD: Detect AMD64 arch (David DURIEUX)
       * force detection even if slot 1 is 0 (Remi COLLET)
       * minor clean up + indentation
       * 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
       * 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
       * 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 
       * use cpanp and perl 5.10 now
       * do a eval around require File::Find
       * Add a workaround to find the backend modules for PAR::Packer
       * internal change, now do eval 'use $pmodule' instead of require
       * fix serialnum detection in and (Edouard GAMIN)
       * Makefile.PL: drop wait(), not used
       * Makefile.PL: fix a syntax error
       * add tools/ to document the workaround used to avoid
       * Fix --logfile=/somewhere.log, see
       * tools/, 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)
       * 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 23:41:21 +0200
       * 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
       * Apply a little change in that may fix the ParserDetails.ini problem,
         thanks tharoun

0.0.10beta1    Thu, 04 Sep 2008 18:16:49 +0200
       * 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 fix had been done by Nicolas DORFSMAN
       * 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 
       * checks PAR::Packer presence now
       * only inventory installed .deb
       * accept another vardir if the first one was invalide
       * 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 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
       * 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)
       *, don't use grep -v since it's not POSIX
       * doesn't die if 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
       * yes/no questions have a default value now
       * fix a bug in the import of the old ocsinv.adm
       * doesn't create two vardir directories anymore
       * do not print a wrning is --nosoftware is used. Thanks Knarfling and Remi who pointed the issue
       * 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
       * install memconf on Solaris
       * Solaris: apply patches to use memconf for CPU, Drives and Memory (Christoph HALMES) 04/18/2008 Bug fix
       * Add /ocsinventory in the server path if the user enter just the hostname 04/03/2008 Bug fix
       * fix a error in the previous release that was forcing the local mode (Nicolas DORFSMAN)

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
       * asks for the basevardir
       * 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/ 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)
       * can remove the previous linux_agent
       * 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) 02/20/2008
       *, 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
       * save the configfile with 0600 right since the server
         password maybe be stored in it
       * 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 (Pascal DANEK)
       * different fixes on (Pascal DANEK)
       * fix an event message name in Option/ (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
       * 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 01/16/2008
       * fix the post installation script to avoid invalid cron time 01/14/2008
       * add 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 
       * 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
       * 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/, 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 07/16/2007 Bug fix release

       * remove a debug "die" in the code 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 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:, remove the spaces from the end of the DESCRIPTION
       * add, 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
       * renamed to
       * 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
       * The agent setting can be preinitialised with /etc/ocsinventory/ocsinventory-agent.cfg or
       * 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, and
       * 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)
       * replaced by
       * 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