From: Christian Grothoff Date: Mon, 13 Jun 2016 11:40:29 +0000 (+0000) Subject: fix indentation, bad stack allocation of buf X-Git-Tag: initial-import-from-subversion-38251~796 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=0cf4193a34c4445b99b94c3c315d6a1361835cb6;p=oweals%2Fgnunet.git fix indentation, bad stack allocation of buf --- diff --git a/src/my/my.c b/src/my/my.c index 54b1b8e64..5ef2f18cf 100644 --- a/src/my/my.c +++ b/src/my/my.c @@ -27,7 +27,6 @@ #include #include "gnunet_my_lib.h" -#define STRING_SIZE 50 /** * Run a prepared SELECT statement. @@ -94,8 +93,8 @@ GNUNET_MY_exec_prepared (struct GNUNET_MYSQL_Context *mc, return GNUNET_SYSERR; } - GNUNET_MY_cleanup_query (params, - qbind); + GNUNET_MY_cleanup_query (params, + qbind); } return GNUNET_OK; @@ -111,14 +110,14 @@ GNUNET_MY_exec_prepared (struct GNUNET_MYSQL_Context *mc, */ void GNUNET_MY_cleanup_query (struct GNUNET_MY_QueryParam *qp, - MYSQL_BIND * qbind) + MYSQL_BIND *qbind) { unsigned int i; for (i=0; NULL != qp[i].conv ;i++) - if(NULL != qp[i].cleaner) + if (NULL != qp[i].cleaner) qp[i].cleaner (qp[i].conv_cls, - &qbind[i]); + &qbind[i]); } diff --git a/src/my/my_query_helper.c b/src/my/my_query_helper.c index 8ecfc2b64..c806a73fb 100644 --- a/src/my/my_query_helper.c +++ b/src/my/my_query_helper.c @@ -37,7 +37,7 @@ */ static void my_clean_query (void *cls, - MYSQL_BIND *qbind) + MYSQL_BIND *qbind) { GNUNET_free (qbind[0].buffer); } @@ -115,21 +115,10 @@ my_conv_uint16 (void *cls, const struct GNUNET_MY_QueryParam * qp, MYSQL_BIND *qbind) { - const uint16_t *u_hbo = qp->data; - uint16_t *u_nbo; - GNUNET_assert (1 == qp->num_params); - - u_nbo = GNUNET_new (uint16_t); - if (NULL == u_nbo) - return -1; - - *u_nbo = *u_hbo; - - qbind->buffer = (void *) u_nbo; - qbind->buffer_length = sizeof(uint16_t); + qbind->buffer = (void *) qp->data; + qbind->buffer_length = sizeof (uint16_t); qbind->buffer_type = MYSQL_TYPE_SHORT; - return 1; } @@ -144,7 +133,7 @@ GNUNET_MY_query_param_uint16 (const uint16_t *x) { struct GNUNET_MY_QueryParam res = { .conv = &my_conv_uint16, - .cleaner = &my_clean_query, + .cleaner = NULL, .conv_cls = NULL, .num_params = 1, .data = x, @@ -168,16 +157,8 @@ my_conv_uint32 (void *cls, const struct GNUNET_MY_QueryParam *qp, MYSQL_BIND *qbind) { - const uint32_t *u_hbo = qp->data; - uint32_t * u_nbo; - GNUNET_assert (1 == qp->num_params); - - u_nbo = GNUNET_new (uint32_t); - - *u_nbo = *u_hbo; - - qbind->buffer = (void *) u_nbo; + qbind->buffer = (void *) qp->data; qbind->buffer_length = sizeof(uint32_t); qbind->buffer_type = MYSQL_TYPE_LONG; @@ -195,7 +176,7 @@ GNUNET_MY_query_param_uint32 (const uint32_t *x) { struct GNUNET_MY_QueryParam res = { .conv = &my_conv_uint32, - .cleaner = &my_clean_query, + .cleaner = NULL, .conv_cls = NULL, .num_params = 1, .data = x, @@ -216,22 +197,13 @@ GNUNET_MY_query_param_uint32 (const uint32_t *x) */ static int my_conv_uint64 (void *cls, - const struct GNUNET_MY_QueryParam *qp, - MYSQL_BIND * qbind) + const struct GNUNET_MY_QueryParam *qp, + MYSQL_BIND * qbind) { - const uint64_t * u_hbo = qp->data; - uint64_t *u_nbo; - GNUNET_assert (1 == qp->num_params); - - u_nbo = GNUNET_new(uint64_t); - - *u_nbo = *u_hbo; - - qbind->buffer = (void *) u_nbo; + qbind->buffer = (void *) qp->data; qbind->buffer_length = sizeof (uint64_t); qbind->buffer_type = MYSQL_TYPE_LONGLONG; - return 1; } @@ -246,7 +218,7 @@ GNUNET_MY_query_param_uint64 (const uint64_t *x) { struct GNUNET_MY_QueryParam res = { .conv = &my_conv_uint64, - .cleaner = &my_clean_query, + .cleaner = NULL, .conv_cls = NULL, .num_params = 1, .data = x, @@ -387,4 +359,4 @@ GNUNET_MY_query_param_absolute_time_nbo (const struct GNUNET_TIME_AbsoluteNBO *x } -/* end of my_query_helper.c */ \ No newline at end of file +/* end of my_query_helper.c */ diff --git a/src/my/my_result_helper.c b/src/my/my_result_helper.c index c0a1dff4d..a91a24d90 100644 --- a/src/my/my_result_helper.c +++ b/src/my/my_result_helper.c @@ -116,7 +116,7 @@ cleanup_varsize_blob (void *cls, if (NULL != *ptr) { GNUNET_free (*ptr); - *ptr = NULL; + *ptr = NULL; } } @@ -297,7 +297,7 @@ post_extract_rsa_public_key (void *cls, GNUNET_free (buf); return GNUNET_SYSERR; } - + *pk = GNUNET_CRYPTO_rsa_public_key_decode (buf, size); GNUNET_free (buf); @@ -398,10 +398,10 @@ pre_extract_rsa_signature (void *cls, */ static int post_extract_rsa_signature (void *cls, - struct GNUNET_MY_ResultSpec *rs, - MYSQL_STMT *stmt, - unsigned int column, - MYSQL_BIND *results) + struct GNUNET_MY_ResultSpec *rs, + MYSQL_STMT *stmt, + unsigned int column, + MYSQL_BIND *results) { struct GNUNET_CRYPTO_RsaSignature **sig = rs->dst; void *buf; @@ -483,23 +483,23 @@ GNUNET_MY_result_spec_rsa_signature (struct GNUNET_CRYPTO_RsaSignature **sig) /** - * Extract data from a Mysql database @a result at row @a row - * - * @param cls closure - * @param[in,out] rs - * @param stmt the mysql statement that is being run - * @param column the column that is being processed - * @param[out] results - * @return - * #GNUNET_OK if all results could be extracted - * #GNUNET_SYSERR if a result was invalid (non existing field or NULL) - */ + * Extract data from a Mysql database @a result at row @a row + * + * @param cls closure + * @param[in,out] rs + * @param stmt the mysql statement that is being run + * @param column the column that is being processed + * @param[out] results + * @return + * #GNUNET_OK if all results could be extracted + * #GNUNET_SYSERR if a result was invalid (non existing field or NULL) + */ static int pre_extract_string (void * cls, - struct GNUNET_MY_ResultSpec *rs, - MYSQL_STMT *stmt, - unsigned int column, - MYSQL_BIND *results) + struct GNUNET_MY_ResultSpec *rs, + MYSQL_STMT *stmt, + unsigned int column, + MYSQL_BIND *results) { results[0].buffer = NULL; results[0].buffer_length = 0; @@ -511,32 +511,31 @@ pre_extract_string (void * cls, /** - * Check size of extracted fixed size data from a Mysql database @a - * - * @param cls closure - * @param[in,out] rs - * @param stmt the mysql statement that is being run - * @param column the column that is being processed - * @param[out] results - * @return - * #GNUNET_OK if all results could be extracted - * #GNUNET_SYSERR if a result was invalid (non existing field or NULL) - */ + * Check size of extracted fixed size data from a Mysql database @a + * + * @param cls closure + * @param[in,out] rs + * @param stmt the mysql statement that is being run + * @param column the column that is being processed + * @param[out] results + * @return + * #GNUNET_OK if all results could be extracted + * #GNUNET_SYSERR if a result was invalid (non existing field or NULL) + */ static int post_extract_string (void * cls, - struct GNUNET_MY_ResultSpec *rs, - MYSQL_STMT *stmt, - unsigned int column, - MYSQL_BIND *results) + struct GNUNET_MY_ResultSpec *rs, + MYSQL_STMT *stmt, + unsigned int column, + MYSQL_BIND *results) { - size_t size; - - size = (size_t) rs->mysql_bind_output_length; - char buf[size]; + size_t size = (size_t) rs->mysql_bind_output_length; + char *buf; if (rs->mysql_bind_output_length != size) return GNUNET_SYSERR; + buf = GNUNET_malloc (size); results[0].buffer = buf; results[0].buffer_length = size; results[0].buffer_type = MYSQL_TYPE_BLOB; @@ -550,9 +549,7 @@ post_extract_string (void * cls, GNUNET_free (buf); return GNUNET_SYSERR; } - rs->dst = buf; - return GNUNET_OK; } @@ -621,12 +618,12 @@ GNUNET_MY_result_spec_absolute_time_nbo (struct GNUNET_TIME_AbsoluteNBO *at) */ static int pre_extract_uint16 (void *cls, - struct GNUNET_MY_ResultSpec *rs, - MYSQL_STMT *stmt, - unsigned int column, - MYSQL_BIND *results) + struct GNUNET_MY_ResultSpec *rs, + MYSQL_STMT *stmt, + unsigned int column, + MYSQL_BIND *results) { - results[0].buffer = (char *)rs->dst; + results[0].buffer = rs->dst; results[0].buffer_length = rs->dst_size; results[0].length = &rs->mysql_bind_output_length; results[0].buffer_type = MYSQL_TYPE_SHORT; @@ -649,10 +646,10 @@ pre_extract_uint16 (void *cls, */ static int post_extract_uint16 (void *cls, - struct GNUNET_MY_ResultSpec *rs, - MYSQL_STMT *stmt, - unsigned int column, - MYSQL_BIND *results) + struct GNUNET_MY_ResultSpec *rs, + MYSQL_STMT *stmt, + unsigned int column, + MYSQL_BIND *results) { if (rs->dst_size != rs->mysql_bind_output_length) return GNUNET_SYSERR; @@ -696,12 +693,12 @@ GNUNET_MY_result_spec_uint16 (uint16_t *u16) */ static int pre_extract_uint32 (void *cls, - struct GNUNET_MY_ResultSpec *rs, - MYSQL_STMT *stmt, - unsigned int column, - MYSQL_BIND *results) + struct GNUNET_MY_ResultSpec *rs, + MYSQL_STMT *stmt, + unsigned int column, + MYSQL_BIND *results) { - results[0].buffer = (int *)rs->dst; + results[0].buffer = rs->dst; results[0].buffer_length = rs->dst_size; results[0].length = &rs->mysql_bind_output_length; results[0].buffer_type = MYSQL_TYPE_LONG; @@ -725,10 +722,10 @@ pre_extract_uint32 (void *cls, */ static int post_extract_uint32 (void *cls, - struct GNUNET_MY_ResultSpec *rs, - MYSQL_STMT * stmt, - unsigned int column, - MYSQL_BIND *results) + struct GNUNET_MY_ResultSpec *rs, + MYSQL_STMT * stmt, + unsigned int column, + MYSQL_BIND *results) { if (rs->dst_size != rs->mysql_bind_output_length) return GNUNET_SYSERR; @@ -758,23 +755,23 @@ GNUNET_MY_result_spec_uint32 (uint32_t *u32) /** - * Extract data from a MYSQL database @a result at row @a row - * - * @param cls closure - * @param[in,out] rs - * @param stmt the mysql statement that is being run - * @param column the column that is being processed - * @param[out] results - * @return - * #GNUNET_OK if all results could be extracted - * #GNUNET_SYSERR if a result was invalid (non-existing field or NULL) - */ + * Extract data from a MYSQL database @a result at row @a row + * + * @param cls closure + * @param[in,out] rs + * @param stmt the mysql statement that is being run + * @param column the column that is being processed + * @param[out] results + * @return + * #GNUNET_OK if all results could be extracted + * #GNUNET_SYSERR if a result was invalid (non-existing field or NULL) + */ static int pre_extract_uint64 (void *cls, - struct GNUNET_MY_ResultSpec *rs, - MYSQL_STMT *stmt, - unsigned int column, - MYSQL_BIND *results) + struct GNUNET_MY_ResultSpec *rs, + MYSQL_STMT *stmt, + unsigned int column, + MYSQL_BIND *results) { results[0].buffer = rs->dst; results[0].buffer_length = rs->dst_size; @@ -786,23 +783,23 @@ pre_extract_uint64 (void *cls, /** - * Check size of extracted fixe size data from a Mysql database - * - * @param cls closure - * @param[in,out] rs - * @param stmt the mysql statement that is being run - * @param column the column that is being processed - * @param[out] results - * @return - * #GNUNET_OK if all results could be extracted - * #GNUNET_SYSERR if a result was invalid (non-existing field or NULL) - */ + * Check size of extracted fixe size data from a Mysql database + * + * @param cls closure + * @param[in,out] rs + * @param stmt the mysql statement that is being run + * @param column the column that is being processed + * @param[out] results + * @return + * #GNUNET_OK if all results could be extracted + * #GNUNET_SYSERR if a result was invalid (non-existing field or NULL) + */ static int post_extract_uint64 (void *cls, - struct GNUNET_MY_ResultSpec *rs, - MYSQL_STMT *stmt, - unsigned int column, - MYSQL_BIND *results) + struct GNUNET_MY_ResultSpec *rs, + MYSQL_STMT *stmt, + unsigned int column, + MYSQL_BIND *results) { if (rs->dst_size != rs->mysql_bind_output_length) return GNUNET_SYSERR; @@ -811,11 +808,11 @@ post_extract_uint64 (void *cls, /** - * uint64_t expected. - * - * @param[out] u64 where to store the result - * @return array entry for the result specification to use - */ + * uint64_t expected. + * + * @param[out] u64 where to store the result + * @return array entry for the result specification to use + */ struct GNUNET_MY_ResultSpec GNUNET_MY_result_spec_uint64 (uint64_t *u64) { diff --git a/src/my/test_my.c b/src/my/test_my.c index 3e051e467..4bea101ca 100644 --- a/src/my/test_my.c +++ b/src/my/test_my.c @@ -75,29 +75,30 @@ run_queries (struct GNUNET_MYSQL_Context *context) pub = GNUNET_CRYPTO_rsa_private_key_get_public (priv); memset (&hmsg, 42, sizeof(hmsg)); sig = GNUNET_CRYPTO_rsa_sign_fdh (priv, - &hmsg); + &hmsg); u16 = 16; u32 = 32; - u64 = 64; + u64 = UINT64_MAX; memset (&hc, 0, sizeof(hc)); memset (&hc2, 0, sizeof(hc2)); - statements_handle_insert = GNUNET_MYSQL_statement_prepare (context, - "INSERT INTO test_my2 (" - " pub" - ",sig" - ",abs_time" - ",forever" - ",abs_time_nbo" - ",hash" - ",vsize" - ",str" - ",u16" - ",u32" - ",u64" - ") VALUES " - "( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"); + statements_handle_insert + = GNUNET_MYSQL_statement_prepare (context, + "INSERT INTO test_my2 (" + " pub" + ",sig" + ",abs_time" + ",forever" + ",abs_time_nbo" + ",hash" + ",vsize" + ",str" + ",u16" + ",u32" + ",u64" + ") VALUES " + "( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"); if (NULL == statements_handle_insert) { @@ -128,19 +129,20 @@ run_queries (struct GNUNET_MYSQL_Context *context) return 1; } - statements_handle_select = GNUNET_MYSQL_statement_prepare (context, - "SELECT" - " pub" - ",sig" - ",abs_time" - ",forever" - ",hash" - ",vsize" - ",str" - ",u16" - ",u32" - ",u64" - " FROM test_my2"); + statements_handle_select + = GNUNET_MYSQL_statement_prepare (context, + "SELECT" + " pub" + ",sig" + ",abs_time" + ",forever" + ",hash" + ",vsize" + ",str" + ",u16" + ",u32" + ",u64" + " FROM test_my2"); if (NULL == statements_handle_select) { @@ -200,21 +202,21 @@ run_queries (struct GNUNET_MYSQL_Context *context) msg2, msg2_len)); -GNUNET_break (strlen (msg3) == strlen(msg4)); -GNUNET_break (0 == + GNUNET_break (strlen (msg3) == strlen(msg4)); + GNUNET_break (0 == strcmp (msg3, msg4)); GNUNET_break (16 == u162); GNUNET_break (32 == u322); - GNUNET_break (64 == u642); + GNUNET_break (UINT64_MAX == u642); GNUNET_MY_cleanup_result (results_select); GNUNET_CRYPTO_rsa_signature_free (sig); GNUNET_CRYPTO_rsa_private_key_free (priv); - GNUNET_CRYPTO_rsa_public_key_free (pub); - + GNUNET_CRYPTO_rsa_public_key_free (pub); + if (GNUNET_OK != ret) return 1; @@ -225,8 +227,8 @@ GNUNET_break (0 == int main (int argc, const char * const argv[]) { - struct GNUNET_CONFIGURATION_Handle *config = NULL; - struct GNUNET_MYSQL_Context *context = NULL; + struct GNUNET_CONFIGURATION_Handle *config; + struct GNUNET_MYSQL_Context *context; int ret; GNUNET_log_setup ("test-my",