/*****************************************************************************
- * RRDtool 1.3.0 Copyright by Tobi Oetiker, 1997-2008
+ * RRDtool 1.3.2 Copyright by Tobi Oetiker, 1997-2008
*****************************************************************************
* rrd_fetch.c read date from an rrd to use for further processing
*****************************************************************************
long step_tmp = 1;
time_t start_tmp = 0, end_tmp = 0;
const char *cf;
- char *daemon = NULL;
+ char *opt_daemon = NULL;
int status;
rrd_time_value_t start_tv, end_tv;
break;
case 'd':
- if (daemon != NULL)
- free (daemon);
- daemon = strdup (optarg);
- if (daemon == 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 (daemon == NULL)
- {
- char *temp;
-
- temp = getenv (ENV_RRDCACHED_ADDRESS);
- if (temp != NULL)
- {
- daemon = strdup (temp);
- if (daemon == NULL)
- {
- rrd_set_error("strdup failed.");
- return (-1);
- }
- }
- }
-
- if (daemon != NULL)
- {
- status = rrdc_connect (daemon);
- 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 (daemon) */
+ status = rrdc_flush_if_daemon(opt_daemon, argv[optind]);
+ if (opt_daemon) free (opt_daemon);
+ if (status) return (-1);
cf = argv[optind + 1];