Code

collectd.git
14 years agoProcesses plugin: Fix a minor typo.
Clément Stenac [Sat, 27 Feb 2010 20:22:47 +0000 (21:22 +0100)]
Processes plugin: Fix a minor typo.

14 years agoExec plugin: Add a missing folding marker.
Florian Forster [Tue, 9 Mar 2010 17:51:08 +0000 (18:51 +0100)]
Exec plugin: Add a missing folding marker.

14 years agoExec plugin: Set the "noreturn" attribute on the "exec_child" function.
Florian Forster [Tue, 9 Mar 2010 17:50:55 +0000 (18:50 +0100)]
Exec plugin: Set the "noreturn" attribute on the "exec_child" function.

14 years agoExec plugin: Reset the "PL_RUNNING" if "fork_child()" fails.
Florian Forster [Tue, 9 Mar 2010 17:50:32 +0000 (18:50 +0100)]
Exec plugin: Reset the "PL_RUNNING" if "fork_child()" fails.

14 years agolibiptc: avoid strict-aliasing warnings
Jan Engelhardt [Tue, 16 Feb 2010 20:16:47 +0000 (21:16 +0100)]
libiptc: avoid strict-aliasing warnings

libiptc: avoid strict-aliasing warnings

In file included from libiptc/libip4tc.c:117:0:
libiptc/libiptc.c: In function ‘__iptcc_p_del_policy’:
libiptc/libiptc.c:826:4: warning: dereferencing type-punned pointer will break
strict-aliasing rules
libiptc/libiptc.c: In function ‘iptc_get_target’:
libiptc/libiptc.c:1650:4: warning: dereferencing type-punned pointer will break
strict-aliasing rules
libiptc/libip4tc.c: In function ‘dump_entry’:
libiptc/libip4tc.c:157:3: warning: dereferencing type-punned pointer will break
strict-aliasing rules
  CC     libiptc/libip6tc.lo
In file included from libiptc/libip6tc.c:112:0:
libiptc/libiptc.c: In function ‘__iptcc_p_del_policy’:
libiptc/libiptc.c:826:4: warning: dereferencing type-punned pointer will break
strict-aliasing rules
libiptc/libiptc.c: In function ‘ip6tc_get_target’:
libiptc/libiptc.c:1650:4: warning: dereferencing type-punned pointer will break
strict-aliasing rules
libiptc/libip6tc.c: In function ‘dump_entry’:
libiptc/libip6tc.c:188:3: warning: dereferencing type-punned pointer will break
strict-aliasing rules

Signed-off-by: Jan Engelhardt <jengelh@medozas.de>
Rebased for collectd/src/owniptc: Alan Pevec <apevec@gmail.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
14 years agoMerge remote branch 'origin/collectd-4.8' into collectd-4.8
Florian Forster [Tue, 9 Mar 2010 15:55:20 +0000 (16:55 +0100)]
Merge remote branch 'origin/collectd-4.8' into collectd-4.8

14 years agoconfigure.in: Check for "htonll".
Manuel Sanmartin (no email) [Tue, 9 Mar 2010 15:12:51 +0000 (16:12 +0100)]
configure.in: Check for "htonll".

The first patch adds support to check if the htonl and htonll functions
(which are used in AIX port) are available in configure. Until now the
AIX port used these functions without perform any existence test.

Signed-off-by: Florian Forster <octo@leeloo.lan.home.verplant.org>
14 years agomemcached plugin: Add hack for AIX compatibility.
Manuel Sanmartin (no email) [Tue, 9 Mar 2010 14:40:00 +0000 (15:40 +0100)]
memcached plugin: Add hack for AIX compatibility.

The second one port memcached plugin to AIX. Since AIX don't have
MSG_DONTWAIT flag support, we use MSG_NONBLOCK... and we hope to work
fine ever :)

Signed-off-by: Florian Forster <octo@leeloo.lan.home.verplant.org>
14 years agooracle plugin: Fix semantics of OCIAttrGet.
Florian Forster [Wed, 3 Mar 2010 13:01:30 +0000 (14:01 +0100)]
oracle plugin: Fix semantics of OCIAttrGet.

Apparently it returns success if it could fetch the parameter value and
doesn't interpret the value itself. So returning NULL when querying for
OCI_ATTR_SERVER_STATUS does not result in an error. Handle this as a
lost connection.

