[rrd-developers] [PATCH] rrd_fetch_libdbi: Fixed some compiler warnings.
Tobias Oetiker
tobi at oetiker.ch
Thu Oct 1 20:54:35 CEST 2009
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 at oetiker.ch ++41 62 775 9902 / sb: -9900
More information about the rrd-developers
mailing list