/*****************************************************************************
- * RRDtool 1.3.0 Copyright by Tobi Oetiker, 1997-2008
+ * RRDtool 1.3.2 Copyright by Tobi Oetiker, 1997-2008
*****************************************************************************
* rrd_dump Display a RRD
*****************************************************************************
{
int rc;
int opt_noheader = 0;
- char *rrdcached = NULL;
+ char *opt_daemon = NULL;
/* init rrd clean */
switch (opt) {
case 'd':
- if (rrdcached != NULL)
- free (rrdcached);
- rrdcached = strdup (optarg);
- if (rrdcached == NULL)
+ if (opt_daemon != NULL)
+ free (opt_daemon);
+ opt_daemon = strdup (optarg);
+ if (opt_daemon == NULL)
{
rrd_set_error ("strdup failed.");
return (-1);
return (-1);
}
- if (rrdcached == NULL)
- {
- char *temp;
-
- temp = getenv (ENV_RRDCACHED_ADDRESS);
- if (temp != NULL)
- {
- rrdcached = strdup (temp);
- if (rrdcached == NULL)
- {
- rrd_set_error("strdup failed.");
- return (-1);
- }
- }
- }
-
- if (rrdcached != NULL)
- {
- int status;
-
- status = rrdc_connect (rrdcached);
- if (status != 0)
- {
- rrd_set_error ("rrdc_connect failed with status %i.", status);
- return (-1);
- }
-
- status = rrdc_flush (argv[optind]);
- if (status != 0)
- {
- rrd_set_error ("rrdc_flush (%s) failed with status %i.",
- argv[optind], status);
- return (-1);
- }
-
- rrdc_disconnect ();
- } /* if (rrdcached) */
+ rc = rrdc_flush_if_daemon(opt_daemon, argv[optind]);
+ if (opt_daemon) free(opt_daemon);
+ if (rc) return (rc);
if ((argc - optind) == 2) {
rc = rrd_dump_opt_r(argv[optind], argv[optind + 1], opt_noheader);