collectd.git
15 years agoMerge branch 'ek/fscache'
Florian Forster [Fri, 1 May 2009 14:11:09 +0000 (16:11 +0200)]
Merge branch 'ek/fscache'

15 years agoAUTHORS: Added Edward “Koko” Konetzko.
Florian Forster [Fri, 1 May 2009 14:10:28 +0000 (16:10 +0200)]
AUTHORS: Added Edward “Koko” Konetzko.

15 years agofscache plugin: Simplyfied the parsing code.
Florian Forster [Fri, 1 May 2009 14:06:09 +0000 (16:06 +0200)]
fscache plugin: Simplyfied the parsing code.

15 years agoconfigure: Fixed the check for broken Perl_load_module().
Sebastian Harl [Fri, 1 May 2009 13:40:02 +0000 (15:40 +0200)]
configure: Fixed the check for broken Perl_load_module().

Do not initialize AC_CACHE_CHECK cache-id's - that'd be the same as having the
initial value in the cache. This was introduced in commit 61c19cc1.

15 years agofscache plugin: Add new plugin for Linux' file-system based caching framework.
Edward Koko Konetzko [Thu, 30 Apr 2009 03:26:52 +0000 (22:26 -0500)]
fscache plugin: Add new plugin for Linux' file-system based caching framework.

Tried to submit the patch via "git send-mail" but I don't think it worked if
you already have the patch disregard the attachment.

Looking forward to your feedback, I am sure there are a few issues its been a
few years since I programmed in C. I have been running this in my test lab at
work for a few days now with no issues.

With 62 metrics I would like to modify the code to group them by their
classification and possibly add configuration support. If the changes are
finished this weekend is it ok to send an updated patch?

Thanks
Edward

Signed-off-by: Edward "Koko" Konetzko <konetzed@quixoticagony.com>
Signed-off-by: Florian Forster <octo@leeloo.lan.home.verplant.org>
15 years agoMerge branch 'ag/apache'
Florian Forster [Fri, 1 May 2009 13:07:04 +0000 (15:07 +0200)]
Merge branch 'ag/apache'

15 years agoapache plugin: Be more verbose when automatically determine the server software.
Florian Forster [Fri, 1 May 2009 12:59:32 +0000 (14:59 +0200)]
apache plugin: Be more verbose when automatically determine the server software.

15 years agoapache plugin: Replace C++-style comments.
Florian Forster [Fri, 1 May 2009 12:43:08 +0000 (14:43 +0200)]
apache plugin: Replace C++-style comments.

15 years agoapache plugin: Use the HTTP header to determine the server software.
Amit Gupta [Fri, 1 May 2009 12:38:50 +0000 (14:38 +0200)]
apache plugin: Use the HTTP header to determine the server software.

On Wed, Apr 22, 2009 at 1:53 PM, Florian Forster <octo@verplant.org> wrote:
> I think we have two options left:
>
>  - Set a header callback using the CURLOPT_HEADERFUNCTION option and
>   look for the <91>Server<92> header field. If it contains <93>lighttpd<94>, assume
>   lighttpd, Apache otherwise.
>
>  - Let the user configure which server software he's using.
>
> The two could be combined, of course: Use the user's setting if he has
> given one, (try to) determine the server software automatically if not.
>
> What do you think?
yeah this sounds good. While I thought about parsing the headers
initially but then the server headers can easily be changed, so I
wasn't sure about this approach earlier. Combing this with the user
specified server configuration value seems like the best solution.

Do find the patch attached. I am using st->server_type variable which
will be set to APACHE or LIGHTTPD based on the following logic:
- If the user has specified Server element in the conf file and it is
"apache" or "lighttpd", then set  st->server_type variable
appropriately, otherwise ignore the Server value
- Parse the headers (only if the Server element is NULL or invalid) to
determine the type and set the st->server_type variable accordingly
- if  st->server_type is not set as yet, then default it to apache

Regards
Amit

Signed-off-by: Florian Forster <octo@huhu.verplant.org>
15 years agoAdd _XOPEN_SOURCE=600 to all .c files with standards compliance defines.
Florian Forster [Sat, 25 Apr 2009 22:33:09 +0000 (00:33 +0200)]
Add _XOPEN_SOURCE=600 to all .c files with standards compliance defines.

This should hopefully give us strerror_r and strdup and similar neat
functions.

15 years agoMerge branch 'ff/auth'
Florian Forster [Sat, 25 Apr 2009 21:58:23 +0000 (23:58 +0200)]
Merge branch 'ff/auth'

