[dev.icinga.com #2291] unknown macros are not replaced, and misleading to single dollar signs #855
Comments
Updated by mfriedrich on 2012-01-29 00:39:04 +00:00 one major disadvantage removing the output - strings containing two dollar signs could be accidently interpreted as macro, i.e. passwords. so this must be evaluated if to be resolved differently, or just updating the documentation on possible errors. another reason for removing it might be the case that all dollar signs need to be escaped by a second one, i.e. "$$foo$$bar" becomes "$foo$bar" afterwards.
|
Updated by mfriedrich on 2012-04-03 07:14:32 +00:00 i'm still undecided if it makes sense to clean non-existant macros away, or maybe allow re-enabling with a config flag? |
Updated by mfriedrich on 2012-04-19 14:48:00 +00:00
postpone it, and leave the discussion open. |
Updated by mfriedrich on 2012-07-06 17:45:11 +00:00 hm, that could be made a config option, allowing users to restore compatibility again (if they know what they do, as most the users having these errors, actually don't). |
Updated by idl0r on 2012-07-30 08:05:23 +00:00 A config option to let the user decide whether to strip away the non-existant macros would be perfect. +1 on that :P |
Updated by mfriedrich on 2012-08-09 15:02:38 +00:00
dev decision:
|
Updated by mfriedrich on 2012-08-22 17:37:09 +00:00
|
Updated by mfriedrich on 2012-08-22 17:38:10 +00:00
|
Updated by mfriedrich on 2012-08-22 17:42:38 +00:00 this is a behavioural change, which should be marked in CHANGES section. people wanting the old behavior can revert that by setting keep_unknown_macros=1 where the macro outputbuffer is kept as is. the default case will be to warn the user on unkbown macros. that can be
it possibly not work with the shell tricks for passwords, such as '$mypassisquoted$fortheshell' the correct way of defining that one will be '$$mypassisquoted$$fortheshell' in order to let the core know that there's actually a valid dolar sign. that method is described in the docs, but i believe people have probably circumvented that in various ways, so prepare for the clusterfuck either way. but, as a matter of fact, leaving that on the shell for interpreting $foo and erroring out on $ this should be fixed either way. |
Updated by mfriedrich on 2012-08-22 17:43:35 +00:00
|
Updated by mfriedrich on 2012-08-22 17:54:10 +00:00
in dev/core - please test! |
Updated by mfriedrich on 2012-08-31 11:10:53 +00:00
|
This issue has been migrated from Redmine: https://dev.icinga.com/issues/2291
Created by mfriedrich on 2012-01-29 00:21:22 +00:00
Assignee: mfriedrich
Status: Resolved (closed on 2012-08-31 11:10:53 +00:00)
Target Version: 1.8
Last Update: 2012-08-31 11:10:53 +00:00 (in Redmine)
if you are using macros which are not valid in the current situation, such as using$CONTACTEMAIL$ within a check command, or a service only macro while executing a host check/notification, this will put the macro as is on the shell.
this is then being interpreted as $CONTACTEMAIL (empty) and $ ... and then confusing the user that there was only a dollar sign as macro replacement.
http://tracker.nagios.org/view.php?id=34
Attachments
Changesets
2012-08-22 17:46:32 +00:00 by mfriedrich 02341c6
2012-10-08 13:28:14 +00:00 by mfriedrich d5f9efd
Relations:
The text was updated successfully, but these errors were encountered: