projects
/
collection4.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
8fca1d7
)
src/graph_ident.c: ident_to_json: Escape strings before adding them to the buffer.
author
Florian Forster
<ff@octo.it>
Tue, 6 Jul 2010 20:24:54 +0000
(22:24 +0200)
committer
Florian Forster
<octo@leeloo.lan.home.verplant.org>
Tue, 6 Jul 2010 20:24:54 +0000
(22:24 +0200)
src/graph_ident.c
patch
|
blob
|
history
diff --git
a/src/graph_ident.c
b/src/graph_ident.c
index
be3cbfd
..
d1b1b05
100644
(file)
--- a/
src/graph_ident.c
+++ b/
src/graph_ident.c
@@
-34,6
+34,7
@@
#include "graph_ident.h"
#include "common.h"
#include "filesystem.h"
#include "graph_ident.h"
#include "common.h"
#include "filesystem.h"
+#include "utils_cgi.h"
#include <fcgiapp.h>
#include <fcgi_stdio.h>
#include <fcgiapp.h>
#include <fcgi_stdio.h>
@@
-476,6
+477,12
@@
char *ident_to_file (const graph_ident_t *ident) /* {{{ */
return (strdup (buffer));
} /* }}} char *ident_to_file */
return (strdup (buffer));
} /* }}} char *ident_to_file */
+#define ADD_FIELD(field) do { \
+ char json[1024]; \
+ json_escape_copy (json, ident->field, sizeof (json)); \
+ strlcat (buffer, json, sizeof (buffer)); \
+} while (0)
+
char *ident_to_json (const graph_ident_t *ident) /* {{{ */
{
char buffer[4096];
char *ident_to_json (const graph_ident_t *ident) /* {{{ */
{
char buffer[4096];
@@
-483,20
+490,22
@@
char *ident_to_json (const graph_ident_t *ident) /* {{{ */
buffer[0] = 0;
strlcat (buffer, "{\"host\":\"", sizeof (buffer));
buffer[0] = 0;
strlcat (buffer, "{\"host\":\"", sizeof (buffer));
-
strlcat (buffer, ident->host, sizeof (buffer)
);
+
ADD_FIELD (host
);
strlcat (buffer, "\",\"plugin\":\"", sizeof (buffer));
strlcat (buffer, "\",\"plugin\":\"", sizeof (buffer));
-
strlcat (buffer, ident->plugin, sizeof (buffer)
);
+
ADD_FIELD (plugin
);
strlcat (buffer, "\",\"plugin_instance\":\"", sizeof (buffer));
strlcat (buffer, "\",\"plugin_instance\":\"", sizeof (buffer));
-
strlcat (buffer, ident->plugin_instance, sizeof (buffer)
);
+
ADD_FIELD (plugin_instance
);
strlcat (buffer, "\",\"type\":\"", sizeof (buffer));
strlcat (buffer, "\",\"type\":\"", sizeof (buffer));
-
strlcat (buffer, ident->type, sizeof (buffer)
);
+
ADD_FIELD (type
);
strlcat (buffer, "\",\"type_instance\":\"", sizeof (buffer));
strlcat (buffer, "\",\"type_instance\":\"", sizeof (buffer));
-
strlcat (buffer, ident->type_instance, sizeof (buffer)
);
+
ADD_FIELD (type_instance
);
strlcat (buffer, "\"}", sizeof (buffer));
return (strdup (buffer));
} /* }}} char *ident_to_json */
strlcat (buffer, "\"}", sizeof (buffer));
return (strdup (buffer));
} /* }}} char *ident_to_json */
+#undef ADD_FIELD
+
time_t ident_get_mtime (const graph_ident_t *ident) /* {{{ */
{
char *file;
time_t ident_get_mtime (const graph_ident_t *ident) /* {{{ */
{
char *file;