From 5847c4eb83922b4431192f24ba5232fe4c2c49fe Mon Sep 17 00:00:00 2001 From: Thomas Guyot-Sionnest Date: Tue, 4 Nov 2008 21:29:36 +0000 Subject: Adding extra-opts check that crash on my prod servers (*** glibc detected *** malloc(): memory corruption: 0x0804e248 ***) git-svn-id: https://nagiosplug.svn.sourceforge.net/svnroot/nagiosplug/nagiosplug/trunk@2064 f882894a-f735-0410-b71e-b25c423dba1c --- lib/tests/plugins.ini | 10 ++++++++++ lib/tests/test_opts.c | 21 +++++++++++++++++++++ 2 files changed, 31 insertions(+) (limited to 'lib/tests') diff --git a/lib/tests/plugins.ini b/lib/tests/plugins.ini index 5e20deda..6c2039f3 100644 --- a/lib/tests/plugins.ini +++ b/lib/tests/plugins.ini @@ -5,3 +5,13 @@ foo=bar [section1] foobar=baz +; defaults for check_tcp +[check_tcp] +timeout = 10 + +[tcp_long_lines] +escape = +send = Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda +expect = Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda +jail= + diff --git a/lib/tests/test_opts.c b/lib/tests/test_opts.c index e6623d1b..f7599ff8 100644 --- a/lib/tests/test_opts.c +++ b/lib/tests/test_opts.c @@ -273,6 +273,27 @@ main (int argc, char **argv) ok(array_diff(argc_test, argv_test, 5, argv_known), "Default section 4"); my_free(&argc_test,argv_test); + argv_test=(char **)malloc(4*sizeof(char **)); + argv_test[0] = "check_tcp"; + argv_test[1] = "--extra-opts"; + argv_test[2] = "--extra-opts=tcp_long_lines@plugins.ini"; + argv_test[3] = NULL; + argc_test=3; + argv_known=(char **)realloc(argv_known, 10*sizeof(char **)); + argv_known[0] = "check_tcp"; + argv_known[1] = "--timeout"; + argv_known[2] = "10"; + argv_known[3] = "--escape"; + argv_known[4] = "--send"; + argv_known[5] = "Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda"; + argv_known[6] = "--expect"; + argv_known[7] = "Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda Foo bar BAZ yadda yadda yadda"; + argv_known[8] = "--jail"; + argv_known[9] = NULL; + argv_test=np_extra_opts(&argc_test, argv_test, "check_tcp"); + ok(array_diff(argc_test, argv_test, 9, argv_known), "Long lines test"); + my_free(&argc_test,argv_test); + return exit_status(); } -- cgit v1.2.3-74-g34f1