15 years agocollectd.conf(5): Add some information about the AuthFile format.
Florian Forster [Sat, 25 Apr 2009 21:56:27 +0000 (23:56 +0200)]
collectd.conf(5): Add some information about the AuthFile format.

15 years agonetwork plugin: Defines for non-gcrypt-code.
Florian Forster [Sat, 25 Apr 2009 21:33:42 +0000 (23:33 +0200)]
network plugin: Defines for non-gcrypt-code.

15 years agocollectd.conf(5): Document the new authentication stuff.
Florian Forster [Sat, 25 Apr 2009 21:27:49 +0000 (23:27 +0200)]
collectd.conf(5): Document the new authentication stuff.

15 years agonetwork plugin: Some fixed to get encryption up and running again.
Florian Forster [Sat, 25 Apr 2009 13:39:11 +0000 (15:39 +0200)]
network plugin: Some fixed to get encryption up and running again.

Wow, that was easy!

15 years agoMerge branch 'master' into ff/auth
Florian Forster [Sat, 25 Apr 2009 13:29:08 +0000 (15:29 +0200)]
Merge branch 'master' into ff/auth

Conflicts:
src/network.c

15 years agonetwork plugin: Move towards a user/password based solution.
Florian Forster [Sat, 25 Apr 2009 13:16:32 +0000 (15:16 +0200)]
network plugin: Move towards a user/password based solution.

15 years agosrc/utils_fbhash.c: Implementation of a file-backed hash.
Florian Forster [Sat, 25 Apr 2009 13:16:01 +0000 (15:16 +0200)]
src/utils_fbhash.c: Implementation of a file-backed hash.

This is going to be used for password files on the server.

15 years agophp-collection: add basic support for meta-selections
Bruno Prémont [Mon, 20 Apr 2009 20:37:42 +0000 (22:37 +0200)]
php-collection: add basic support for meta-selections

Add support for new meta selections allowing addition of graphs
with wildcard behavior.
This adds support for @all selection which matches any values
for the given identifier part.
In addition those types for which meta graphs exist now also list the
individual type instances in addition to the meta graph key for separate
graphing.

In order to support such new groups the lookup code has been refactored
to use a single scanning function which recursively traveses the
collectd RRD output directory for hosts, plugins, types and passing the
discovered data to callback functions for use. The callbacks returns
true to indicate traversal should continue on to next depth level and
false to tell it to continue with next element.
e.g. true on a host means it should look for plugins for given host,
false to continue with next host.

Signed-off-by: Florian Forster <octo@huhu.verplant.org>
15 years agophp-collection: graph definition improvements for bind plugin
Bruno Prémont [Mon, 20 Apr 2009 20:36:12 +0000 (22:36 +0200)]
php-collection: graph definition improvements for bind plugin

Add new dns_qtype_cached type for metagraph and switch memory metagraph
to line-based for bind plugin as the values from bind plugin are not
cumulative.

Signed-off-by: Florian Forster <octo@huhu.verplant.org>
15 years agophp-collection: New graph toolbox
Bruno Prémont [Mon, 20 Apr 2009 20:35:25 +0000 (22:35 +0200)]
php-collection: New graph toolbox

This patch creates a new toolbox which can be show on a per-graph base
by clicking on a graph.

This box allows changing the displayed period of the selected graph
as well as toggle the logarithmic scale and legend details flags.

The graph reordering, refresh and delete tools have been moved from
right graph edge to this new toolbox.

Signed-off-by: Florian Forster <octo@huhu.verplant.org>
15 years agomysql plugin: Replace all `magic numbers' (static string lengths).
Rodolphe Quiédeville [Thu, 23 Apr 2009 09:33:54 +0000 (11:33 +0200)]
mysql plugin: Replace all `magic numbers' (static string lengths).

I saw you correct my patch to suppress 'magic numbers', as I copy/paste another
part I suppose you want to supress all off them, I dit it in this patch. This
patch correct the typo I made on my name.

Regards

--
Rodolphe Quiedeville
www.bearstech.com

15 years agoconfigure.in, network plugin: Use all tests to decide about gcrypt support.
Florian Forster [Thu, 23 Apr 2009 09:10:26 +0000 (11:10 +0200)]
configure.in, network plugin: Use all tests to decide about gcrypt support.

On Doug's OpenBSD machine I've seen:
 configure: gcrypt CPPFLAGS: -I/usr/local/include  -I/usr/local/include
 checking gcrypt.h usability... yes
 checking gcrypt.h presence... yes
 checking for gcrypt.h... yes
 configure: gcrypt LDFLAGS: -L/usr/local/lib
 checking for gcry_md_hash_buffer in -lgcrypt... no