Thanks to Sven for pointing this out :)

14 years ago.mailmap: Added Rodolphe Quiedeville <rquiedeville@bearstech.com>.
Sebastian Harl [Thu, 25 Feb 2010 23:31:51 +0000 (00:31 +0100)]
.mailmap: Added Rodolphe Quiedeville <rquiedeville@bearstech.com>.

His name was mis-spelled in one commit as Rodolphe Quiedeville*l*.

14 years agodebian/: Removed ancient Debian package files.
Florian Forster [Thu, 11 Feb 2010 13:03:38 +0000 (14:03 +0100)]
debian/: Removed ancient Debian package files.

You might want to look at git://git.tokkee.org/pkg-collectd.git instead.

14 years agoconfigure.in: Fix three small typos.
Florian Forster [Wed, 10 Feb 2010 14:24:23 +0000 (15:24 +0100)]
configure.in: Fix three small typos.

14 years agoBuild system: Put Java class files into a .jar file.
Amit Gupta [Wed, 10 Feb 2010 13:37:36 +0000 (14:37 +0100)]
Build system: Put Java class files into a .jar file.

Hi,

I was wondering why the java plugin api class files are published under
share/collectd/java. Ideally, a java-plugin.jar file containing all the class
files should get published rather than the individual class files.
Additionally, the jar files IMO should get published to the lib directory where
the so files are sitting rather than the share directory.

Same holds true for jmx class files as well (probably jmx.jar?).

I could work on this if everyone is okay with it.

Regards
Amit

14 years agosrc/utils_cmd_listval.c: Fix a memory leak.
Florian Forster [Wed, 10 Feb 2010 13:01:37 +0000 (14:01 +0100)]
src/utils_cmd_listval.c: Fix a memory leak.

Thanks to Peter Warasin for figuring this out. His "garbage collector" patch
may replace this solution in future versions of collectd.

14 years agoBugfix: correctly handle spurious wakeups in pthread_cond_timedwait
Michael Stapelberg [Sat, 6 Feb 2010 15:10:33 +0000 (16:10 +0100)]
Bugfix: correctly handle spurious wakeups in pthread_cond_timedwait

This fixes problems storing data in rrd files on NetBSD 5.0 with more
than one CPU.

Signed-off-by: Florian Forster <octo@huhu.verplant.org>
14 years agosrc/utils_format_json.c: Use "isfinite" rather than "isinf".
Florian Forster [Thu, 4 Feb 2010 12:07:43 +0000 (13:07 +0100)]
src/utils_format_json.c: Use "isfinite" rather than "isinf".

Makes it a bit easier to read.

14 years agosrc/collectd.h: Add fallback implementations of "isfinite" and "isinf".
Florian Forster [Thu, 4 Feb 2010 12:07:06 +0000 (13:07 +0100)]
src/collectd.h: Add fallback implementations of "isfinite" and "isinf".

14 years agoutils_format_json: serialize nan and inf as null, as per JSON spec
Chris Buben [Thu, 4 Feb 2010 08:52:30 +0000 (00:52 -0800)]
utils_format_json: serialize nan and inf as null, as per JSON spec

I'm deserializing JSON output from the write_http plugin using ruby-yajl.
yajl was puking on the literal value nan encoded in the output.

[
    {
        "plugin": "memcached",
        "interval": 10,
        "host": "myhost",
        "values": [
            nan,
            5
        ],
        "time": 1265239180,
        "plugin_instance": "",
        "type_instance": "",
        "type": "ps_count"
    }
]

After some research, ECMA-262 15.12.3 says nan and infinite numbers
aren't representable in JSON and should be serialized as the string
null. I figure any strictly-compliant JSON parser will fail on parsing
JSON data containing nans as emitted by collectd's utils_format_json
routines.

This patch makes collectd's JSON output compliant in the case of
infinite or nan gauge values.

Signed-off-by: Florian Forster <octo@huhu.verplant.org>
14 years agoping plugin: Improved some error messages.
Sebastian Harl [Thu, 28 Jan 2010 22:29:25 +0000 (23:29 +0100)]
ping plugin: Improved some error messages.

