On 12/15/2009 01:38 PM, Marc Powell wrote:
> On Dec 15, 2009, at 2:04 PM, Gordon Messmer wrote:
>    
>> Quoting from the documentation:
>>
>> The following table lists the object variables that will be implicitly 
>> inherited from related objects if you don't explicitly specify their value 
>> in your object definition or inherit them from a template
>>
>> ...so I need to not inherit the value from my template.  How do I do that?
>>      
> Don't specify the directive in the template.
>    

Which means that I have to expand the template where I null-ify the 
notification period with the values from any of the templates it 
"uses".  That seems like a minor inconvenience, but it's still uglier 
than it ought to be.  When I do so, I still get the warning from "nagios 
-v".  I'll test it to make sure that it's working.

>> In some cases you may not want your host, service, or contact definitions to 
>> inherit values of string variables from the templates they reference. If 
>> this is the case, you can specify "null" (without quotes) as the value of 
>> the variable that you do not want to inherit.
>>      
> You're mixing sections of the documentation to try to make a connection that 
> doesn't exist.

If that's so, then at the very least the documentation should be updated 
to note that this won't work.

> Again, specified with a value of 'null' does not equate to unspecified. 
> Looking at the code, if you specify the value in any way, including a value 
> of 'null', it breaks the implied inheritance.
>
> xodtemplate.h --
>
> #define XODTEMPLATE_NULL                  "null"
>
> xdata/xodtemplate.c --
>
>          else if(!strcmp(variable,"notification_period")){
>              if(strcmp(value,XODTEMPLATE_NULL)){
>                  if((temp_service->notification_period=(char 
> *)strdup(value))==NULL)
>                      result=ERROR;
>                      }
>              temp_service->have_notification_period=TRUE;
>                  }
>    

That sure looks like a bug to me.  Even the indentation looks weird to 
me, is that the normal style?  I can't imagine why "null" would be 
considered a valid notification period.  If 
have_notification_period=TRUE were in the preceding block, the 
documentation would make more sense, and implied inheritance would be a 
lot easier to use.  Do you think a patch to modify this behavior would 
be accepted?

Thanks for the explanation.  I appreciate your help.


------------------------------------------------------------------------------
This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon's best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev 
_______________________________________________
Nagios-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/nagios-users
::: Please include Nagios version, plugin version (-v) and OS when reporting 
any issue. 
::: Messages without supporting info will risk being sent to /dev/null

Reply via email to