gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r37537 - gnunet/src/psycstore


From: gnunet
Subject: [GNUnet-SVN] r37537 - gnunet/src/psycstore
Date: Wed, 13 Jul 2016 12:02:10 +0200

Author: grothoff
Date: 2016-07-13 12:02:09 +0200 (Wed, 13 Jul 2016)
New Revision: 37537

Modified:
   gnunet/src/psycstore/plugin_psycstore_mysql.c
Log:
-notes on issues

Modified: gnunet/src/psycstore/plugin_psycstore_mysql.c
===================================================================
--- gnunet/src/psycstore/plugin_psycstore_mysql.c       2016-07-13 10:01:55 UTC 
(rev 37536)
+++ gnunet/src/psycstore/plugin_psycstore_mysql.c       2016-07-13 10:02:09 UTC 
(rev 37537)
@@ -244,7 +244,7 @@
  */
 static int
 mysql_prepare (struct GNUNET_MYSQL_Context *mc,
-              const char *sql, 
+              const char *sql,
               struct GNUNET_MYSQL_StatementHandle *stmt)
 {
   stmt = GNUNET_MYSQL_statement_prepare (mc,
@@ -326,9 +326,9 @@
   {
     LOG(GNUNET_ERROR_TYPE_ERROR,
    _("Unable to initialize Mysql.\n"));
-    return GNUNET_SYSERR; 
+    return GNUNET_SYSERR;
   }
-  
+
 /*
 #if DEBUG_PSYCSTORE
   sqlite3_trace (plugin->dbh, &sql_trace, NULL);
@@ -418,27 +418,27 @@
                               ");");
 
   /* Prepare statements */
-  mysql_prepare (plugin->mc, 
-                "BEGIN", 
+  mysql_prepare (plugin->mc,
+                "BEGIN",
                 plugin->transaction_begin);
 
-  mysql_prepare (plugin->mc, 
-                "COMMIT", 
+  mysql_prepare (plugin->mc,
+                "COMMIT",
                 plugin->transaction_commit);
 
-  mysql_prepare (plugin->mc, 
-                "ROLLBACK;", 
+  mysql_prepare (plugin->mc,
+                "ROLLBACK;",
                 plugin->transaction_rollback);
 
-  mysql_prepare (plugin->mc, 
-                "INSERT OR IGNORE INTO channels (pub_key) VALUES (?);", 
+  mysql_prepare (plugin->mc,
+                "INSERT OR IGNORE INTO channels (pub_key) VALUES (?);",
                 plugin->insert_channel_key);
 
-  mysql_prepare (plugin->mc, 
-                "INSERT OR IGNORE INTO slaves (pub_key) VALUES (?);", 
+  mysql_prepare (plugin->mc,
+                "INSERT OR IGNORE INTO slaves (pub_key) VALUES (?);",
                 plugin->insert_slave_key);
- 
-  mysql_prepare (plugin->mc, 
+
+  mysql_prepare (plugin->mc,
                 "INSERT INTO membership\n"
                 " (channel_id, slave_id, did_join, announced_at,\n"
                 "  effective_since, group_generation)\n"
@@ -675,7 +675,7 @@
                                           params))
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
-                "mysql exec_channel", statement); 
+                "mysql exec_channel", statement);
   }
 
   if (0 != mysql_stmt_reset (statement))
@@ -682,7 +682,7 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql_stmt_reset", statement);
-    return GNUNET_SYSERR; 
+    return GNUNET_SYSERR;
   }
 
   return GNUNET_OK;
@@ -717,7 +717,7 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
                 "mysql extract_result", statement);
-    return GNUNET_SYSERR; 
+    return GNUNET_SYSERR;
   }
 
   if (0 != mysql_stmt_reset (statement))
@@ -724,7 +724,7 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql_stmt_reset", statement);
-    return GNUNET_SYSERR; 
+    return GNUNET_SYSERR;
   }
 
   plugin->transaction = transaction;
@@ -747,7 +747,7 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
                 "mysql statement invalide", statement);
-    return GNUNET_SYSERR; 
+    return GNUNET_SYSERR;
   }
 
   struct GNUNET_MY_QueryParam params[] = {
@@ -760,7 +760,7 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
                 "mysql extract_result", statement);
-    return GNUNET_SYSERR; 
+    return GNUNET_SYSERR;
   }
 
   if (0 != mysql_stmt_reset (statement))
@@ -767,7 +767,7 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql_stmt_reset", statement);
-    return GNUNET_SYSERR; 
+    return GNUNET_SYSERR;
   }
 
   plugin->transaction = TRANSACTION_NONE;