14 years agocollectd{-perl,.conf}(5), {my,postgre}sql plugins: Fixed some typos.
Sebastian Harl [Sun, 24 Jan 2010 12:20:43 +0000 (13:20 +0100)]
collectd{-perl,.conf}(5), {my,postgre}sql plugins: Fixed some typos.

Thanks to lintian(1) for catching (some of) those! :-)

14 years agoapache plugin: Fix collection of the "apache_connections" value with Apache 2.*.
Florian Forster [Sat, 23 Jan 2010 12:19:49 +0000 (13:19 +0100)]
apache plugin: Fix collection of the "apache_connections" value with Apache 2.*.

Thanks to Gary (bug tracker) for pointing this out :)

14 years agocontrib/collection.cgi: Added ability to hide specified types.
Pavel Piatruk [Fri, 22 Jan 2010 08:13:29 +0000 (09:13 +0100)]
contrib/collection.cgi: Added ability to hide specified types.

It is useful when you don't want to see many graphs. How to use the patch:
apply it to collection.cgi and add lines with keyword ,,dontshowtype'' to
/etc/collectd/collection.conf:

dontshowtype: "if_errors"
dontshowtype: "if_packets"

Then you will see only if_octets types in "interface" plugin page.

Via Debian bug #566199.

14 years agosrc/filter_chain.c: Make info-message more verbose.
Florian Forster [Thu, 21 Jan 2010 10:36:30 +0000 (11:36 +0100)]
src/filter_chain.c: Make info-message more verbose.

14 years agoUse Curl AnyAuth (digest+basic) instead of just digest
Paul Sadauskas [Sun, 17 Jan 2010 19:54:06 +0000 (12:54 -0700)]
Use Curl AnyAuth (digest+basic) instead of just digest

14 years agoMerge commit 'tokkee/sh/collectd-4.8' into collectd-4.8
Florian Forster [Wed, 20 Jan 2010 09:32:01 +0000 (10:32 +0100)]
Merge commit 'tokkee/sh/collectd-4.8' into collectd-4.8

14 years agoexec plugin: Improved some error messages.
Sebastian Harl [Fri, 15 Jan 2010 09:07:39 +0000 (10:07 +0100)]
exec plugin: Improved some error messages.

14 years agocontrib/exec-munin.px: Add GPLv2 header.
Florian Forster [Fri, 15 Jan 2010 09:16:18 +0000 (10:16 +0100)]
contrib/exec-munin.px: Add GPLv2 header.

14 years agoChangeLog: Updated for version 4.8.3. collectd-4.8.3
Florian Forster [Wed, 13 Jan 2010 16:55:02 +0000 (17:55 +0100)]
ChangeLog: Updated for version 4.8.3.

14 years agoMerge commit 'tokkee/sh/collectd-4.8' into collectd-4.8
Florian Forster [Wed, 13 Jan 2010 14:52:12 +0000 (15:52 +0100)]
Merge commit 'tokkee/sh/collectd-4.8' into collectd-4.8

14 years agocollectd.conf(5): Rephrase a weird sentence in the cURL-JSON documentation.
Florian Forster [Wed, 13 Jan 2010 14:51:41 +0000 (15:51 +0100)]
collectd.conf(5): Rephrase a weird sentence in the cURL-JSON documentation.

14 years agocollectd.conf(5): Remove trailing whitespace.
Florian Forster [Wed, 13 Jan 2010 14:51:02 +0000 (15:51 +0100)]
collectd.conf(5): Remove trailing whitespace.

14 years agotypes.db(5): Mention the types "ABSOLUTE" and "DERIVE" as well.
Sebastian Harl [Wed, 13 Jan 2010 12:21:47 +0000 (13:21 +0100)]
types.db(5): Mention the types "ABSOLUTE" and "DERIVE" as well.

14 years agoMerge branch 'collectd-4.7' into collectd-4.8
Florian Forster [Wed, 13 Jan 2010 11:10:20 +0000 (12:10 +0100)]
Merge branch 'collectd-4.7' into collectd-4.8

14 years agorrdtool plugin: Correctly initialize the ->random_variation member.
Florian Forster [Mon, 4 Jan 2010 22:52:54 +0000 (23:52 +0100)]
rrdtool plugin: Correctly initialize the ->random_variation member.