Because so far the network plugin only used the existence of the header
file to determine whether or not to enable `gcrypt' support, the build
fails. With this patch, the plugin will use a define that's only
available if *all* tests were successful.

15 years agomysql plugin: Use `strlen ("Table_locks_")' rather than `12'.
Florian Forster [Thu, 23 Apr 2009 07:35:46 +0000 (09:35 +0200)]
mysql plugin: Use `strlen ("Table_locks_")' rather than `12'.

15 years agomysql plugin: Add `lock' statistics.
Rodolphe Quiédevillel [Thu, 23 Apr 2009 07:16:08 +0000 (09:16 +0200)]
mysql plugin: Add `lock' statistics.

Hi,

We evaluate collectd for internal use in our global monitoring system. For that
we need to monitor mysql locks, so as collectd doesn't do this I wrote a little
patch. This patch is based on 4.6.2 version and modify only src/mysql.c, hope
you'll find it usefull. If this patch is acceptable please feel free to
integrate it in your next release.

Regards,

--
Rodolphe Quiedeville
www.bearstech.com

15 years agoirq plugin: Parse interrupt counters as unsigned long long.
Tomasz Pala [Sat, 18 Apr 2009 15:45:01 +0000 (17:45 +0200)]
irq plugin: Parse interrupt counters as unsigned long long.

Hello,

attached patch fixes accounting of most frequent interrupts (like NICs
on routers). E.g. in my case:

213:      76266      76357      76250      76397 2408617852 2411844062 2411642538 2411814531   PCI-MSI-edge      eth1
214: 2621368360 2621463385 2621343444 2621386931    2349184         28         35         32   PCI-MSI-edge      eth0

Here LONG_MAX (2147483647L) overflows in 10 days uptime and strtol()
returns the same value.

