[rrd-developers] [PATCH] rrd_fetch_libdbi: Fixed some compiler warnings.
Sebastian Harl
sh at tokkee.org
Fri Sep 25 22:15:26 CEST 2009
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
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: Digital signature
Url : http://lists.oetiker.ch/pipermail/rrd-developers/attachments/20090925/def8bcfe/attachment.pgp
More information about the rrd-developers
mailing list