summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--AUTHORS2
-rw-r--r--COPYING2
-rw-r--r--ChangeLog9
-rw-r--r--common/async-resolver.c12
-rw-r--r--common/async-resolver.h2
-rw-r--r--common/compat.c4
-rw-r--r--common/compat.h4
-rw-r--r--common/config-parser.c4
-rw-r--r--common/config-parser.h4
-rw-r--r--common/hash.c4
-rw-r--r--common/hash.h4
-rw-r--r--common/server-mainloop.c2
-rw-r--r--common/server-mainloop.h2
-rw-r--r--common/sock-any.c4
-rw-r--r--common/sock-any.h4
-rw-r--r--common/usuals.h4
-rw-r--r--configure.in4
-rw-r--r--daemon/config.c4
-rw-r--r--daemon/rrd-update.c4
-rw-r--r--daemon/rrdbotd.c15
-rw-r--r--daemon/rrdbotd.h4
-rw-r--r--daemon/snmp-engine.c4
-rwxr-xr-xdoc/man2html.pl4
-rw-r--r--doc/rrdbot-create.86
-rw-r--r--doc/rrdbot-get.16
-rw-r--r--doc/rrdbot.conf.56
-rw-r--r--doc/rrdbotd.86
-rw-r--r--mib/mib-parser.c4
-rw-r--r--mib/mib-parser.h4
-rw-r--r--mib/parse-net-snmp.patch2
-rw-r--r--mib/parse.c2
-rw-r--r--mibs/REGEX-MIB.txt4
-rw-r--r--tools/rrdbot-create.c4
-rw-r--r--tools/rrdbot-get.c4
34 files changed, 86 insertions, 68 deletions
diff --git a/AUTHORS b/AUTHORS
index 6fecca7..053e70b 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -1,4 +1,4 @@
-Nate Nielsen <nielsen@memberwebs.com>
+Stefan Walter <stef@memberwebs.com>
CONTRIBUTIONS
Stoned Elipot <seb@ssr.univ-paris7.fr>
diff --git a/COPYING b/COPYING
index efcf77b..978fb28 100644
--- a/COPYING
+++ b/COPYING
@@ -1,5 +1,5 @@
-Copyright (c) 2005-2006, Nate Nielsen
+Copyright (c) 2005-2006, Stefan Walter
All rights reserved.
Redistribution and use in source and binary forms, with or without
diff --git a/ChangeLog b/ChangeLog
index 92e8214..c3df840 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,9 +1,16 @@
+0.7
+ - Use my real name 'Stef Walter'
+ See: http://memberwebs.com/nielsen/
+
+0.6
+ - Fix bug with asynchronous resolver when daemonizing
+
0.5
- Added SNMP version 2c support for rrdbot-get [Stoned Elipot]
- Fixed asynchronous resolving on FreeBSD
- Fix bug where rrdbot-create ignored '-c' argument [benj]
- Remove pid file when exiting [benj]
- - Fix bug where config files are not enumerated on reiserfs [benj]
+ - Fix bug where config files are not enumerated on reiserfs [benj]
0.4
- Reduced memory usage of SNMP requests
diff --git a/common/async-resolver.c b/common/async-resolver.c
index 284a486..8485bb2 100644
--- a/common/async-resolver.c
+++ b/common/async-resolver.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2006, Nate Nielsen
+ * Copyright (c) 2006, Stefan Walter
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -51,7 +51,7 @@
* THREAD COMMUNICATION
*/
-#define TSIGNAL_UNITITIALIZED { -1 -1 }
+#define TSIGNAL_UNITITIALIZED { -1, -1 }
static int
tsignal_init(int* sig)
@@ -262,6 +262,14 @@ async_resolver_queue(const char* hostname, const char* servname,
resolve_request* r;
char* t;
+ if(!res_thread)
+ {
+ /* All errors go to callback */
+ errno = ESRCH;
+ (cb)(EAI_SYSTEM, NULL, arg);
+ return;
+ }
+
req = calloc(1, sizeof(resolve_request));
if(!req)
{
diff --git a/common/async-resolver.h b/common/async-resolver.h
index a3be364..ac1c772 100644
--- a/common/async-resolver.h
+++ b/common/async-resolver.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2006, Nate Nielsen
+ * Copyright (c) 2006, Stefan Walter
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/common/compat.c b/common/compat.c
index c6138d0..6f9c58d 100644
--- a/common/compat.c
+++ b/common/compat.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2004, Nate Nielsen
+ * Copyright (c) 2004, Stefan Walter
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -32,7 +32,7 @@
*
*
* CONTRIBUTORS
- * Nate Nielsen <nielsen@memberwebs.com>
+ * Stef Walter <stef@memberwebs.com>
*
*/
diff --git a/common/compat.h b/common/compat.h
index 8aaef66..8eda20f 100644
--- a/common/compat.h
+++ b/common/compat.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2004, Nate Nielsen
+ * Copyright (c) 2004, Stefan Walter
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -32,7 +32,7 @@
*
*
* CONTRIBUTORS
- * Nate Nielsen <nielsen@memberwebs.com>
+ * Stef Walter <stef@memberwebs.com>
*
*/
diff --git a/common/config-parser.c b/common/config-parser.c
index f73d488..cf1599d 100644
--- a/common/config-parser.c
+++ b/common/config-parser.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005, Nate Nielsen
+ * Copyright (c) 2005, Stefan Walter
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -32,7 +32,7 @@
*
*
* CONTRIBUTORS
- * Nate Nielsen <nielsen@memberwebs.com>
+ * Stef Walter <stef@memberwebs.com>
*/
#include "usuals.h"
diff --git a/common/config-parser.h b/common/config-parser.h
index fc98e31..19a300a 100644
--- a/common/config-parser.h
+++ b/common/config-parser.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005, Nate Nielsen
+ * Copyright (c) 2005, Stefan Walter
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -32,7 +32,7 @@
*
*
* CONTRIBUTORS
- * Nate Nielsen <nielsen@memberwebs.com>
+ * Stefan Walter <stef@memberwebs.com>
*/
#ifndef __CONFIG_PARSER_H__
diff --git a/common/hash.c b/common/hash.c
index c99a689..9acd2df 100644
--- a/common/hash.c
+++ b/common/hash.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2004, Nate Nielsen
+ * Copyright (c) 2004, Stefan Walter
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -33,7 +33,7 @@
/*
* Originally from apache 2.0
- * Modifications for general use by <nielsen@memberwebs.com>
+ * Modifications for general use by <stef@memberwebs.com>
*/
/* Copyright 2000-2004 The Apache Software Foundation
diff --git a/common/hash.h b/common/hash.h
index df34a7a..c046b38 100644
--- a/common/hash.h
+++ b/common/hash.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2004, Nate Nielsen
+ * Copyright (c) 2004, Stefan Walter
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -33,7 +33,7 @@
/*
* Originally from apache 2.0
- * Modifications for general use by <nielsen@memberwebs.com>
+ * Modifications for general use by <stef@memberwebs.com>
*/
/* Copyright 2000-2004 The Apache Software Foundation
diff --git a/common/server-mainloop.c b/common/server-mainloop.c
index 824f3b1..d569d61 100644
--- a/common/server-mainloop.c
+++ b/common/server-mainloop.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2006, Nate Nielsen
+ * Copyright (c) 2006, Stefan Walter
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/common/server-mainloop.h b/common/server-mainloop.h
index 6bf6b7c..ea588e9 100644
--- a/common/server-mainloop.h
+++ b/common/server-mainloop.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2006, Nate Nielsen
+ * Copyright (c) 2006, Stefan Walter
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/common/sock-any.c b/common/sock-any.c
index bb207ea..4476fde 100644
--- a/common/sock-any.c
+++ b/common/sock-any.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2004, Nate Nielsen
+ * Copyright (c) 2004, Stefan Walter
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -32,7 +32,7 @@
*
*
* CONTRIBUTORS
- * Nate Nielsen <nielsen@memberwebs.com>
+ * Stef Walter <stef@memberwebs.com>
*
*/
diff --git a/common/sock-any.h b/common/sock-any.h
index 7df54e1..e9b57ef 100644
--- a/common/sock-any.h
+++ b/common/sock-any.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2004, Nate Nielsen
+ * Copyright (c) 2004, Stefan Walter
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -32,7 +32,7 @@
*
*
* CONTRIBUTORS
- * Nate Nielsen <nielsen@memberwebs.com>
+ * Stef Walter <stef@memberwebs.com>
*
*/
diff --git a/common/usuals.h b/common/usuals.h
index ef1f2d9..5168ca3 100644
--- a/common/usuals.h
+++ b/common/usuals.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005, Nate Nielsen
+ * Copyright (c) 2005, Stefan Walter
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -32,7 +32,7 @@
*
*
* CONTRIBUTORS
- * Nate Nielsen <nielsen@memberwebs.com>
+ * Stef Walter <stef@memberwebs.com>
*
*/
diff --git a/configure.in b/configure.in
index 9c5831e..cbbd07d 100644
--- a/configure.in
+++ b/configure.in
@@ -1,6 +1,6 @@
dnl Process this file with autoconf to produce a configure script.
-AC_INIT(rrdbot, 0.5, nielsen@memberwebs.com)
-AM_INIT_AUTOMAKE(rrdbot, 0.5)
+AC_INIT(rrdbot, 0.7, stef@memberwebs.com)
+AM_INIT_AUTOMAKE(rrdbot, 0.7)
LDFLAGS="$LDFLAGS -L/usr/local/lib"
CFLAGS="$CFLAGS -I/usr/local/include"
diff --git a/daemon/config.c b/daemon/config.c
index 49f8e0f..1bf0e4b 100644
--- a/daemon/config.c
+++ b/daemon/config.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005, Nate Nielsen
+ * Copyright (c) 2005, Stefan Walter
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -32,7 +32,7 @@
*
*
* CONTRIBUTORS
- * Nate Nielsen <nielsen@memberwebs.com>
+ * Stef Walter <stef@memberwebs.com>
*
*/
diff --git a/daemon/rrd-update.c b/daemon/rrd-update.c
index f052c31..7b43430 100644
--- a/daemon/rrd-update.c
+++ b/daemon/rrd-update.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005, Nate Nielsen
+ * Copyright (c) 2005, Stefan Walter
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -32,7 +32,7 @@
*
*
* CONTRIBUTORS
- * Nate Nielsen <nielsen@memberwebs.com>
+ * Stef Walter <stef@memberwebs.com>
*
*/
diff --git a/daemon/rrdbotd.c b/daemon/rrdbotd.c
index c74648d..5b447a3 100644
--- a/daemon/rrdbotd.c
+++ b/daemon/rrdbotd.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005, Nate Nielsen
+ * Copyright (c) 2005, Stefan Walter
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -32,7 +32,7 @@
*
*
* CONTRIBUTORS
- * Nate Nielsen <nielsen@memberwebs.com>
+ * Stef Walter <stef@memberwebs.com>
*
*/
@@ -312,10 +312,6 @@ main(int argc, char* argv[])
/* The mainloop server */
server_init();
- /* Setup the Async DNS resolver */
- if(async_resolver_init() < 0)
- err(1, "couldn't initialize resolver");
-
/* Parse config and setup SNMP system */
rb_config_parse();
@@ -335,6 +331,13 @@ main(int argc, char* argv[])
daemonized = 1;
}
+ /* Setup the Async DNS resolver */
+ if(async_resolver_init() < 0)
+ {
+ rb_message(LOG_ERR, "couldn't initialize resolver");
+ /* Allow things to proceed without resolver */
+ }
+
/* Handle signals */
signal(SIGPIPE, SIG_IGN);
signal(SIGHUP, SIG_IGN);
diff --git a/daemon/rrdbotd.h b/daemon/rrdbotd.h
index 70e09fa..cfc8cb2 100644
--- a/daemon/rrdbotd.h
+++ b/daemon/rrdbotd.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2004, Nate Nielsen
+ * Copyright (c) 2004, Stef Walter
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -32,7 +32,7 @@
*
*
* CONTRIBUTORS
- * Nate Nielsen <nielsen@memberwebs.com>
+ * Stef Walter <stef@memberwebs.com>
*
*/
diff --git a/daemon/snmp-engine.c b/daemon/snmp-engine.c
index 65bc1de..8cae2b7 100644
--- a/daemon/snmp-engine.c
+++ b/daemon/snmp-engine.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005, Nate Nielsen
+ * Copyright (c) 2005, Stefan Walter
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -32,7 +32,7 @@
*
*
* CONTRIBUTORS
- * Nate Nielsen <nielsen@memberwebs.com>
+ * Stef Walter <stef@memberwebs.com>
*
*/
diff --git a/doc/man2html.pl b/doc/man2html.pl
index 21e3ab5..a6a7c3f 100755
--- a/doc/man2html.pl
+++ b/doc/man2html.pl
@@ -126,7 +126,7 @@ sub man {
}
close(MAN);
- print "<H6>Copyright, N. Nielsen&nbsp;&nbsp;&nbsp;[ <a href='./'>back</a> | <a href='../../'>home</a> ]</h6>";
+ print "<H6>&nbsp;&nbsp;&nbsp;[ <a href='./'>back</a> | <a href='../../'>home</a> ]</h6>";
print "</BODY>\n";
print "</HTML>\n";
@@ -192,7 +192,7 @@ sub html_header {
<link rev="made" href="mailto:wosch\@FreeBSD.ORG">
<META name="robots" content="nofollow">
<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type">
-<link rel="stylesheet" type="text/css" href="/nielsen/style.css">
+<link rel="stylesheet" type="text/css" href="/swalter/style.css">
</HEAD>
<BODY BGCOLOR="#FFFFFF" TEXT="#000000">\n\n};
}
diff --git a/doc/rrdbot-create.8 b/doc/rrdbot-create.8
index c518c78..b551f6f 100644
--- a/doc/rrdbot-create.8
+++ b/doc/rrdbot-create.8
@@ -1,5 +1,5 @@
.\"
-.\" Copyright (c) 2006, Nate Nielsen
+.\" Copyright (c) 2006, Stefan Walter
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@@ -32,7 +32,7 @@
.\"
.\"
.\" CONTRIBUTORS
-.\" Nate Nielsen <nielsen@memberwebs.com>
+.\" Stef Walter <stef@memberwebs.com>
.\"
.Dd August, 2006
.Dt rrdbot-create 8
@@ -144,4 +144,4 @@ option in the configuration file.
.Xr rrdbot-get 1 ,
.Xr rrdtool 1
.Sh AUTHOR
-.An Nate Nielsen Aq nielsen@memberwebs.com
+.An Stef Walter Aq stef@memberwebs.com
diff --git a/doc/rrdbot-get.1 b/doc/rrdbot-get.1
index 1d69141..48e4689 100644
--- a/doc/rrdbot-get.1
+++ b/doc/rrdbot-get.1
@@ -1,5 +1,5 @@
.\"
-.\" Copyright (c) 2006, Nate Nielsen
+.\" Copyright (c) 2006, Stefan Walter
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@@ -32,7 +32,7 @@
.\"
.\"
.\" CONTRIBUTORS
-.\" Nate Nielsen <nielsen@memberwebs.com>
+.\" Stefan Walter <stef@memberwebs.com>
.\"
.Dd August, 2006
.Dt rrdbot-get 1
@@ -81,4 +81,4 @@ and the locations of the configuration files, RRD files etc.
.Xr rrdbot.conf 5 ,
.Xr rrdbot-create 8
.Sh AUTHOR
-.An Nate Nielsen Aq nielsen@memberwebs.com
+.An Stefan Walter Aq stef@memberwebs.com
diff --git a/doc/rrdbot.conf.5 b/doc/rrdbot.conf.5
index bf4f88f..ad93496 100644
--- a/doc/rrdbot.conf.5
+++ b/doc/rrdbot.conf.5
@@ -1,5 +1,5 @@
.\"
-.\" Copyright (c) 2006, Nate Nielsen
+.\" Copyright (c) 2006, Stefan Walter
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@@ -32,7 +32,7 @@
.\"
.\"
.\" CONTRIBUTORS
-.\" Nate Nielsen <nielsen@memberwebs.com>
+.\" Stef Walter <stef@memberwebs.com>
.\"
.Dd August, 2006
.Dt rrdbot.conf 5
@@ -261,4 +261,4 @@ tool to create the needed RRD files in the appropriate places.
.Xr rrdbot-get 1 ,
.Xr rrdtool 1
.Sh AUTHOR
-.An Nate Nielsen Aq nielsen@memberwebs.com
+.An Stef Walter Aq stef@memberwebs.com
diff --git a/doc/rrdbotd.8 b/doc/rrdbotd.8
index 4ff8e5f..bc4d7fd 100644
--- a/doc/rrdbotd.8
+++ b/doc/rrdbotd.8
@@ -1,5 +1,5 @@
.\"
-.\" Copyright (c) 2006, Nate Nielsen
+.\" Copyright (c) 2006, Stefan Walter
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@@ -32,7 +32,7 @@
.\"
.\"
.\" CONTRIBUTORS
-.\" Nate Nielsen <nielsen@memberwebs.com>
+.\" Stefan Walter <stef@memberwebs.com>
.\"
.Dd August, 2006
.Dt rrdbotd 8
@@ -151,4 +151,4 @@ tool to create the needed RRD files in the appropriate places.
.Xr rrdbot-get 1 ,
.Xr rrdtool 1
.Sh AUTHOR
-.An Nate Nielsen Aq nielsen@memberwebs.com
+.An Stef Walter Aq stef@memberwebs.com
diff --git a/mib/mib-parser.c b/mib/mib-parser.c
index 265cddc..ffdb151 100644
--- a/mib/mib-parser.c
+++ b/mib/mib-parser.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005, Nate Nielsen
+ * Copyright (c) 2005, Stefan Walter
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -32,7 +32,7 @@
*
*
* CONTRIBUTORS
- * Nate Nielsen <nielsen@memberwebs.com>
+ * Stef Walter <stef@memberwebs.com>
*
*/
diff --git a/mib/mib-parser.h b/mib/mib-parser.h
index 4f86ee2..a586f8b 100644
--- a/mib/mib-parser.h
+++ b/mib/mib-parser.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005, Nate Nielsen
+ * Copyright (c) 2005, Stefan Walter
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -32,7 +32,7 @@
*
*
* CONTRIBUTORS
- * Nate Nielsen <nielsen@memberwebs.com>
+ * Stef Walter <stef@memberwebs.com>
*
*/
diff --git a/mib/parse-net-snmp.patch b/mib/parse-net-snmp.patch
index 04435c1..d8bc347 100644
--- a/mib/parse-net-snmp.patch
+++ b/mib/parse-net-snmp.patch
@@ -2,7 +2,7 @@
+++ parse.c 2006-04-04 16:04:46.000000000
@@ -1,4 +1,11 @@
/*
-+ * Nate Nielsen
++ * Stef Walter
+ *
+ * Borrowed from net-snmp. Cleaned up a bit (see parse-net-snmp.patch)
+ * and readied for inclusion in rrdbot. Most of the additional code
diff --git a/mib/parse.c b/mib/parse.c
index 0504599..fbb74d8 100644
--- a/mib/parse.c
+++ b/mib/parse.c
@@ -1,5 +1,5 @@
/*
- * Nate Nielsen
+ * Stef Walter
*
* Borrowed from net-snmp. Cleaned up a bit (see parse-net-snmp.patch)
* and readied for inclusion in rrdbot. Most of the additional code
diff --git a/mibs/REGEX-MIB.txt b/mibs/REGEX-MIB.txt
index dfb1201..3451d66 100644
--- a/mibs/REGEX-MIB.txt
+++ b/mibs/REGEX-MIB.txt
@@ -10,8 +10,8 @@ IMPORTS
regexData MODULE-IDENTITY
LAST-UPDATED "200603290000Z"
- ORGANIZATION "Nate Nielsen"
- CONTACT-INFO "nielsen@memberwesb.com"
+ ORGANIZATION "Stefan Walter"
+ CONTACT-INFO "stef@memberwesb.com"
DESCRIPTION "The MIB for the bsnmp-regex."
::= { begemot 203 }
diff --git a/tools/rrdbot-create.c b/tools/rrdbot-create.c
index 22dbaa4..23989bb 100644
--- a/tools/rrdbot-create.c
+++ b/tools/rrdbot-create.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005, Nate Nielsen
+ * Copyright (c) 2005, Stefan Walter
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -32,7 +32,7 @@
*
*
* CONTRIBUTORS
- * Nate Nielsen <nielsen@memberwebs.com>
+ * Stef Walter <stef@memberwebs.com>
*
*/
diff --git a/tools/rrdbot-get.c b/tools/rrdbot-get.c
index 0df7b84..c14f25b 100644
--- a/tools/rrdbot-get.c
+++ b/tools/rrdbot-get.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005, Nate Nielsen
+ * Copyright (c) 2005, Stefan Walter
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -32,7 +32,7 @@
*
*
* CONTRIBUTORS
- * Nate Nielsen <nielsen@memberwebs.com>
+ * Stef Walter <stef@memberwebs.com>
*
*/