Significant NRPE rework, including IPv6

Kristian Lyngstøl kristian at bohemians.org
Sat Mar 12 14:20:20 CET 2011


I've started working on making NRPE somewhat maintainable, as it's a
bit of a mess in its current state.

The original goal was adding IPv6-support, which I've done, but it has
escalated somewhat after that.

I've since:

 - Transitioned to autotools/autoconf for a somewhat more convenient
build system
 - ... Introduced system-wide header files (...)
 - Started sorting out what's local and global, removing redundant
prototypes and declaring functions static
 - Imported a couple of patches kept by Debian that were reasonable.
 - Re-indented the code (Normally I wouldn't do this on a project
that's not mine, but I wasn't able to wrap my head around the style as
it was -- too far off)
 - Removed several redundant comments (Stuff like "/* wait for
connections */ wait_for_connections();" which only serves as noise)
 - Removed unused or unneeded code.
 - Misc other

While the IPv6-support is fairly complete (using getaddrinfo()), the
nrpe-server needs two more features to be release-ready: Listening to
both ipv4 and ipv6 at the same time, and ipv6-awareness in
allowed_hosts. This is on my todo-list. I also expect I've broken the
build on certain platforms, and I intend to test this to some degree.

The work can be found at: https://github.com/KristianLyng/nrpe

I do not want to maintain a fork, thus I'm interested to co-operate to
get this "upstream". Since the code looked almost abandoned, I decided
that it would be best to adapt a "fix first, ask later"-approach.

I've so far dubbed it NRPE "3.0", and I'm using it both nrpe-server
and check_nrpe on several servers.

Any and all feedback is much welcomed.

I'm also on IRC (KristianL on freenode).

Regards,
Kristian

------------------------------------------------------------------------------
Colocation vs. Managed Hosting
A question and answer guide to determining the best fit
for your organization - today and in the future.
http://p.sf.net/sfu/internap-sfd2d




More information about the Developers mailing list