diff options
author | Ton Voon <tonvoon@users.sourceforge.net> | 2006-03-29 16:33:36 +0000 |
---|---|---|
committer | Ton Voon <tonvoon@users.sourceforge.net> | 2006-03-29 16:33:36 +0000 |
commit | f5c1cf6dd406be0b795f7388617d5469c6a358be (patch) | |
tree | 841b908d652b621846457a1e46f12c397a315286 /plugins/utils.c | |
parent | a0f387467691292fe62c66e56fbc8476c7ecbb2d (diff) | |
download | monitoring-plugins-f5c1cf6dd406be0b795f7388617d5469c6a358be.tar.gz |
New function to for escaped strings from command line for send/quit.
Adapted from Sebastian Wiesinger's patch (1292404)
git-svn-id: https://nagiosplug.svn.sourceforge.net/svnroot/nagiosplug/nagiosplug/trunk@1365 f882894a-f735-0410-b71e-b25c423dba1c
Diffstat (limited to 'plugins/utils.c')
-rw-r--r-- | plugins/utils.c | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/plugins/utils.c b/plugins/utils.c index 685a638a..a5245c67 100644 --- a/plugins/utils.c +++ b/plugins/utils.c @@ -727,3 +727,33 @@ char *fperfdata (const char *label, return data; } + +char *np_escaped_string (const char *string) { + char *data; + int i, j=0; + data = strdup(string); + for (i=0; data[i]; i++) { + if (data[i] == '\\') { + switch(data[++i]) { + case 'n': + data[j++] = '\n'; + break; + case 'r': + data[j++] = '\r'; + break; + case 't': + data[j++] = '\t'; + break; + case '\\': + data[j++] = '\\'; + break; + default: + data[j++] = data[i]; + } + } else { + data[j++] = data[i]; + } + } + data[j] = '\0'; + return data; +} |