diff options
-rw-r--r-- | NEWS | 2 | ||||
-rw-r--r-- | lib/parse_ini.c | 7 | ||||
-rw-r--r-- | lib/tests/plugin.ini | 5 |
3 files changed, 9 insertions, 5 deletions
@@ -6,6 +6,8 @@ This file documents the major additions and syntax changes between releases. check_ifoperstatus -n flag now works as expected (sf.net #1569488) check_ifoperstatus now supports ifType based lookup for ifIndex check_ups now sends a LOGOUT string (debian bug #387001) + Extra-opts (C plugins) now allows both '#' and ';' for comments (like N::P) + Extra-opts (C plugins) does not allow trailing comments anymore (like N::P) 1.4.13 25th Sept 2008 Fix Debian bug #460097: check_http --max-age broken (Hilko Bengen) diff --git a/lib/parse_ini.c b/lib/parse_ini.c index 654452d8..57321753 100644 --- a/lib/parse_ini.c +++ b/lib/parse_ini.c @@ -132,6 +132,7 @@ static int read_defaults(FILE *f, const char *stanza, np_arg_list **opts){ if(isspace(c)) continue; switch(c){ /* globble up coment lines */ + case ';': case '#': GOBBLE_TO(f, c, '\n'); break; @@ -232,10 +233,8 @@ static int add_option(FILE *f, np_arg_list **optlst){ if(optptr==eqptr) die(STATE_UNKNOWN, _("Config file error\n")); /* continue from '=' to start of value or EOL */ for(valptr=eqptr+1; valptr<lineend && isspace(*valptr); valptr++); - /* continue to the end of value (FIXME: watching for trailing comments) */ - for(valend=valptr; valend<lineend; valend++) - /* FIXME: N::P doesn't allow comments here. Remove next line and parse_ini won't either */ - if(*valend=='#') break; + /* continue to the end of value */ + for(valend=valptr; valend<lineend; valend++); --valend; /* Finally trim off trailing spaces */ for(valend; isspace(*valend); valend--); diff --git a/lib/tests/plugin.ini b/lib/tests/plugin.ini index e22f8bdb..511fd9f6 100644 --- a/lib/tests/plugin.ini +++ b/lib/tests/plugin.ini @@ -1,7 +1,10 @@ +# Non-standard (but accepted) comment +; standard ini comment [check_mysql] username=operator -password=secret # Remember to change later +; comment in the middle +password=secret [section_twice] foo=bar |