This lead to huge negative values in that member, causing values to be only
written to upon exit. D'oh!

14 years agocontrib/snmp-probe-host.px: Implemented the “--exclude” option.
Florian Forster [Wed, 23 Dec 2009 11:40:14 +0000 (12:40 +0100)]
contrib/snmp-probe-host.px: Implemented the “--exclude” option.

14 years agocollectd-snmp(5): Comma fixes.
Sebastian Harl [Mon, 21 Dec 2009 23:09:04 +0000 (00:09 +0100)]
collectd-snmp(5): Comma fixes.

14 years agoBumped version to 4.8.2; Updated ChangeLog. collectd-4.8.2
Florian Forster [Fri, 18 Dec 2009 08:50:36 +0000 (09:50 +0100)]
Bumped version to 4.8.2; Updated ChangeLog.

14 years agoMerge branch 'collectd-4.7' into collectd-4.8
Florian Forster [Fri, 18 Dec 2009 08:43:36 +0000 (09:43 +0100)]
Merge branch 'collectd-4.7' into collectd-4.8

Network plugin license change with Aman Gupta's permission.

Conflicts:
ChangeLog
version-gen.sh

14 years agoBumped version to 4.7.5; Updated ChangeLog. collectd-4.7.5
Florian Forster [Fri, 18 Dec 2009 08:32:15 +0000 (09:32 +0100)]
Bumped version to 4.7.5; Updated ChangeLog.

14 years agosrc/plugin.c: plugin_log: Print to stderr if no log plugin has been loaded.
Florian Forster [Thu, 1 Oct 2009 19:27:40 +0000 (21:27 +0200)]
src/plugin.c: plugin_log: Print to stderr if no log plugin has been loaded.

14 years agonetwork plugin: Change the license to LGPL 2.1.
Florian Forster [Wed, 16 Dec 2009 11:50:41 +0000 (12:50 +0100)]
network plugin: Change the license to LGPL 2.1.

This is done with Amit Gupta's consent. He did write changes for later versions
of the plugin.

14 years agooracle plugin: Check the connection status and reconnect if required.
Florian Forster [Wed, 16 Dec 2009 09:45:54 +0000 (10:45 +0100)]
oracle plugin: Check the connection status and reconnect if required.

14 years agoMerge branch 'collectd-4.7' into collectd-4.8
Florian Forster [Tue, 15 Dec 2009 12:11:25 +0000 (13:11 +0100)]
Merge branch 'collectd-4.7' into collectd-4.8

14 years agomemory plugin: Fixed handling of >4G of memory on Mac OS X.
Florian Forster [Mon, 14 Dec 2009 16:58:55 +0000 (17:58 +0100)]
memory plugin: Fixed handling of >4G of memory on Mac OS X.

14 years agocontrib/collection3: Add Regexp::Common to the README.
Florian Forster [Sun, 13 Dec 2009 22:38:45 +0000 (23:38 +0100)]
contrib/collection3: Add Regexp::Common to the README.

14 years agoconfigure: Fixed copy&paste error in --with-libupsclient. sh/collectd-4.7
Sebastian Harl [Sun, 13 Dec 2009 18:01:41 +0000 (19:01 +0100)]
configure: Fixed copy&paste error in --with-libupsclient.

14 years agoChangeLog: Fix a typo.
Florian Forster [Wed, 9 Dec 2009 16:28:55 +0000 (17:28 +0100)]
ChangeLog: Fix a typo.

14 years agoMerge branch 'collectd-4.7' into collectd-4.8
Florian Forster [Wed, 9 Dec 2009 15:50:42 +0000 (16:50 +0100)]
Merge branch 'collectd-4.7' into collectd-4.8

14 years agosrc/utils_cmd_listval.c: Free memory returned by `uc_get_names'.
Ben Knight [Tue, 1 Dec 2009 08:03:27 +0000 (09:03 +0100)]
src/utils_cmd_listval.c: Free memory returned by `uc_get_names'.

We've run into a memory leak in collectd, triggered by usage of 'listval'
via the unixsock plugin.

When making a 'listval' call, utils_cmd_listval.c:handle_listval() calls
utils_cache.c:uc_get_names() to retrieve a list of active value names from the
internal cache. uc_get_names() uses realloc() to allocate memory in which to
store the list, and returns pointers.