@@ -789,7 +789,7 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
                 "mysql statement invalide", statement);
-    return GNUNET_SYSERR; 
+    return GNUNET_SYSERR;
   }
 
   struct GNUNET_MY_QueryParam params[] = {
@@ -802,7 +802,7 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
                 "mysql extract_result", statement);
-    return GNUNET_SYSERR;  
+    return GNUNET_SYSERR;
   }
 
   if (0 != mysql_stmt_reset (statement))
@@ -809,7 +809,7 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql_stmt_reset", statement);
-    return GNUNET_SYSERR; 
+    return GNUNET_SYSERR;
   }
 
   plugin->transaction = TRANSACTION_NONE;
@@ -830,7 +830,7 @@
   {
    LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
                 "mysql statement invalide", statement);
-    return GNUNET_SYSERR;  
+    return GNUNET_SYSERR;
   }
 
   struct GNUNET_MY_QueryParam params[] = {
@@ -851,7 +851,7 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql_stmt_reset", statement);
-    return GNUNET_SYSERR; 
+    return GNUNET_SYSERR;
   }
 
   return GNUNET_OK;
@@ -871,7 +871,7 @@
   {
    LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
                 "mysql statement invalide", statement);
-    return GNUNET_SYSERR;  
+    return GNUNET_SYSERR;
   }
 
   struct GNUNET_MY_QueryParam params[] = {
@@ -892,7 +892,7 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql_stmt_reset", statement);
-    return GNUNET_SYSERR; 
+    return GNUNET_SYSERR;
   }
 
   return GNUNET_OK;
@@ -917,7 +917,7 @@
                          uint64_t group_generation)
 {
   struct Plugin *plugin = cls;
-  
+
   uint32_t idid_join = (uint32_t)did_join;
   uint64_t iannounced_at = (uint64_t)announced_at;
   uint64_t ieffective_since = (uint64_t)effective_since;
@@ -926,7 +926,7 @@
   struct GNUNET_MYSQL_StatementHandle *stmt = plugin->insert_membership;
   MYSQL_STMT *statement = NULL;
 
-/**** FAIL HERE ****/ 
+/**** FAIL HERE ****/
   statement = GNUNET_MYSQL_statement_get_stmt (stmt);
 
   GNUNET_assert (TRANSACTION_NONE == plugin->transaction);
@@ -959,7 +959,7 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
                 "mysql extract_result", statement);
-    return GNUNET_SYSERR; 
+    return GNUNET_SYSERR;
   }
 
   if (0 != mysql_stmt_reset (statement))
@@ -966,7 +966,7 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql_stmt_reset", statement);
-    return GNUNET_SYSERR; 
+    return GNUNET_SYSERR;
   }
   return GNUNET_OK;
 }
@@ -989,7 +989,7 @@
 
   struct GNUNET_MYSQL_StatementHandle *stmt = plugin->select_membership;
   MYSQL_STMT *statement = NULL;
-  
+
   uint32_t did_join = 0;
 
   statement = GNUNET_MYSQL_statement_get_stmt (stmt);
@@ -998,7 +998,7 @@
   {
    LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
                 "mysql statement invalide", statement);
-    return GNUNET_SYSERR;  
+    return GNUNET_SYSERR;
   }
 
   int ret = GNUNET_SYSERR;
@@ -1016,7 +1016,7 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
                 "mysql execute prepared", statement);
-    return GNUNET_SYSERR; 
+    return GNUNET_SYSERR;
   }
 
   struct GNUNET_MY_ResultSpec results_select[] = {
@@ -1029,7 +1029,7 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
                 "mysql extract_result", statement);
-    return GNUNET_SYSERR; 
+    return GNUNET_SYSERR;
   }
 
   if(0 != did_join)
@@ -1045,7 +1045,7 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql_stmt_reset", statement);
-    return GNUNET_SYSERR; 
+    return GNUNET_SYSERR;
   }
 
   return ret;
@@ -1065,7 +1065,7 @@
                 uint32_t psycstore_flags)
 {
   struct Plugin *plugin = cls;
-  
+
   struct GNUNET_MYSQL_StatementHandle *stmt = plugin->insert_fragment;
   MYSQL_STMT *statement = NULL;
 
@@ -1113,7 +1113,7 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql execute prepared", statement);
-    return GNUNET_SYSERR;    
+    return GNUNET_SYSERR;
   }
 
   if (0 != mysql_stmt_reset (statement))