As all the values (including counter_t) are unsigned long long int, the
fix is trivial (for now there's no need to check for irq_value overflow;>).

--
Tomasz Pala <gotar@pld-linux.org>

Signed-off-by: Florian Forster <octo@leeloo.lan.home.verplant.org>
15 years agoMerge branch 'master' into ag/apache
Florian Forster [Mon, 20 Apr 2009 18:41:55 +0000 (20:41 +0200)]
Merge branch 'master' into ag/apache

Conflicts:
src/apache.c

15 years agoapache plugin: Remove the `connect' variable: It wasn't really being used.
Florian Forster [Mon, 20 Apr 2009 18:39:27 +0000 (20:39 +0200)]
apache plugin: Remove the `connect' variable: It wasn't really being used.

15 years agoapache plugin: Replace C++-style comments.
Florian Forster [Mon, 20 Apr 2009 18:26:44 +0000 (20:26 +0200)]
apache plugin: Replace C++-style comments.

15 years agoapache plugin: Add support for lighttpd's scoreboard metrics.
Amit Gupta [Mon, 20 Apr 2009 16:40:49 +0000 (22:10 +0530)]
apache plugin: Add support for lighttpd's scoreboard metrics.

Hi,

Do find the patch for lighttpd scoreboard attached. Let me know if
this patch looks okay.

Regards
Amit

Signed-off-by: Florian Forster <octo@leeloo.lan.home.verplant.org>
15 years agoapache plugin: Check if an URL was given at configuration time.
Florian Forster [Mon, 20 Apr 2009 18:12:53 +0000 (20:12 +0200)]
apache plugin: Check if an URL was given at configuration time.

15 years agoapache plugin: Use boolean members for "verify_{peer,host}".
Florian Forster [Mon, 20 Apr 2009 18:10:26 +0000 (20:10 +0200)]
apache plugin: Use boolean members for "verify_{peer,host}".

15 years agoapache plugin: Use the "complex read" interface.
Florian Forster [Mon, 20 Apr 2009 17:52:19 +0000 (19:52 +0200)]
apache plugin: Use the "complex read" interface.

15 years agogmond plugin: Update copyright notice.
Florian Forster [Mon, 20 Apr 2009 14:11:20 +0000 (16:11 +0200)]
gmond plugin: Update copyright notice.

15 years agoMerge branch 'fl/memcached'
Florian Forster [Mon, 20 Apr 2009 13:09:56 +0000 (15:09 +0200)]
Merge branch 'fl/memcached'

15 years agomemcached plugin: Improve coding style a bit.
Florian Forster [Mon, 20 Apr 2009 13:02:12 +0000 (15:02 +0200)]
memcached plugin: Improve coding style a bit.

15 years agomemory plugin: Fix the order of the #ifdef's.
Florian Forster [Mon, 20 Apr 2009 13:03:45 +0000 (15:03 +0200)]
memory plugin: Fix the order of the #ifdef's.

Linux has sysctl too. I'm using the same order as in the CPU plugin here,
i. e.:
 * Linux
 * kstat
 * sysctl

15 years agoapache plugin: Fix the signature of the curl callback function.
Florian Forster [Mon, 20 Apr 2009 13:03:24 +0000 (15:03 +0200)]
apache plugin: Fix the signature of the curl callback function.

15 years agomemcached plugin: Fix indentation: Indent all lines using tabs.
Florian Forster [Mon, 20 Apr 2009 12:25:13 +0000 (14:25 +0200)]
memcached plugin: Fix indentation: Indent all lines using tabs.

15 years agomemcached plugin: List Franck Lombardi as copyright holder.
Florian Forster [Mon, 20 Apr 2009 12:24:09 +0000 (14:24 +0200)]
memcached plugin: List Franck Lombardi as copyright holder.

15 years agomemcached plugin: Remove trailing whitespace.
Florian Forster [Mon, 20 Apr 2009 12:14:45 +0000 (14:14 +0200)]
memcached plugin: Remove trailing whitespace.

15 years agomemcache plugin: Make connecting via UNIX socket possible.
Franck Lombardi (no email) [Thu, 16 Apr 2009 15:18:44 +0000 (17:18 +0200)]
memcache plugin: Make connecting via UNIX socket possible.

Hello,

As the bugtracker is broken, I'm sending you this patch against v4.6.2
It was done by one of my collegues (Franck Lombardi)
As Franck doesn't want his email address to go in the wild, I proposed
to send it for him.

It adds a new configuration option "Socket" for this pluggin

i'll try to upload my patch there once Mantis is back to normal

Cheers

Stéphane Loeuillet

Seulement dans collectd-4.6.2-fl/bindings: .perl-directory-stamp
Seulement dans collectd-4.6.2/src/libcollectdclient: lcc_features.h

Signed-off-by: Florian Forster <octo@huhu.verplant.org>
15 years agoconfigure.in: Active the memory plugin if sysctl(3) is available.
Florian Forster [Sat, 18 Apr 2009 11:27:11 +0000 (13:27 +0200)]
configure.in: Active the memory plugin if sysctl(3) is available.

15 years agomemory plugin: Update copyright notice and AUTHORS.
Florian Forster [Sat, 18 Apr 2009 11:15:03 +0000 (13:15 +0200)]
memory plugin: Update copyright notice and AUTHORS.

15 years agomemory plugin: Check `pagesize' when initializing, not when reading.
Florian Forster [Sat, 18 Apr 2009 11:12:23 +0000 (13:12 +0200)]
memory plugin: Check `pagesize' when initializing, not when reading.

15 years agomemory plugin: Added support for OpenBSD and possibly other *BSDs.
Simon Kuhnle [Sat, 18 Apr 2009 09:16:41 +0000 (11:16 +0200)]
memory plugin: Added support for OpenBSD and possibly other *BSDs.

Signed-off-by: Simon Kuhnle <simon@blarzwurst.de>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
15 years agoconntrack plugin: Add plugin to collect the connection tracking table size.
Tomasz Pala [Tue, 31 Mar 2009 08:31:29 +0000 (10:31 +0200)]
conntrack plugin: Add plugin to collect the connection tracking table size.

Hello,

I've adapted entropy plugin to get nf_conntrack entries, which is
important on Linux routers. Attached patch.

BTW you may want to take a look at PLD Linux spec file at
http://cvs.pld-linux.org/cgi-bin/cvsweb/SPECS/collectd.spec or
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SPECS/collectd.spec
as it's much more complex than Fedora, RH or SLES ones which are shipped
in contrib.

--
Tomasz Pala <gotar@pld-linux.org>

15 years agoMerge branch 'collectd-4.6'
Florian Forster [Fri, 17 Apr 2009 23:06:23 +0000 (01:06 +0200)]
Merge branch 'collectd-4.6'

Conflicts:
src/mysql.c
src/ping.c

15 years agoMerge branch 'collectd-4.5' into collectd-4.6
Florian Forster [Fri, 17 Apr 2009 23:04:48 +0000 (01:04 +0200)]
Merge branch 'collectd-4.5' into collectd-4.6

Conflicts:
src/cpu.c

15 years agosrc/libcollectdclient/: Check if EILSEQ is defined.
Florian Forster [Fri, 17 Apr 2009 23:02:59 +0000 (01:02 +0200)]
src/libcollectdclient/: Check if EILSEQ is defined.

And fall back to EPROTO or EINVAL if it is not, e. g. under FreeBSD.

15 years agointerface, memory, ping plugins: Update copyright information.
Florian Forster [Fri, 17 Apr 2009 22:55:59 +0000 (00:55 +0200)]
interface, memory, ping plugins: Update copyright information.

15 years agoopenvpn plugin: Correct copyright information.
Florian Forster [Fri, 17 Apr 2009 22:55:23 +0000 (00:55 +0200)]
openvpn plugin: Correct copyright information.

15 years agocpu plugin: Updated copyright information.
Florian Forster [Fri, 17 Apr 2009 16:19:59 +0000 (18:19 +0200)]
cpu plugin: Updated copyright information.

15 years agonetwork plugin: Compatibility fixes with old versions of libgcrypt.
Florian Forster [Fri, 17 Apr 2009 16:17:54 +0000 (18:17 +0200)]
network plugin: Compatibility fixes with old versions of libgcrypt.

15 years agomysql plugin: Fix a typo in my previous patch.
Florian Forster [Fri, 17 Apr 2009 15:43:12 +0000 (17:43 +0200)]
mysql plugin: Fix a typo in my previous patch.

D'oh!

15 years agomysql plugin: Updated copyright information.
Florian Forster [Fri, 17 Apr 2009 15:38:42 +0000 (17:38 +0200)]
mysql plugin: Updated copyright information.

15 years agoSet process vmem_size and stack_size on FreeBSD
Doug MacEachern [Fri, 17 Apr 2009 02:53:49 +0000 (19:53 -0700)]
Set process vmem_size and stack_size on FreeBSD

   Fixes:
   processes.c: In function 'ps_read':
   processes.c:328: warning: 'pse.vmem_size' is used uninitialized in this function
   processes.c:1300: note: 'pse.vmem_size' was declared here
   processes.c:330: warning: 'pse.stack_size' is used uninitialized in this function
   processes.c:1300: note: 'pse.stack_size' was declared here

Signed-off-by: Doug MacEachern <dougm@hyperic.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
15 years agoMerge branch 'ag/apache'
Florian Forster [Thu, 16 Apr 2009 10:45:28 +0000 (12:45 +0200)]
Merge branch 'ag/apache'

15 years agoapache plugin: Prepare for parallel reading of instances.
Amit Gupta [Thu, 16 Apr 2009 10:39:12 +0000 (12:39 +0200)]
apache plugin: Prepare for parallel reading of instances.

Do find the patch attached. I have moved apache_buffer and friends to the
apache_t structure and set the plugin_instance if there. There are other
changes as well like freeing up  the lci->values etc. Have a look at the patch
and let me know if this looks okay to you.

Regards
Amit

15 years agonetwork plugin: Updated signature handling.
Florian Forster [Thu, 16 Apr 2009 08:26:31 +0000 (10:26 +0200)]
network plugin: Updated signature handling.

This is a preparation for being able to handle mixed signed/unsigned
data in one packet. The signature verifying code uses a recursive
structure now, just like the decryption code.

15 years agonetwork plugin: Fix compile ifndef HAVE_GCRYPT_H
Doug MacEachern [Thu, 16 Apr 2009 02:32:52 +0000 (22:32 -0400)]
network plugin: Fix compile ifndef HAVE_GCRYPT_H

Signed-off-by: Doug MacEachern <Doug.MacEachern@hyperic.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
15 years agouptime plugin: Removed some blank lines and reformatted some comments.
Florian Forster [Wed, 15 Apr 2009 09:58:21 +0000 (11:58 +0200)]
uptime plugin: Removed some blank lines and reformatted some comments.

15 years agouptime plugin: Calculate the boot time under Linux.
Marco Chiappero [Wed, 15 Apr 2009 09:51:11 +0000 (11:51 +0200)]
uptime plugin: Calculate the boot time under Linux.

Hi Florian,

[...]

About the uptime plugin:
New code attached, it should be fine now (different linux behaviour and some
minor changes). As soon as I can I'll send to you a plotting code sample (with
lots of stuff and RPN expressions) to be added in the contributions dir, if you
like, and edit the wiki page.

