X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Frrd_info.c;h=1e769417b4d4610654ff1adc48d6b57cc39564f5;hb=9106f186793f0bb8ed8b1849a1f6df295eb6b181;hp=a96c34ce8cbcd6c6654f3aa88f468c7ebee06f99;hpb=7e511c6ad12b609296bbfabbdb80ddc8426d15e6;p=rrdtool.git diff --git a/src/rrd_info.c b/src/rrd_info.c index a96c34c..1e76941 100644 --- a/src/rrd_info.c +++ b/src/rrd_info.c @@ -1,5 +1,5 @@ /***************************************************************************** - * RRDtool 1.0.33 Copyright Tobias Oetiker, 1997 - 2000 + * RRDtool 1.1.x Copyright Tobias Oetiker, 1997 - 2002 ***************************************************************************** * rrd_info Get Information about the configuration of an RRD *****************************************************************************/ @@ -12,6 +12,7 @@ static char * sprintf_alloc(char *, ...); static info_t *push(info_t *, char *, enum info_type, infoval); info_t *rrd_info(int, char **); +info_t *rrd_info_r(char *filename); /* allocate memory for string */ static char * @@ -60,10 +61,26 @@ static info_t return(next); } - + info_t * rrd_info(int argc, char **argv) { - int i,ii=0; + info_t *info; + + if(argc < 2){ + rrd_set_error("please specify an rrd"); + return NULL; + } + + info = rrd_info_r(argv[1]); + + return(info); +} + + + +info_t * +rrd_info_r(char *filename) { + unsigned int i,ii=0; FILE *in_file; rrd_t rrd; info_t *data,*cd; @@ -71,12 +88,12 @@ rrd_info(int argc, char **argv) { enum cf_en current_cf; enum dst_en current_ds; - if(rrd_open(argv[1],&in_file,&rrd, RRD_READONLY)==-1){ + if(rrd_open(filename,&in_file,&rrd, RRD_READONLY)==-1){ return(NULL); } fclose(in_file); - info.u_str=argv[1]; + info.u_str=filename; cd=push(NULL,sprintf_alloc("filename"), RD_I_STR, info); data=cd; @@ -193,7 +210,7 @@ rrd_info(int argc, char **argv) { break; case CF_FAILURES: { - short j; + unsigned short j; char *violations_array; char history[MAX_FAILURES_WINDOW_LEN+1]; violations_array = (char*) rrd.cdp_prep[i*rrd.stat_head->ds_cnt +ii].scratch;