X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Frrd_xport.c;h=d089853a3bf214bd7cb8c43f10806e21157136e0;hb=aa4d951ab71eb7fe57840c3baaddf36809806aef;hp=c12b783bd07dce361f5b7f9045149a44db8052a0;hpb=36fd683318a492d56a990e470b28a8119066ecff;p=rrdtool.git diff --git a/src/rrd_xport.c b/src/rrd_xport.c index c12b783..d089853 100644 --- a/src/rrd_xport.c +++ b/src/rrd_xport.c @@ -1,5 +1,5 @@ /**************************************************************************** - * RRDtool 1.0.37 Copyright Tobias Oetiker, 1997 - 2000 + * RRDtool 1.2.10 Copyright by Tobi Oetiker, 1997-2005 **************************************************************************** * rrd_xport.c export RRD data ****************************************************************************/ @@ -9,8 +9,9 @@ #include "rrd_tool.h" #include "rrd_graph.h" #include "rrd_xport.h" +#include "unused.h" -#ifdef WIN32 +#if defined(_WIN32) && !defined(__CYGWIN__) && !defined(__CYGWIN32__) #include #include #endif @@ -30,7 +31,7 @@ int rrd_xport_fn(image_desc_t *, int -rrd_xport(int argc, char **argv, int *xsize, +rrd_xport(int argc, char **argv, int UNUSED(*xsize), time_t *start, time_t *end, /* which time frame do you want ? * will be changed to represent reality */ @@ -43,13 +44,10 @@ rrd_xport(int argc, char **argv, int *xsize, { image_desc_t im; - int i; - long long_tmp; time_t start_tmp=0,end_tmp=0; - char symname[100]; - long scancount; struct rrd_time_value start_tv, end_tv; char *parsetime_error = NULL; + optind = 0; opterr = 0; /* initialize getopt */ rrd_graph_init(&im); @@ -91,12 +89,11 @@ rrd_xport(int argc, char **argv, int *xsize, } break; case 'm': - long_tmp = atol(optarg); - if (long_tmp < 10) { + im.xsize = atol(optarg); + if (im.xsize < 10) { rrd_set_error("maxrows below 10 rows"); return -1; } - im.xsize = long_tmp; break; case '?': rrd_set_error("unknown option '%c'", optopt); @@ -121,116 +118,12 @@ rrd_xport(int argc, char **argv, int *xsize, im.start = start_tmp; im.end = end_tmp; - - for(i=optind;i=1){ - if(strstart <= 0){ - im.gdes[im.gdes_c-1].legend[0] = '\0'; - } else { - scan_for_col(&argv[i][argstart+strstart],FMT_LEG_LEN,im.gdes[im.gdes_c-1].legend); - } - if((im.gdes[im.gdes_c-1].vidx=find_var(&im,varname))==-1){ - im_free(&im); - rrd_set_error("unknown variable '%s'",varname); - return -1; - } - } else { - im_free(&im); - rrd_set_error("can't parse '%s'",&argv[i][argstart]); - return -1; - } - break; - default: - break; - } - + im.step = max((long)im.step, (im.end-im.start)/im.xsize); + + rrd_graph_script(argc,argv,&im,0); + if (rrd_test_error()) { + im_free(&im); + return -1; } if (im.gdes_c == 0){ @@ -396,8 +289,8 @@ rrd_xport_fn(image_desc_t *im, } /* fill data structure */ - for(dst_row = 0; dst_row < row_cnt; dst_row++) { - for(i = 0; i < nof_xports; i++) { + for(dst_row = 0; (int)dst_row < (int)row_cnt; dst_row++) { + for(i = 0; i < (int)nof_xports; i++) { j = ref_list[i]; ii = im->gdes[j].vidx; ds_cnt = &im->gdes[ii].ds_cnt;