/*****************************************************************************
- * RRDtool 1.2.23 Copyright by Tobi Oetiker, 1997-2007
+ * RRDtool 1.2.99907080300 Copyright by Tobi Oetiker, 1997-2007
*****************************************************************************
* rrd_restore.c creates new rrd from data dumped by rrd_dump.c
*****************************************************************************/
rrd->stat_head = NULL;
return -1;
}
- /* make sure we output the right version */
- strcpy(rrd->stat_head->version, RRD_VERSION);
-
- /* if (atoi(rrd -> stat_head -> version) < 2)
- {
- rrd_set_error("Can only restore version >= 2 (Not %s). Dump your old rrd using a current rrdtool dump.", rrd -> stat_head -> version );
- return -1;
- } */
+ /* make sure we output the right version only go over 3 if input is over 3 too */
+ if (input_version > 3) {
+ strcpy(rrd->stat_head->version, RRD_VERSION);
+ } else {
+ strcpy(rrd->stat_head->version, RRD_VERSION3);
+ }
rrd->stat_head->float_cookie = FLOAT_COOKIE;
rrd->stat_head->ds_cnt = 0;
read_tag(&ptr2, "seasonal_smooth_idx", "%lu",
&(rrd->rra_def[rra_index].
par[RRA_seasonal_smooth_idx].u_cnt));
+ if (atoi(rrd->stat_head->version) >= 4) {
+ read_tag(&ptr2, "smoothing_window", "%lf",
+ &(rrd->rra_def[rra_index].
+ par[RRA_seasonal_smoothing_window].u_val));
+ }
read_tag(&ptr2, "dependent_rra_idx", "%lu",
&(rrd->rra_def[rra_index].
par[RRA_dependent_rra_idx].u_cnt));
char *buf;
char rc = 0;
char force_overwrite = 0;
+ struct option long_options[] = {
+ {"range-check", no_argument, 0, 'r'},
+ {"force-overwrite", no_argument, 0, 'f'},
+ {0, 0, 0, 0}
+ };
/* init rrd clean */
optind = 0;
opterr = 0; /* initialize getopt */
while (1) {
- static struct option long_options[] = {
- {"range-check", no_argument, 0, 'r'},
- {"force-overwrite", no_argument, 0, 'f'},
- {0, 0, 0, 0}
- };
int option_index = 0;
int opt;
-
opt = getopt_long(argc, argv, "rf", long_options, &option_index);
if (opt == EOF)