[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r37976 - gnunet/src/psycstore
From: |
gnunet |
Subject: |
[GNUnet-SVN] r37976 - gnunet/src/psycstore |
Date: |
Thu, 22 Sep 2016 14:19:13 +0200 |
Author: tg
Date: 2016-09-22 14:19:13 +0200 (Thu, 22 Sep 2016)
New Revision: 37976
Modified:
gnunet/src/psycstore/plugin_psycstore_mysql.c
Log:
psycstore/mysql: check return values
Modified: gnunet/src/psycstore/plugin_psycstore_mysql.c
===================================================================
--- gnunet/src/psycstore/plugin_psycstore_mysql.c 2016-09-22 11:49:55 UTC
(rev 37975)
+++ gnunet/src/psycstore/plugin_psycstore_mysql.c 2016-09-22 12:19:13 UTC
(rev 37976)
@@ -56,7 +56,13 @@
* a failure of the command 'cmd' on file 'filename'
* with the message given by strerror(errno).
*/
-#define LOG_MYSQL(db, level, cmd, stmt) do { GNUNET_log_from (level,
"psycstore-mysql", _("`%s' failed at %s:%d with error: %s\n"), cmd, __FILE__,
__LINE__, mysql_stmt_error (GNUNET_MYSQL_statement_get_stmt(stmt))); } while(0)
+#define LOG_MYSQL(db, level, cmd, stmt) \
+ do { \
+ GNUNET_log_from (level, "psycstore-mysql", \
+ _("`%s' failed at %s:%d with error: %s\n"), \
+ cmd, __FILE__, __LINE__, \
+ mysql_stmt_error
(GNUNET_MYSQL_statement_get_stmt(stmt))); \
+ } while (0)
#define LOG(kind,...) GNUNET_log_from (kind, "psycstore-mysql", __VA_ARGS__)
@@ -282,7 +288,7 @@
"psycstore-mysql", "FILENAME");
return GNUNET_SYSERR;
}
-
+
if (GNUNET_OK != GNUNET_DISK_file_test (filename))
{
if (GNUNET_OK != GNUNET_DISK_directory_create_for_file (filename))
@@ -619,12 +625,10 @@
GNUNET_MY_query_param_end
};
- if(GNUNET_OK != GNUNET_MY_exec_prepared (plugin->mc,
- stmt,
- params))
+ if (GNUNET_OK != GNUNET_MY_exec_prepared (plugin->mc, stmt, params))
{
LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
- "mysql exec_channel", stmt);
+ "mysql exec_channel", stmt);
}
if (0 != mysql_stmt_reset (GNUNET_MYSQL_statement_get_stmt (stmt)))
@@ -645,17 +649,15 @@
transaction_begin (struct Plugin *plugin, enum Transactions transaction)
{
struct GNUNET_MYSQL_StatementHandle *stmt = plugin->transaction_begin;
-
+
struct GNUNET_MY_QueryParam params[] = {
GNUNET_MY_query_param_end
};
- if (GNUNET_OK != GNUNET_MY_exec_prepared (plugin->mc,
- stmt,
- params))
+ if (GNUNET_OK != GNUNET_MY_exec_prepared (plugin->mc, stmt, params))
{
LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
- "mysql extract_result", stmt);
+ "mysql exexc_prepared", stmt);
return GNUNET_SYSERR;
}
@@ -683,12 +685,10 @@
GNUNET_MY_query_param_end
};
- if (GNUNET_OK != GNUNET_MY_exec_prepared( plugin->mc,
- stmt,
- params))
+ if (GNUNET_OK != GNUNET_MY_exec_prepared (plugin->mc, stmt, params))
{
LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
- "mysql extract_result", stmt);
+ "mysql exec_prepared", stmt);
return GNUNET_SYSERR;
}
@@ -716,12 +716,10 @@
GNUNET_MY_query_param_end
};
- if (GNUNET_OK != GNUNET_MY_exec_prepared (plugin->mc,
- stmt,
- params))
+ if (GNUNET_OK != GNUNET_MY_exec_prepared (plugin->mc, stmt, params))
{
LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
- "mysql extract_result", stmt);
+ "mysql exec_prepared", stmt);
return GNUNET_SYSERR;
}
@@ -748,12 +746,10 @@
GNUNET_MY_query_param_end
};
- if (GNUNET_OK != GNUNET_MY_exec_prepared (plugin->mc,
- stmt,
- params))
+ if (GNUNET_OK != GNUNET_MY_exec_prepared (plugin->mc, stmt, params))
{
LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
- "mysql exec_prepared", stmt);
+ "mysql exec_prepared", stmt);
return GNUNET_SYSERR;
}
@@ -779,12 +775,10 @@
GNUNET_MY_query_param_end
};
- if (GNUNET_OK != GNUNET_MY_exec_prepared( plugin->mc,
- stmt,
- params))
+ if (GNUNET_OK != GNUNET_MY_exec_prepared (plugin->mc, stmt, params))
{
LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
- "mysql exec_prepared", stmt);
+ "mysql exec_prepared", stmt);
return GNUNET_SYSERR;
}
@@ -846,12 +840,10 @@
GNUNET_MY_query_param_end
};
- if (GNUNET_OK != GNUNET_MY_exec_prepared (plugin->mc,
- stmt,
- params))
+ if (GNUNET_OK != GNUNET_MY_exec_prepared (plugin->mc, stmt, params))
{
LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
- "mysql exec_prepared", stmt);
+ "mysql exec_prepared", stmt);
return GNUNET_SYSERR;
}
@@ -893,9 +885,7 @@
GNUNET_MY_query_param_end
};
- if (GNUNET_OK != GNUNET_MY_exec_prepared (plugin->mc,
- stmt,
- params_select))
+ if (GNUNET_OK != GNUNET_MY_exec_prepared (plugin->mc, stmt, params_select))
{
LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
"mysql execute prepared", stmt);
@@ -990,9 +980,7 @@
GNUNET_MY_query_param_end
};
- if (GNUNET_OK != GNUNET_MY_exec_prepared (plugin->mc,
- stmt,
- params_insert))
+ if (GNUNET_OK != GNUNET_MY_exec_prepared (plugin->mc, stmt, params_insert))
{
LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
"mysql execute prepared", stmt);
@@ -1035,14 +1023,13 @@
GNUNET_MY_query_param_end
};
- sql_ret = GNUNET_MY_exec_prepared (plugin->mc,
- stmt,
- params_update);
- switch(sql_ret)
+ sql_ret = GNUNET_MY_exec_prepared (plugin->mc, stmt, params_update);
+ switch (sql_ret)
{
case GNUNET_OK:
ret = GNUNET_OK;
break;
+
default:
LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
"mysql execute prepared", stmt);
@@ -1106,12 +1093,12 @@
{
case GNUNET_NO:
if (ret != GNUNET_OK)
- ret = GNUNET_NO;
+ ret = GNUNET_NO;
break;
+
case GNUNET_OK:
+ mp = GNUNET_malloc (sizeof (*mp) + buf_size);
- mp = GNUNET_malloc (sizeof (*mp) + buf_size);
-
mp->header.size = htons (sizeof (*mp) + buf_size);
mp->header.type = htons (GNUNET_MESSAGE_TYPE_MULTICAST_MESSAGE);
mp->hop_counter = htonl (hop_counter);
@@ -1130,13 +1117,11 @@
GNUNET_memcpy (&mp[1],
buf,
buf_size);
- ret = cb (cb_cls,
- mp,
- (enum GNUNET_PSYCSTORE_MessageFlags) flags);
-
+ ret = cb (cb_cls, mp, (enum GNUNET_PSYCSTORE_MessageFlags) flags);
+
GNUNET_MY_cleanup_result (results);
-
break;
+
default:
LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
"mysql extract_result", stmt);
@@ -1155,37 +1140,29 @@
int ret = GNUNET_SYSERR;
int sql_ret;
- if(NULL == plugin->mc)
+ // FIXME
+ if (NULL == plugin->mc || NULL == stmt || NULL == params)
{
- fprintf(stderr, "bla\n");
+ fprintf(stderr, "%p %p %p\n", plugin->mc, stmt, params);
+ return GNUNET_SYSERR;
}
- if(NULL == stmt)
+ sql_ret = GNUNET_MY_exec_prepared (plugin->mc, stmt, params);
+ switch (sql_ret)
{
- fprintf(stderr, "blo\n" );
- }
-
- if(NULL == params)
- {
- fprintf(stderr, "toot\n" );
- }
-
- sql_ret = GNUNET_MY_exec_prepared (plugin->mc,
- stmt,
- params);
- switch(sql_ret)
- {
case GNUNET_NO:
if (ret != GNUNET_OK)
- ret = GNUNET_NO;
+ ret = GNUNET_NO;
break;
+
case GNUNET_YES:
ret = fragment_row (stmt, cb, cb_cls);
(*returned_fragments)++;
break;
+
default:
- LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
- "mysql exec_prepared", stmt);
+ LOG_MYSQL (plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
+ "mysql exec_prepared", stmt);
}
return ret;
@@ -1388,17 +1365,17 @@
GNUNET_MY_query_param_end
};
- sql_ret = GNUNET_MY_exec_prepared (plugin->mc,
- stmt,
- params_select);
- switch(sql_ret)
+ sql_ret = GNUNET_MY_exec_prepared (plugin->mc, stmt, params_select);
+ switch (sql_ret)
{
case GNUNET_NO:
ret = GNUNET_NO;
break;
+
case GNUNET_OK:
ret = fragment_row (stmt, cb, cb_cls);
break;
+
default:
LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
"mysql execute prepared", stmt);
@@ -1439,9 +1416,7 @@
GNUNET_MY_query_param_end
};
- if (GNUNET_OK != GNUNET_MY_exec_prepared (plugin->mc,
- stmt,
- params_select))
+ if (GNUNET_OK != GNUNET_MY_exec_prepared (plugin->mc, stmt, params_select))
{
LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
"mysql execute prepared", stmt);
@@ -1498,9 +1473,7 @@
GNUNET_MY_query_param_end
};
- if (GNUNET_OK != GNUNET_MY_exec_prepared (plugin->mc,
- stmt,
- params_select))
+ if (GNUNET_OK != GNUNET_MY_exec_prepared (plugin->mc, stmt, params_select))
{
LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
"mysql execute prepared", stmt);
@@ -1552,14 +1525,11 @@
GNUNET_MY_query_param_end
};
- ret = GNUNET_MY_exec_prepared (plugin->mc,
- stmt,
- params);
-
+ ret = GNUNET_MY_exec_prepared (plugin->mc, stmt, params);
if (GNUNET_OK != ret)
{
LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
- "mysql execute prepared", stmt);
+ "mysql exec_prepared", stmt);
return GNUNET_SYSERR;
}
@@ -1829,16 +1799,16 @@
GNUNET_MY_result_spec_end
};
- GNUNET_MY_exec_prepared (plugin->mc,
- stmt,
- params_select);
-
-
- sql_ret = GNUNET_MY_extract_result (stmt,
- results);
-
- switch (sql_ret)
+ if (GNUNET_OK != GNUNET_MY_exec_prepared (plugin->mc, stmt, params_select))
{
+ LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
+ "mysql exec_prepared", stmt);
+ }
+ else
+ {
+ sql_ret = GNUNET_MY_extract_result (stmt, results);
+ switch (sql_ret)
+ {
case GNUNET_NO:
ret = GNUNET_NO;
break;
@@ -1848,7 +1818,8 @@
break;
default:
LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
- "mysql extract_result", stmt);
+ "mysql extract_result", stmt);
+ }
}
if (0 != mysql_stmt_reset (GNUNET_MYSQL_statement_get_stmt (stmt)))
@@ -1903,11 +1874,13 @@
do
{
- GNUNET_MY_exec_prepared (plugin->mc,
- stmt,
- params_select);
- sql_ret = GNUNET_MY_extract_result (stmt,
- results);
+ if (GNUNET_OK != GNUNET_MY_exec_prepared (plugin->mc, stmt, params_select))
+ {
+ LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
+ "mysql exec_prepared", stmt);
+ break;
+ }
+ sql_ret = GNUNET_MY_extract_result (stmt, results);
switch (sql_ret)
{
case GNUNET_NO:
@@ -1914,6 +1887,7 @@
if (ret != GNUNET_OK)
ret = GNUNET_NO;
break;
+
case GNUNET_YES:
ret = cb (cb_cls, (const char *) name2,
value_current,
@@ -1922,6 +1896,7 @@
if (ret != GNUNET_YES)
sql_ret = GNUNET_NO;
break;
+
default:
LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
"mysql extract_result", stmt);
@@ -1976,12 +1951,13 @@
do
{
- GNUNET_MY_exec_prepared (plugin->mc,
- stmt,
- params_select);
- sql_ret = GNUNET_MY_extract_result (stmt,
- results);
-
+ if (GNUNET_OK != GNUNET_MY_exec_prepared (plugin->mc, stmt, params_select))
+ {
+ LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
+ "mysql exec_prepared", stmt);
+ break;
+ }
+ sql_ret = GNUNET_MY_extract_result (stmt, results);
switch (sql_ret)
{
case GNUNET_NO:
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r37976 - gnunet/src/psycstore,
gnunet <=