handle_listval() does not perform a free() on the returned memory. Each time
listval is called, some memory is leaked. handle_getval() does not suffer from
the same problem - a free() is called in that case.

15 years agocontrib/examples/MyPlugin.pm: Updated to new interface.
Florian Forster [Mon, 23 Nov 2009 20:45:33 +0000 (21:45 +0100)]
contrib/examples/MyPlugin.pm: Updated to new interface.

15 years agoprotocols plugins: Fixed a typo in an error message.
Sebastian Harl [Sat, 21 Nov 2009 12:07:16 +0000 (13:07 +0100)]
protocols plugins: Fixed a typo in an error message.

Thanks to lintian(1) for finding that :-)

15 years agosnmp plugin: Rename a variable (missed during merge).
Florian Forster [Sat, 14 Nov 2009 08:00:16 +0000 (09:00 +0100)]
snmp plugin: Rename a variable (missed during merge).

15 years agoMerge branch 'collectd-4.7' into collectd-4.8
Florian Forster [Tue, 10 Nov 2009 19:17:36 +0000 (20:17 +0100)]
Merge branch 'collectd-4.7' into collectd-4.8

Conflicts:
src/snmp.c

15 years agocontrib/snmp-data.conf: Add support for Mikrotik RouterBoards.
Florian Forster [Mon, 9 Nov 2009 11:05:40 +0000 (12:05 +0100)]
contrib/snmp-data.conf: Add support for Mikrotik RouterBoards.

15 years agosnmp plugin: Fix handling of strings with control characters.
Florian Forster [Mon, 9 Nov 2009 11:04:23 +0000 (12:04 +0100)]
snmp plugin: Fix handling of strings with control characters.

If a byte of a string has a value <32, the string is printed as a
hex-string. This fixes issues with some devices returning MAC addresses
as "strings".

15 years agosnmp plugin: Fix handling of negative values.
Florian Forster [Mon, 9 Nov 2009 11:03:20 +0000 (12:03 +0100)]
snmp plugin: Fix handling of negative values.

15 years agosrc/Makefile: Support parallel builds when creating the manpages.
Sebastian Harl [Wed, 28 Oct 2009 18:32:36 +0000 (19:32 +0100)]
src/Makefile: Support parallel builds when creating the manpages.

A temporary file name is used when creating the manpages. So far, a static
file name had been used for that, thus causing race conditions. Now, a unique
suffix (PID) is used to fix that.

Thanks to BC^bd for reporting that on IRC!

15 years agorrdcached plugin: Work around a bug in RRDtool 1.4rc2.
Sebastian Harl [Wed, 28 Oct 2009 16:38:51 +0000 (17:38 +0100)]
rrdcached plugin: Work around a bug in RRDtool 1.4rc2.

rrd_client.h in that pre-release checked for HAVE_CONFIG_H and would then try
to include rrd_config.h, which, obviously, is not available in collectd.

15 years agoGenericJMX plugin: Close and re-open the connection upon I/O-errors.
Florian Forster [Wed, 28 Oct 2009 12:31:06 +0000 (13:31 +0100)]
GenericJMX plugin: Close and re-open the connection upon I/O-errors.

15 years agoMerge branch 'collectd-4.7' into collectd-4.8
Florian Forster [Wed, 21 Oct 2009 09:34:07 +0000 (11:34 +0200)]
Merge branch 'collectd-4.7' into collectd-4.8

Conflicts:
.gitignore

15 years agocontrib/collectd_unixsock.py: Support all plain text protocol commands
Garret Heaton [Sun, 18 Oct 2009 22:34:13 +0000 (15:34 -0700)]
contrib/collectd_unixsock.py: Support all plain text protocol commands

Also rename class from Collect to Collectd and improve output when run
as standalone script.

15 years agocontrib/collectd_unixsock.py: Follow Python PEP-8 syntax requirements.
Garret Heaton [Sun, 18 Oct 2009 21:19:26 +0000 (14:19 -0700)]
contrib/collectd_unixsock.py: Follow Python PEP-8 syntax requirements.

Also remove comment which seems to refer to a file outside of the
collectd project.