@@ -1120,9 +1120,9 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql_stmt_reset", statement);
-    return GNUNET_SYSERR; 
+    return GNUNET_SYSERR;
   }
-  
+
   return GNUNET_OK;
 }
 
@@ -1161,7 +1161,7 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql execute prepared", statement);
-    return GNUNET_SYSERR;   
+    return GNUNET_SYSERR;
   }
 
   if (0 != mysql_stmt_reset (statement))
@@ -1168,47 +1168,70 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql_stmt_reset", statement);
-    return GNUNET_SYSERR; 
+    return GNUNET_SYSERR;
   }
 
   return ret;
 }
 
+
 static int
-fragment_row (struct GNUNET_MYSQL_StatementHandle *stmt, 
GNUNET_PSYCSTORE_FragmentCallback cb,
+fragment_row (struct GNUNET_MYSQL_StatementHandle *stmt,
+              GNUNET_PSYCSTORE_FragmentCallback cb,
               void *cb_cls)
 {
-  int data_size = 0 ;
-  uint64_t data8 = 0;
-  MYSQL_STMT * statement = NULL;
-  statement = GNUNET_MYSQL_statement_get_stmt (stmt);
 
-  struct GNUNET_MULTICAST_MessageHeader *msg
-    = GNUNET_malloc (sizeof (*msg) + data_size);
-
+  uint64_t fragment_id;
+  uint64_t fragment_offset;
+  uint64_t message_id;
+  uint64_t group_generation;
+  struct GNUNET_MULTICAST_MessageHeader msg; // to be removed...
+  void *buf;
+  size_t buf_size;
+  int ret;
+  uint64_t flags;
+  struct GNUNET_MULTICAST_MessageHeader *mp;
   struct GNUNET_MY_ResultSpec results[] = {
-    GNUNET_MY_result_spec_uint32 ((uint32_t *)&msg->hop_counter),
-    GNUNET_MY_result_spec_auto_from_type (&msg->signature),
-    GNUNET_MY_result_spec_auto_from_type (&msg->purpose),
-    GNUNET_MY_result_spec_uint64 (&msg->fragment_id),
-    GNUNET_MY_result_spec_uint64 (&msg->fragment_offset),
-    GNUNET_MY_result_spec_uint64 (&msg->message_id),
-    GNUNET_MY_result_spec_uint64 (&msg->group_generation),
-    GNUNET_MY_result_spec_uint32 (&msg->flags),
-    GNUNET_MY_result_spec_uint64 (&data8),
-    GNUNET_MY_result_spec_auto_from_type (&msg[1]),
+    GNUNET_MY_result_spec_uint32 ((uint32_t *)&msg.hop_counter), // FIXME
+    GNUNET_MY_result_spec_auto_from_type (&msg.signature), // FIXME
+    GNUNET_MY_result_spec_auto_from_type (&msg.purpose), // FIXME
+    GNUNET_MY_result_spec_uint64 (&fragment_id),
+    GNUNET_MY_result_spec_uint64 (&fragment_offset),
+    GNUNET_MY_result_spec_uint64 (&message_id),
+    GNUNET_MY_result_spec_uint64 (&group_generation),
+    GNUNET_MY_result_spec_uint32 (&msg.flags), // FIXME
+    GNUNET_MY_result_spec_uint64 (&flags),
+    GNUNET_MY_result_spec_variable_size (&buf,
+                                         &buf_size),
     GNUNET_MY_result_spec_end
   };
 
-  if (GNUNET_OK != GNUNET_MY_extract_result (stmt,
-                                            results))
+  if (GNUNET_OK !=
+      GNUNET_MY_extract_result (stmt,
+                                results))
   {
-    LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
-                  "mysql extract_result", statement);
+    LOG_MYSQL(plugin,
+              GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
+              "mysql extract_result",
+              GNUNET_MYSQL_statement_get_stmt (stmt));
     return GNUNET_SYSERR;
   }
 
-  return cb (cb_cls, (void *) msg, data8);
+  mp = GNUNET_malloc (sizeof (msg) + buf_size);
+  *mp = msg;
+  mp->fragment_id = GNUNET_htonll (fragment_id);
+  mp->fragment_offset = GNUNET_htonllk (fragment_offset);
+  mp->message_id = GNUNET_htonllk (message_id);
+  mp->group_generation = GNUNET_htonllk (group_generation);
+  GNUNET_memcpy (&mp[1],
+                 buf,
+                 buf_size);
+  ret = cb (cb_cls,
+            mp,
+            (enum GNUNET_PSYCSTORE_MessageFlags) flags);
+  GNUNET_free (mp);
+  GNUNET_MY_cleanup_result (results);
+  return ret;
 }
 
 
