|
View:
New views
2 Messages
—
Rating Filter:
Alert me
|
|
|
[PATCH] rrd_fetch_libdbi: Fixed some compiler warnings.While at it, declared some private helper functions as static.
--- program/src/rrd_fetch_libdbi.c | 50 ++++++++++++++++++++++----------------- program/src/rrd_tool.h | 2 +- 2 files changed, 29 insertions(+), 23 deletions(-) diff --git a/program/src/rrd_fetch_libdbi.c b/program/src/rrd_fetch_libdbi.c index ad9a766..0e8bc93 100644 --- a/program/src/rrd_fetch_libdbi.c +++ b/program/src/rrd_fetch_libdbi.c @@ -17,20 +17,20 @@ struct sql_table_helper { }; /* the prototypes */ -void _sql_close(struct sql_table_helper* th); -int _sql_setparam(struct sql_table_helper* th,char* key, char* value); -int _sql_fetchrow(struct sql_table_helper* th,time_t *timestamp, rrd_value_t *value,int ordered); -char* _find_next_separator(char* start,char separator); -char* _find_next_separator_twice(char*start,char separator); -char _hexcharhelper(char c); -int _inline_unescape (char* string); -double rrd_fetch_dbi_double(dbi_result *result,int idx); -long rrd_fetch_dbi_long(dbi_result *result,int idx); +static void _sql_close(struct sql_table_helper* th); +static int _sql_setparam(struct sql_table_helper* th,char* key, char* value); +static int _sql_fetchrow(struct sql_table_helper* th,time_t *timestamp, rrd_value_t *value,int ordered); +static char* _find_next_separator(char* start,char separator); +static char* _find_next_separator_twice(char*start,char separator); +static char _hexcharhelper(char c); +static int _inline_unescape (char* string); +static double rrd_fetch_dbi_double(dbi_result *result,int idx); +static long rrd_fetch_dbi_long(dbi_result *result,int idx); /* the real code */ /* helpers to get correctly converted values from DB*/ -long rrd_fetch_dbi_long(dbi_result *result,int idx) { +static long rrd_fetch_dbi_long(dbi_result *result,int idx) { char *ptmp=""; long value=DNAN; /* get the attributes for this filed */ @@ -87,7 +87,7 @@ long rrd_fetch_dbi_long(dbi_result *result,int idx) { return value; } -double rrd_fetch_dbi_double(dbi_result *result,int idx) { +static double rrd_fetch_dbi_double(dbi_result *result,int idx) { char *ptmp=""; double value=DNAN; /* get the attributes for this filed */ @@ -144,7 +144,7 @@ double rrd_fetch_dbi_double(dbi_result *result,int idx) { return value; } -void _sql_close(struct sql_table_helper* th) { +static void _sql_close(struct sql_table_helper* th) { /* close only if connected */ if (th->conn) { if (getenv("RRDDEBUGSQL")) { fprintf(stderr,"RRDDEBUGSQL: %li: close connection\n",time(NULL) ); } @@ -158,7 +158,7 @@ void _sql_close(struct sql_table_helper* th) { } } -int _sql_setparam(struct sql_table_helper* th,char* key, char* value) { +static int _sql_setparam(struct sql_table_helper* th,char* key, char* value) { char* dbi_errstr=NULL; dbi_driver driver; /* if not connected */ @@ -200,7 +200,7 @@ int _sql_setparam(struct sql_table_helper* th,char* key, char* value) { return 0; } -int _sql_fetchrow(struct sql_table_helper* th,time_t *timestamp, rrd_value_t *value,int ordered) { +static int _sql_fetchrow(struct sql_table_helper* th,time_t *timestamp, rrd_value_t *value,int ordered) { char* dbi_errstr=NULL; char sql[10240]; time_t startt=0,endt=0; @@ -269,7 +269,7 @@ int _sql_fetchrow(struct sql_table_helper* th,time_t *timestamp, rrd_value_t *va return 1; } -char* _find_next_separator(char* start,char separator) { +static char* _find_next_separator(char* start,char separator) { char* found=strchr(start,separator); /* have we found it */ if (found) { @@ -282,7 +282,7 @@ char* _find_next_separator(char* start,char separator) { return NULL; } -char* _find_next_separator_twice(char*start,char separator) { +static char* _find_next_separator_twice(char*start,char separator) { char *found=start; /* find next separator in string*/ while (found) { @@ -300,7 +300,7 @@ char* _find_next_separator_twice(char*start,char separator) { return NULL; } -char _hexcharhelper(char c) { +static char _hexcharhelper(char c) { switch (c) { case '0': return 0 ; break; case '1': return 1 ; break; @@ -328,7 +328,7 @@ char _hexcharhelper(char c) { return -1; } -int _inline_unescape (char* string) { +static int _inline_unescape (char* string) { char *src=string; char *dst=string; char c,h1,h2; @@ -341,9 +341,15 @@ int _inline_unescape (char* string) { } else { /* try to calculate hex value from the next 2 values*/ h1=_hexcharhelper(*src); - if (h1<0) { rrd_set_error( "string escape error at: %s\n",string);return(1); } + if (h1 == (char)-1) { + rrd_set_error("string escape error at: %s\n",string); + return(1); + } h2=_hexcharhelper(*(src+1)); - if (h2<0) { rrd_set_error( "string escape error at: %s\n",string);return(1); } + if (h1 == (char)-1) { + rrd_set_error("string escape error at: %s\n",string); + return(1); + } c=h2+(h1<<4); /* increase src pointer by 2 skiping 2 chars */ src+=2; @@ -358,8 +364,8 @@ int _inline_unescape (char* string) { int rrd_fetch_fn_libdbi( - char *filename, /* name of the rrd */ - enum cf_en cf_idx, /* which consolidation function ?*/ + const char *filename, /* name of the rrd */ + enum cf_en cf_idx __attribute__((unused)), /* consolidation function */ time_t *start, time_t *end, /* which time frame do you want ? * will be changed to represent reality */ diff --git a/program/src/rrd_tool.h b/program/src/rrd_tool.h index c1c9728..47d231d 100644 --- a/program/src/rrd_tool.h +++ b/program/src/rrd_tool.h @@ -94,7 +94,7 @@ extern "C" { #ifdef HAVE_LIBDBI -int rrd_fetch_fn_libdbi(char *filename, enum cf_en cf_idx, +int rrd_fetch_fn_libdbi(const char *filename, enum cf_en cf_idx, time_t *start,time_t *end, unsigned long *step, unsigned long *ds_cnt, -- 1.6.4.rc1 _______________________________________________ rrd-developers mailing list rrd-developers@... https://lists.oetiker.ch/cgi-bin/listinfo/rrd-developers |
|
|
Re: [PATCH] rrd_fetch_libdbi: Fixed some compiler warnings.Hi Sebastian,
it's in. thanks tobi Friday Sebastian Harl wrote: > While at it, declared some private helper functions as static. > --- > program/src/rrd_fetch_libdbi.c | 50 ++++++++++++++++++++++----------------- > program/src/rrd_tool.h | 2 +- > 2 files changed, 29 insertions(+), 23 deletions(-) > > diff --git a/program/src/rrd_fetch_libdbi.c b/program/src/rrd_fetch_libdbi.c > index ad9a766..0e8bc93 100644 > --- a/program/src/rrd_fetch_libdbi.c > +++ b/program/src/rrd_fetch_libdbi.c > @@ -17,20 +17,20 @@ struct sql_table_helper { > }; > > /* the prototypes */ > -void _sql_close(struct sql_table_helper* th); > -int _sql_setparam(struct sql_table_helper* th,char* key, char* value); > -int _sql_fetchrow(struct sql_table_helper* th,time_t *timestamp, rrd_value_t *value,int ordered); > -char* _find_next_separator(char* start,char separator); > -char* _find_next_separator_twice(char*start,char separator); > -char _hexcharhelper(char c); > -int _inline_unescape (char* string); > -double rrd_fetch_dbi_double(dbi_result *result,int idx); > -long rrd_fetch_dbi_long(dbi_result *result,int idx); > +static void _sql_close(struct sql_table_helper* th); > +static int _sql_setparam(struct sql_table_helper* th,char* key, char* value); > +static int _sql_fetchrow(struct sql_table_helper* th,time_t *timestamp, rrd_value_t *value,int ordered); > +static char* _find_next_separator(char* start,char separator); > +static char* _find_next_separator_twice(char*start,char separator); > +static char _hexcharhelper(char c); > +static int _inline_unescape (char* string); > +static double rrd_fetch_dbi_double(dbi_result *result,int idx); > +static long rrd_fetch_dbi_long(dbi_result *result,int idx); > > /* the real code */ > > /* helpers to get correctly converted values from DB*/ > -long rrd_fetch_dbi_long(dbi_result *result,int idx) { > +static long rrd_fetch_dbi_long(dbi_result *result,int idx) { > char *ptmp=""; > long value=DNAN; > /* get the attributes for this filed */ > @@ -87,7 +87,7 @@ long rrd_fetch_dbi_long(dbi_result *result,int idx) { > return value; > } > > -double rrd_fetch_dbi_double(dbi_result *result,int idx) { > +static double rrd_fetch_dbi_double(dbi_result *result,int idx) { > char *ptmp=""; > double value=DNAN; > /* get the attributes for this filed */ > @@ -144,7 +144,7 @@ double rrd_fetch_dbi_double(dbi_result *result,int idx) { > return value; > } > > -void _sql_close(struct sql_table_helper* th) { > +static void _sql_close(struct sql_table_helper* th) { > /* close only if connected */ > if (th->conn) { > if (getenv("RRDDEBUGSQL")) { fprintf(stderr,"RRDDEBUGSQL: %li: close connection\n",time(NULL) ); } > @@ -158,7 +158,7 @@ void _sql_close(struct sql_table_helper* th) { > } > } > > -int _sql_setparam(struct sql_table_helper* th,char* key, char* value) { > +static int _sql_setparam(struct sql_table_helper* th,char* key, char* value) { > char* dbi_errstr=NULL; > dbi_driver driver; > /* if not connected */ > @@ -200,7 +200,7 @@ int _sql_setparam(struct sql_table_helper* th,char* key, char* value) { > return 0; > } > > -int _sql_fetchrow(struct sql_table_helper* th,time_t *timestamp, rrd_value_t *value,int ordered) { > +static int _sql_fetchrow(struct sql_table_helper* th,time_t *timestamp, rrd_value_t *value,int ordered) { > char* dbi_errstr=NULL; > char sql[10240]; > time_t startt=0,endt=0; > @@ -269,7 +269,7 @@ int _sql_fetchrow(struct sql_table_helper* th,time_t *timestamp, rrd_value_t *va > return 1; > } > > -char* _find_next_separator(char* start,char separator) { > +static char* _find_next_separator(char* start,char separator) { > char* found=strchr(start,separator); > /* have we found it */ > if (found) { > @@ -282,7 +282,7 @@ char* _find_next_separator(char* start,char separator) { > return NULL; > } > > -char* _find_next_separator_twice(char*start,char separator) { > +static char* _find_next_separator_twice(char*start,char separator) { > char *found=start; > /* find next separator in string*/ > while (found) { > @@ -300,7 +300,7 @@ char* _find_next_separator_twice(char*start,char separator) { > return NULL; > } > > -char _hexcharhelper(char c) { > +static char _hexcharhelper(char c) { > switch (c) { > case '0': return 0 ; break; > case '1': return 1 ; break; > @@ -328,7 +328,7 @@ char _hexcharhelper(char c) { > return -1; > } > > -int _inline_unescape (char* string) { > +static int _inline_unescape (char* string) { > char *src=string; > char *dst=string; > char c,h1,h2; > @@ -341,9 +341,15 @@ int _inline_unescape (char* string) { > } else { > /* try to calculate hex value from the next 2 values*/ > h1=_hexcharhelper(*src); > - if (h1<0) { rrd_set_error( "string escape error at: %s\n",string);return(1); } > + if (h1 == (char)-1) { > + rrd_set_error("string escape error at: %s\n",string); > + return(1); > + } > h2=_hexcharhelper(*(src+1)); > - if (h2<0) { rrd_set_error( "string escape error at: %s\n",string);return(1); } > + if (h1 == (char)-1) { > + rrd_set_error("string escape error at: %s\n",string); > + return(1); > + } > c=h2+(h1<<4); > /* increase src pointer by 2 skiping 2 chars */ > src+=2; > @@ -358,8 +364,8 @@ int _inline_unescape (char* string) { > > int > rrd_fetch_fn_libdbi( > - char *filename, /* name of the rrd */ > - enum cf_en cf_idx, /* which consolidation function ?*/ > + const char *filename, /* name of the rrd */ > + enum cf_en cf_idx __attribute__((unused)), /* consolidation function */ > time_t *start, > time_t *end, /* which time frame do you want ? > * will be changed to represent reality */ > diff --git a/program/src/rrd_tool.h b/program/src/rrd_tool.h > index c1c9728..47d231d 100644 > --- a/program/src/rrd_tool.h > +++ b/program/src/rrd_tool.h > @@ -94,7 +94,7 @@ extern "C" { > > > #ifdef HAVE_LIBDBI > -int rrd_fetch_fn_libdbi(char *filename, enum cf_en cf_idx, > +int rrd_fetch_fn_libdbi(const char *filename, enum cf_en cf_idx, > time_t *start,time_t *end, > unsigned long *step, > unsigned long *ds_cnt, > -- Tobi Oetiker, OETIKER+PARTNER AG, Aarweg 15 CH-4600 Olten, Switzerland http://it.oetiker.ch tobi@... ++41 62 775 9902 / sb: -9900 _______________________________________________ rrd-developers mailing list rrd-developers@... https://lists.oetiker.ch/cgi-bin/listinfo/rrd-developers |
| Free embeddable forum powered by Nabble | Forum Help |