15 years agogitignore: Ignore compiled python files
Garret Heaton [Sun, 18 Oct 2009 21:09:26 +0000 (14:09 -0700)]
gitignore: Ignore compiled python files

15 years agoReplace dashes with underscores in python modules
Garret Heaton [Sun, 18 Oct 2009 21:06:22 +0000 (14:06 -0700)]
Replace dashes with underscores in python modules

It's not possible to import python modules with dashes in the name.
See http://bit.ly/2t7fcy for more information.

15 years agoIgnore more java bindings classes
Garret Heaton [Sun, 18 Oct 2009 20:29:23 +0000 (13:29 -0700)]
Ignore more java bindings classes

15 years agoMerge branch 'collectd-4.7' into collectd-4.8
Florian Forster [Wed, 21 Oct 2009 08:20:27 +0000 (10:20 +0200)]
Merge branch 'collectd-4.7' into collectd-4.8

15 years agogmond plugin: Fixed a typo.
Sebastian Harl [Tue, 13 Oct 2009 17:39:37 +0000 (19:39 +0200)]
gmond plugin: Fixed a typo.

For some reason, the value_t members "derive" and "absolute" had been spelled
in all capital letters, obviously resulting in a build error.

15 years agocollectd.conf: Added the "madwifi" and "match_empty_counter" plugins.
Sebastian Harl [Tue, 13 Oct 2009 17:34:20 +0000 (19:34 +0200)]
collectd.conf: Added the "madwifi" and "match_empty_counter" plugins.

15 years agoREADME: Added missing prerequisites.
Sebastian Harl [Sun, 11 Oct 2009 16:43:00 +0000 (18:43 +0200)]
README: Added missing prerequisites.

15 years agoconfigure.in: Don't use “find -L”.
Florian Forster [Thu, 8 Oct 2009 17:00:21 +0000 (19:00 +0200)]
configure.in: Don't use “find -L”.

Apparently the “-L” is a (new) GNU extension. :/

15 years agocollectd-snmp(5): Fix a typo.
Florian Forster [Thu, 8 Oct 2009 16:57:04 +0000 (18:57 +0200)]
collectd-snmp(5): Fix a typo.

Thanks to mspo.

15 years agoChangeLog: Fix a stupid typo. collectd-4.8.1
Florian Forster [Sun, 4 Oct 2009 07:45:00 +0000 (09:45 +0200)]
ChangeLog: Fix a stupid typo.

15 years agoBumped version to 4.8.1; Updated ChangeLog.
Florian Forster [Sun, 4 Oct 2009 07:06:18 +0000 (09:06 +0200)]
Bumped version to 4.8.1; Updated ChangeLog.

15 years agoMerge branch 'collectd-4.7' into collectd-4.8
Florian Forster [Sun, 4 Oct 2009 07:02:31 +0000 (09:02 +0200)]
Merge branch 'collectd-4.7' into collectd-4.8

Conflicts:
ChangeLog
version-gen.sh

15 years agoBumped version to 4.7.4; Updated ChangeLog. collectd-4.7.4
Florian Forster [Sat, 3 Oct 2009 15:44:24 +0000 (17:44 +0200)]
Bumped version to 4.7.4; Updated ChangeLog.

15 years agoMerge branch 'collectd-4.7' into collectd-4.8
Florian Forster [Fri, 2 Oct 2009 07:50:20 +0000 (09:50 +0200)]
Merge branch 'collectd-4.7' into collectd-4.8

Conflicts:
README

15 years agoREADME: Fix order of the curl_json plugin in the list.
Florian Forster [Fri, 2 Oct 2009 07:47:54 +0000 (09:47 +0200)]
README: Fix order of the curl_json plugin in the list.

15 years agoREADME: Fix order of the curl plugin in the list.
Florian Forster [Fri, 2 Oct 2009 07:47:54 +0000 (09:47 +0200)]
README: Fix order of the curl plugin in the list.

15 years agodf plugin: Fix a typo.
Florian Forster [Fri, 2 Oct 2009 06:27:44 +0000 (08:27 +0200)]
df plugin: Fix a typo.

15 years agoMerge branch 'collectd-4.7' into collectd-4.8
Florian Forster [Thu, 1 Oct 2009 19:33:37 +0000 (21:33 +0200)]
Merge branch 'collectd-4.7' into collectd-4.8