Regards,
Marco

15 years agoapache plugin: Replace C++-style comments.
Florian Forster [Wed, 15 Apr 2009 09:12:53 +0000 (11:12 +0200)]
apache plugin: Replace C++-style comments.

15 years agoapache plugin: Remove unused variables.
Florian Forster [Wed, 15 Apr 2009 08:58:37 +0000 (10:58 +0200)]
apache plugin: Remove unused variables.

15 years agoapache plugin: Fix whitespace: Indent using tab, remove trailing.
Florian Forster [Wed, 15 Apr 2009 08:46:23 +0000 (10:46 +0200)]
apache plugin: Fix whitespace: Indent using tab, remove trailing.

15 years agoapache plugin: Added Amit to list of copyright holders.
Florian Forster [Wed, 15 Apr 2009 08:42:52 +0000 (10:42 +0200)]
apache plugin: Added Amit to list of copyright holders.

15 years agoapache plugin: Add support for multiple servers.
Amit Gupta [Wed, 15 Apr 2009 08:40:26 +0000 (10:40 +0200)]
apache plugin: Add support for multiple servers.

Hi,
Based on Bruno/Florian input, I have changed the apache code to support
the following configuration structure:
<Plugin apache>
  <Instance "instance_name">
     URL ....
     Host ... # optional and defaults to hostname_g
  </Instance>
   URL ...