@@ -1274,7 +1297,7 @@
         break;
       default:
         LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
-                    "mysql extract_result", statement);    
+                    "mysql extract_result", statement);
     }
   }
   while (sql_ret == GNUNET_YES);
@@ -1308,7 +1331,7 @@
   {
    LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql get_stmt", statement);
-    return GNUNET_SYSERR;  
+    return GNUNET_SYSERR;
   }
 
   int ret = GNUNET_SYSERR;
@@ -1327,7 +1350,7 @@
   {
     LOG_MYSQL (plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql_stmt_reset", statement);
-    return GNUNET_SYSERR; 
+    return GNUNET_SYSERR;
   }
 
   return ret;
@@ -1371,8 +1394,8 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql_stmt_reset", statement);
-    return GNUNET_SYSERR; 
-  }  
+    return GNUNET_SYSERR;
+  }
 
   return ret;
 }
@@ -1419,8 +1442,8 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql_stmt_reset", statement);
-    return GNUNET_SYSERR; 
-  }  
+    return GNUNET_SYSERR;
+  }
 
   return ret;
 }
@@ -1464,8 +1487,8 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql_stmt_reset", statement);
-    return GNUNET_SYSERR; 
-  }  
+    return GNUNET_SYSERR;
+  }
 
   return ret;
 }
@@ -1509,7 +1532,7 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql execute prepared", statement);
-    return GNUNET_SYSERR;    
+    return GNUNET_SYSERR;
   }
 /****** CHANGER ICI ****/
   ret = fragment_row (stmt, cb, cb_cls);
@@ -1518,8 +1541,8 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql_stmt_reset", statement);
-    return GNUNET_SYSERR; 
-  }  
+    return GNUNET_SYSERR;
+  }
 
   return ret;
 }
@@ -1539,7 +1562,7 @@
                       uint64_t *max_group_generation)
 {
   struct Plugin *plugin = cls;
-  
+
   struct GNUNET_MYSQL_StatementHandle *stmt = plugin->select_counters_message;
   MYSQL_STMT *statement = NULL;
 
@@ -1549,7 +1572,7 @@
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql get statement", statement);
     return GNUNET_SYSERR;
-  }  
+  }
 
   int ret = GNUNET_SYSERR;
 
@@ -1588,8 +1611,8 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql_stmt_reset", statement);
-    return GNUNET_SYSERR; 
-  }  
+    return GNUNET_SYSERR;
+  }
 
   return ret;
 }
@@ -1616,7 +1639,7 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql get_stmt", statement);
-    return GNUNET_SYSERR; 
+    return GNUNET_SYSERR;
   }
 
   int ret = GNUNET_SYSERR;
@@ -1654,8 +1677,8 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql_stmt_reset", statement);
-    return GNUNET_SYSERR; 
-  }  
+    return GNUNET_SYSERR;
+  }
 
   return ret;
 }
@@ -1705,8 +1728,8 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql_stmt_reset", statement);
-    return GNUNET_SYSERR; 
-  }    
+    return GNUNET_SYSERR;
+  }
 
   return ret;
 }
@@ -1746,9 +1769,9 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql_stmt_reset", statement);
-    return GNUNET_SYSERR; 
-  }   
-  
+    return GNUNET_SYSERR;
+  }
+
   return GNUNET_OK;
 }
 
@@ -2006,8 +2029,8 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql_stmt_reset", statement);
-    return GNUNET_SYSERR; 
-  }   
+    return GNUNET_SYSERR;
+  }
 
   return ret;
 }
@@ -2093,7 +2116,7 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql_stmt_reset", statement);
-    return GNUNET_SYSERR; 
+    return GNUNET_SYSERR;
   }
 
   return ret;
@@ -2123,7 +2146,7 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql get_stmt", statement);
-    return GNUNET_SYSERR; 
+    return GNUNET_SYSERR;
   }
 
   struct GNUNET_MY_QueryParam params_select[] = {
@@ -2176,7 +2199,7 @@
   {
     LOG_MYSQL(plugin, GNUNET_ERROR_TYPE_ERROR | GNUNET_ERROR_TYPE_BULK,
               "mysql_stmt_reset", statement);
-    return GNUNET_SYSERR; 
+    return GNUNET_SYSERR;
   }
 
   return ret;




reply via email to

[Prev in Thread] Current Thread [Next in Thread]