15 years agosrc/types.db: Replace spaces with tabs.
Florian Forster [Thu, 1 Oct 2009 19:30:53 +0000 (21:30 +0200)]
src/types.db: Replace spaces with tabs.

15 years agounixsock plugin: Fix a (well hidden) race condition.
Florian Forster [Wed, 30 Sep 2009 20:49:16 +0000 (22:49 +0200)]
unixsock plugin: Fix a (well hidden) race condition.

Within the client handling thread, fdopen is called twice on the file
descriptor passed to the thread. Later those file handles are closed like:

  fclose (fhin);
  fclose (fhout);

This is a race condition, because the first call to fclose will close the file
descriptor. The second call to fclose will try the same. Usually, it would fail
silently and all is well. On a busy machine, however, another thread may just
have opened a file or accepted a socket. In that case an arbitrary file
descriptor is closed. If the file descriptor is opened yet again fast enough,
data may even end up in a totally wrong location.

As a work-around the file descriptor is not dup'ed so each fdopen operates on
its own file descriptor. As an alternative the "r+" mode and a single file
handle may be suitable, too.

Many thanks to Sven Trenkel for pointing me into the right directioin :)

15 years agolibiptc: Comment out two unused static functions.
Florian Forster [Sat, 26 Sep 2009 08:48:50 +0000 (10:48 +0200)]
libiptc: Comment out two unused static functions.

Thanks to Sven Trenkel for noticing.

15 years agoREADME: Update the URL for libyajl.
Florian Forster [Sat, 19 Sep 2009 08:16:41 +0000 (10:16 +0200)]
README: Update the URL for libyajl.

15 years agoprocesses plugin: Fix handling of Linux 2.4.
Andrés J. Díaz [Sat, 19 Sep 2009 06:45:49 +0000 (08:45 +0200)]
processes plugin: Fix handling of Linux 2.4.

Hi Florian et al

Thanks for the reply, but we detect a minor bug in the previous patch
due to kernel 2.4

The correct patch is attached. The bug is related with kernels 2.4,
where task/ directory do not exists and ps_read_task return -1, which is
catched and raise an error (breaking the ps_read_process function), so a
NaN is dispatched istead of values (number of process:1, number of
threads :1).

Sorry for the inconvenience :(

Regards,
  Andres

Signed-off-by: Florian Forster <octo@leeloo.lan.home.verplant.org>
15 years agosrc/collectd.conf.in: Fix some inconsistencies.
Florian Forster [Sat, 19 Sep 2009 06:07:28 +0000 (08:07 +0200)]
src/collectd.conf.in: Fix some inconsistencies.

Mostly left-overs from renaming plugins. Thanks to Mirko Buffoni for
noticing :)

15 years agoMerge branch 'collectd-4.7' into collectd-4.8
Florian Forster [Thu, 17 Sep 2009 16:33:53 +0000 (18:33 +0200)]
Merge branch 'collectd-4.7' into collectd-4.8

15 years agoperl plugin: Declare the “environ” variable.
Florian Forster [Thu, 17 Sep 2009 16:26:41 +0000 (18:26 +0200)]
perl plugin: Declare the “environ” variable.

15 years agoprocesses plugin: Case argument of “isdigit” to int.
Florian Forster [Thu, 17 Sep 2009 16:02:34 +0000 (18:02 +0200)]
processes plugin: Case argument of “isdigit” to int.

On some platforms passing a char there causes problems :/

15 years agoprocesses plugin: Remove unnecessary call of realloc(3).
Andrés J. Díaz [Thu, 17 Sep 2009 11:15:02 +0000 (13:15 +0200)]
processes plugin: Remove unnecessary call of realloc(3).

Hi Florian (et al)

> you're right, the (re-)allocation of the memory can probably be avoided
> if the function is turned into one with the following prototype:
> -- 8< --
>  static int *ps_read_tasks (int pid,
>     unsigned long *ret_num_proc,
>     unsigned long *ret_num_lwp);
> -- >8 --

Mmm, why not something like: "static int ps_read_task(pid)"?
This returns the number of task for pid passed as argument.
(AFAIK the function only return the number ot threads), why
we need the ret_num_proc and the ret_num_lwp parameters?