</Plugin>

I have defined Instance as a block and not Host because the idea here is to
monitor multiple apache instances on the same machine. For apache instances on
remote machines, one could specify Host within the Instance block (which is
optional and default is hostname_g). For legacy configuration, I am converting
the legacy block to <Instance ""> which defaults to apache.

Do find the patch attached. I am not very familiar with git format-patch
and send-email functionalities as yet, so I am attaching a diff -ur
output as mentioned in the submitting-patches.shtml page.

The things which haven't been done as yet:
- I haven't used plugin_register_complex_read as yet. The main reason
  being I am working on 4.6.1 version and I can't seem to find the
  function plugin_register_complex_read in the code base. I believe it
  is being added only in 4.6.2
- lighttpd scoreboard is not yet handled. This would probably be my next
  task.

Question:
Given that this plugin can be used by both apache and lighttpd, how do
we find out if the server is lighttpd or apache?. It will be good to
have different rrd file names for apache and lighttpd which could only
be done if we set different vl.type for both the servers. One way I can
think of is to rely on the differences of the mod_status output of the
two servers or perhaps we could have a generic type as "httpd". (which
can be done only in the next major release if you folks are planning to
change the plugin name to httpd in the next major release)

Regards
Amit

15 years agobattery plugin: Don't complain about missing /proc/acpi/battery each interval.
Sebastian Harl [Tue, 10 Mar 2009 21:06:10 +0000 (22:06 +0100)]
battery plugin: Don't complain about missing /proc/acpi/battery each interval.

Instead, complain once when the read callback is called for the first time.

15 years agonetwork plugin: Enable mixing encrypted and unencrypted data.
Florian Forster [Mon, 13 Apr 2009 17:51:56 +0000 (19:51 +0200)]
network plugin: Enable mixing encrypted and unencrypted data.

Unencrypted stuff may now follow encrypted blocks. They are only
handled, if ‘SecurityLevel’ ist set to ‘None’, of course.

Also, use ‘size_t’ for the buffer size.

15 years agonetwork plugin: Use an initialization vector when encrypting packets.
Florian Forster [Sun, 12 Apr 2009 20:24:20 +0000 (22:24 +0200)]
network plugin: Use an initialization vector when encrypting packets.

15 years agonetwork plugin: Talk about “HMAC-SHA-256” in the documentation and error messages.
Florian Forster [Sat, 11 Apr 2009 14:59:46 +0000 (16:59 +0200)]
network plugin: Talk about “HMAC-SHA-256” in the documentation and error messages.

15 years agonetwork plugin: Use libgcrypt's HMAC implementation rather than rolling our own.
Florian Forster [Sat, 11 Apr 2009 14:44:05 +0000 (16:44 +0200)]
network plugin: Use libgcrypt's HMAC implementation rather than rolling our own.

The previously implemented method is simple enough, but apparently pront
to attacks.

15 years agonetwork plugin: Use SHA-1 instead of SHA-224 to check integrity.
Florian Forster [Sat, 11 Apr 2009 12:08:30 +0000 (14:08 +0200)]
network plugin: Use SHA-1 instead of SHA-224 to check integrity.

SHA-224 is not supported by older versions of libgcrypt (i. e. the
version included in Debian Etch), so lets take this more conservative
alternative instead.

Also, the padding bytes have been moved to the beginning of the packet
and will be filled with randomness, so they serve as some kind of IV.
It is, however, not guaranteed that any padding bytes exist at all, so
in theory two identical packets could be encrypted in the same way.

