static int handle_request_fetch (HANDLER_PROTO) /* {{{ */
{
- char *file;
+ char *file, file_tmp[PATH_MAX];
char *cf;
char *start_str;
if (status != 0)
return (syntax_error(sock,cmd));
+ get_abs_path(&file, file_tmp);
+ if (!check_file_access(file, sock)) return 0;
+
status = flush_file (file);
if ((status != 0) && (status != ENOENT))
return (send_response (sock, RESP_ERR,
value = strtol (end_str, &endptr, /* base = */ 0);
if ((endptr == end_str) || (errno != 0))
return (send_response(sock, RESP_ERR,
- "Cannot parse start time `%s': Only simple integers are allowed.\n",
+ "Cannot parse end time `%s': Only simple integers are allowed.\n",
end_str));
if (value > 0)
if (i > 0)
SSTRCAT (linebuf, " ", linebuf_fill);
SSTRCAT (linebuf, ds_namv[i], linebuf_fill);
+ rrd_freemem(ds_namv[i]);
}
+ rrd_freemem(ds_namv);
add_response_info (sock, "DSName: %s\n", linebuf);
}
add_response_info (sock, "%10lu:%s\n", (unsigned long) t, linebuf);
} /* for (t) */
+ rrd_freemem(data);
return (send_response (sock, RESP_OK, "Success\n"));
#undef SSTRCAT