My proposal is attached (code is always cleaner than explanations :P)

Regards,
  Andres

Signed-off-by: Florian Forster <octo@huhu.verplant.org>
15 years agoMerge branch 'collectd-4.7' into collectd-4.8
Florian Forster [Thu, 17 Sep 2009 08:58:19 +0000 (10:58 +0200)]
Merge branch 'collectd-4.7' into collectd-4.8

15 years agoBuild system: Check for “libiptc/libip6tc.h” and “linux/netfilter/x_tables.h”, too.
Florian Forster [Thu, 17 Sep 2009 08:56:19 +0000 (10:56 +0200)]
Build system: Check for “libiptc/libip6tc.h” and “linux/netfilter/x_tables.h”, too.

Apparently “linux/netfilter/x_tables.h” is not available with older
kernels which leads to build fails there:
-- 8< --
 In file included from libiptc.c:47,
                  from libip4tc.c:136:
 xtables.h:24:38: linux/netfilter/x_tables.h: No such file or directory
-- >8 --

15 years agoMerge branch 'collectd-4.7' into collectd-4.8
Florian Forster [Thu, 17 Sep 2009 08:16:35 +0000 (10:16 +0200)]
Merge branch 'collectd-4.7' into collectd-4.8

15 years agosrc/owniptc/Makefile.am: Don't search KERNEL_DIR for headers.
Florian Forster [Thu, 17 Sep 2009 08:12:07 +0000 (10:12 +0200)]
src/owniptc/Makefile.am: Don't search KERNEL_DIR for headers.

The iptc library is currenly only enabled, if the required headers where
found without “-I${KERNEL_DIR}”. Adding it to the CFLAGS when building
the shipped version of libiptc just breaks things, for example on
“collectd-master-amd64-linux-2.6”:
  Linux hotdamn 2.6.9-42.ELsmp #1 SMP Tue Aug 15 10:35:26 BST 2006 x86_64 x86_64 x86_64 GNU/Linux

15 years agoMerge branch 'collectd-4.7' into collectd-4.8
Florian Forster [Thu, 17 Sep 2009 07:40:28 +0000 (09:40 +0200)]
Merge branch 'collectd-4.7' into collectd-4.8

15 years agoREADME: Document the “--with-libiptc=shipped” option.
Florian Forster [Thu, 17 Sep 2009 07:40:01 +0000 (09:40 +0200)]
README: Document the “--with-libiptc=shipped” option.

15 years agoBuild system: Further improve libiptc handling.
Florian Forster [Thu, 17 Sep 2009 07:36:35 +0000 (09:36 +0200)]
Build system: Further improve libiptc handling.

Only check for “iptc_handle_t” and “ip6tc_handle_t” if using a
system-wide version of libiptc. If we use the shipped version, we *know*
it provides these types.

15 years agoMerge branch 'collectd-4.7' into collectd-4.8
Florian Forster [Thu, 17 Sep 2009 06:52:56 +0000 (08:52 +0200)]
Merge branch 'collectd-4.7' into collectd-4.8

15 years agoBuild system: Improve detection of the iptc library.
Florian Forster [Thu, 17 Sep 2009 06:44:07 +0000 (08:44 +0200)]
Build system: Improve detection of the iptc library.

When checking for the iptc headers and data types, the configure script
added the kernel directory to the CFLAGS. Later, when actually building
the iptables plugin, the CFLAGS were left untouched.

At least on Debian, the “real” kernel headers are not required – the
libc versions in /usr/include/linux are sufficient. The usage of
KERNEL_DIR has therefore been removed from the iptc checks.

In addition, an directory specified by “--with-libiptc=/path” is no
longer added to the global CFLAGS but rather to the iptables specific
CPPFLAGS.

Hopefully this resolved build problems on various platforms.

15 years agocontrib/collection3: skip host dirs without read access.
Marc Fournier [Wed, 16 Sep 2009 10:17:28 +0000 (12:17 +0200)]
contrib/collection3: skip host dirs without read access.

This patch prevents get_files_from_directory() from
failing when DataDir contains directories which we
don't have access to.

An example would be "lost+found" directories, on
ext2/ext3 filesystems, which belong to root and have
0700 filemode.

Signed-off-by: Marc Fournier <marc.fournier@camptocamp.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>