15 years agoMerge branch 'collectd-4.6'
Florian Forster [Sat, 11 Apr 2009 07:37:30 +0000 (09:37 +0200)]
Merge branch 'collectd-4.6'

15 years agoMerge branch 'collectd-4.5' into collectd-4.6
Florian Forster [Sat, 11 Apr 2009 07:34:32 +0000 (09:34 +0200)]
Merge branch 'collectd-4.5' into collectd-4.6

15 years agoRestore BYTE_ORDER on DARWIN The files matching grep "define _POSIX_C_SOURCE" src...
Doug MacEachern [Fri, 10 Apr 2009 21:54:11 +0000 (14:54 -0700)]
Restore BYTE_ORDER on DARWIN The files matching grep "define _POSIX_C_SOURCE" src/*.c on MacOSX do not compile: In file included from target_notification.c:60: collectd.h:172:3: error: #error "Cannot determine byte order"

See /usr/include/i386/endian.h:
 #if defined(KERNEL) || (!defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE))

 #define LITTLE_ENDIAN   __DARWIN_LITTLE_ENDIAN
 #define BIG_ENDIAN      __DARWIN_BIG_ENDIAN
 #define BYTE_ORDER      __DARWIN_BYTE_ORDER

Signed-off-by: Doug MacEachern <dougm@hyperic.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
15 years agoDisable disable multi -arch flags to perl.c on OSX Compilation of perl.c fails with:
Doug MacEachern [Fri, 10 Apr 2009 21:38:33 +0000 (14:38 -0700)]
Disable disable multi -arch flags to perl.c on OSX Compilation of perl.c fails with:

gcc ... -Wall -Werror -arch i386 -arch ppc -g -pipe -fno-common -DPERL_DARWIN ... -MT perl_la-perl.lo -MD -MP -MF ...
...
gcc-4.0: -E, -S, -save-temps and -M options are not allowed with multiple -arch flags

See Config_heavy.pl:
$archflags = exists($ENV{ARCHFLAGS}) ? $ENV{ARCHFLAGS} : '-arch i386 -arch ppc';

Signed-off-by: Doug MacEachern <dougm@hyperic.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
15 years agonetwork plugin: Use CBC rather than ECB.
Florian Forster [Sat, 11 Apr 2009 00:02:33 +0000 (02:02 +0200)]
network plugin: Use CBC rather than ECB.

15 years agonetwork plugin: Implement signing and encryption of network traffic.
Florian Forster [Fri, 10 Apr 2009 23:08:40 +0000 (01:08 +0200)]
network plugin: Implement signing and encryption of network traffic.

The patch adds shared secret signing and encryption of network traffic.
Currently, there are three “security levels”:

 - Encrypt
   Encrypt outgoing data and only accept encrypted data when receiving.

 - Sign
   Outgoing data is signed; signed and encrypted data is accepted when
   receiving.

 - None
   Send without any cryptography and accept anything when receiving.

The security level and shared secret can be set per-socket, so that
forwarding instances can re-encrypt and similar goodies.

The libgcrypt library is used to calculate hashes, encrypt and decrypt,
see <http://www.gnu.org/software/libgcrypt/>. I tested compiling the
`network' plugin without libgcrypt afterwards, but haven't tested this
much yet.

Algorithms used are SHA-256 for signing and AES-256 in ECB mode /
SHA-224 when encrypting. Also, SHA-256 is used to get the 32 byte key
for AES-256 from the user-supplied secret.

15 years agosrc/plugin.c: Emit warning in load_plugin if !S_ISREG
Doug MacEachern [Fri, 12 Dec 2008 20:52:04 +0000 (12:52 -0800)]
src/plugin.c: Emit warning in load_plugin if !S_ISREG

Signed-off-by: Doug MacEachern <dougm@hyperic.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
15 years agoMerge branch 'dm/misc'
Florian Forster [Wed, 8 Apr 2009 14:47:49 +0000 (16:47 +0200)]
Merge branch 'dm/misc'

15 years agoclean.sh: Clean up `src/libcollectdclient/'.
Doug MacEachern [Thu, 1 Jan 2009 18:04:15 +0000 (10:04 -0800)]
clean.sh: Clean up `src/libcollectdclient/'.

Signed-off-by: Doug MacEachern <dougm@hyperic.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
15 years agoconfigure.in: Check for libpq for function `PQserverVersion'.
Doug MacEachern [Thu, 1 Jan 2009 17:33:42 +0000 (09:33 -0800)]
configure.in: Check for libpq for function `PQserverVersion'.

It does not exist in 7.x.

Signed-off-by: Doug MacEachern <dougm@hyperic.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
15 years agosrc/plugin.c: Emit warning in load_plugin if !S_ISREG
Doug MacEachern [Fri, 12 Dec 2008 20:52:04 +0000 (12:52 -0800)]
src/plugin.c: Emit warning in load_plugin if !S_ISREG

Signed-off-by: Doug MacEachern <dougm@hyperic.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
15 years agocontrib/collection3/: Add plugin_instance to MySQL RRDTitle
Doug MacEachern [Fri, 3 Apr 2009 15:50:43 +0000 (08:50 -0700)]
contrib/collection3/: Add plugin_instance to MySQL RRDTitle

Signed-off-by: Doug MacEachern <dougm@hyperic.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
15 years agobindings/java/: Fix a reference in a JavaDoc comment.
Florian Forster [Sat, 4 Apr 2009 06:44:37 +0000 (08:44 +0200)]
bindings/java/: Fix a reference in a JavaDoc comment.

15 years agosrc/liboping: Remove the shipped version of the ‘oping’ library.
Florian Forster [Tue, 7 Apr 2009 08:43:32 +0000 (10:43 +0200)]
src/liboping: Remove the shipped version of the ‘oping’ library.

There's no real reason for this special handling, since liboping is
developed separately now.

15 years agoMerge branch 'ff/memcachec'
Florian Forster [Tue, 7 Apr 2009 07:38:47 +0000 (09:38 +0200)]
Merge branch 'ff/memcachec'

15 years agodbi plugin: Be more specific about unknown field types.
Florian Forster [Tue, 7 Apr 2009 07:37:09 +0000 (09:37 +0200)]
dbi plugin: Be more specific about unknown field types.

Especially print the name of the field.

15 years agojava plugin: Use `void *' to pass arguments of varying type.
Florian Forster [Tue, 7 Apr 2009 07:35:36 +0000 (09:35 +0200)]
java plugin: Use `void *' to pass arguments of varying type.

The types passed at VM creation time differ from Java implementation to the
next and/or only certain compiler complain. This way we should be on the safe
side.

15 years agomemcachec plugin: Add a plugin to fetch data from the memcache daemon.
Florian Forster [Fri, 27 Feb 2009 12:24:23 +0000 (13:24 +0100)]
memcachec plugin: Add a plugin to fetch data from the memcache daemon.

Based on Doug MacEachern's modification to the cURL plugin.

15 years agoMerge branch 'er/ted'
Florian Forster [Tue, 31 Mar 2009 07:45:33 +0000 (09:45 +0200)]
Merge branch 'er/ted'

15 years agoREADME: Added the `ted' plugin.
Florian Forster [Tue, 31 Mar 2009 07:45:19 +0000 (09:45 +0200)]
README: Added the `ted' plugin.

15 years agobindings/java/: JMXMemory: Add GPL and copyright header.
Florian Forster [Sun, 29 Mar 2009 12:53:21 +0000 (14:53 +0200)]
bindings/java/: JMXMemory: Add GPL and copyright header.

15 years agondings/java/: Add `JMXMemory' example plugin.
Florian Forster [Sun, 29 Mar 2009 12:50:39 +0000 (14:50 +0200)]
ndings/java/: Add `JMXMemory' example plugin.

15 years agojava plugin: Fix a typo in the oconfig_item conversion function.
Florian Forster [Sun, 29 Mar 2009 12:36:26 +0000 (14:36 +0200)]
java plugin: Fix a typo in the oconfig_item conversion function.

15 years agosrc/plugin.c: Automatically set vl->interval to interval_g if (vl->interval <= 0).
Florian Forster [Sun, 29 Mar 2009 12:35:53 +0000 (14:35 +0200)]
src/plugin.c: Automatically set vl->interval to interval_g if (vl->interval <= 0).

15 years agojava plugin: Honor the return value of `NewGlobalRef'.
Florian Forster [Sun, 29 Mar 2009 12:00:46 +0000 (14:00 +0200)]
java plugin: Honor the return value of `NewGlobalRef'.

Apparently GCJ used to modify it's argument, but the spec apparently says
that the return value is important.

15 years agobindings/java/: Initialize `time' and `interval' to zero.
Florian Forster [Sun, 29 Mar 2009 11:55:32 +0000 (13:55 +0200)]
bindings/java/: Initialize `time' and `interval' to zero.

They will be replaced by the correct values automatically, so it's better
to initialize the members to those ``magic'' values..