diff options
author | David Barksdale <amatus@amat.us> | 2017-02-20 13:08:08 -0600 |
---|---|---|
committer | David Barksdale <amatus@amat.us> | 2017-02-20 13:11:19 -0600 |
commit | fe4f6e8cedfa8d0a57b0247727fc4849d38c2f3a (patch) | |
tree | cbcbc99a93ec8f466426190a340cc46f54d2641e /src/datastore/plugin_datastore_mysql.c | |
parent | f553963d649374a75cc5a6e57df39d83565eb913 (diff) | |
download | gnunet-fe4f6e8cedfa8d0a57b0247727fc4849d38c2f3a.tar.gz gnunet-fe4f6e8cedfa8d0a57b0247727fc4849d38c2f3a.zip |
Restrict update to positive priority deltas
This is only ever called with positive values and the mysql and postgres
plugins were not handling negative values correctly anyway.
Diffstat (limited to 'src/datastore/plugin_datastore_mysql.c')
-rw-r--r-- | src/datastore/plugin_datastore_mysql.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/src/datastore/plugin_datastore_mysql.c b/src/datastore/plugin_datastore_mysql.c index d76b4ccb4..1067064aa 100644 --- a/src/datastore/plugin_datastore_mysql.c +++ b/src/datastore/plugin_datastore_mysql.c | |||
@@ -395,9 +395,7 @@ mysql_plugin_put (void *cls, | |||
395 | * @param cls our "struct Plugin*" | 395 | * @param cls our "struct Plugin*" |
396 | * @param uid unique identifier of the datum | 396 | * @param uid unique identifier of the datum |
397 | * @param delta by how much should the priority | 397 | * @param delta by how much should the priority |
398 | * change? If priority + delta < 0 the | 398 | * change? |
399 | * priority should be set to 0 (never go | ||
400 | * negative). | ||
401 | * @param expire new expiration time should be the | 399 | * @param expire new expiration time should be the |
402 | * MAX of any existing expiration time and | 400 | * MAX of any existing expiration time and |
403 | * this value | 401 | * this value |
@@ -407,13 +405,12 @@ mysql_plugin_put (void *cls, | |||
407 | static void | 405 | static void |
408 | mysql_plugin_update (void *cls, | 406 | mysql_plugin_update (void *cls, |
409 | uint64_t uid, | 407 | uint64_t uid, |
410 | int delta, | 408 | uint32_t delta, |
411 | struct GNUNET_TIME_Absolute expire, | 409 | struct GNUNET_TIME_Absolute expire, |
412 | PluginUpdateCont cont, | 410 | PluginUpdateCont cont, |
413 | void *cont_cls) | 411 | void *cont_cls) |
414 | { | 412 | { |
415 | struct Plugin *plugin = cls; | 413 | struct Plugin *plugin = cls; |
416 | uint32_t idelta = (uint32_t) delta; | ||
417 | uint64_t lexpire = expire.abs_value_us; | 414 | uint64_t lexpire = expire.abs_value_us; |
418 | int ret; | 415 | int ret; |
419 | 416 | ||
@@ -424,7 +421,7 @@ mysql_plugin_update (void *cls, | |||
424 | GNUNET_STRINGS_absolute_time_to_string (expire)); | 421 | GNUNET_STRINGS_absolute_time_to_string (expire)); |
425 | 422 | ||
426 | struct GNUNET_MY_QueryParam params_update[] = { | 423 | struct GNUNET_MY_QueryParam params_update[] = { |
427 | GNUNET_MY_query_param_uint32 (&idelta), | 424 | GNUNET_MY_query_param_uint32 (&delta), |
428 | GNUNET_MY_query_param_uint64 (&lexpire), | 425 | GNUNET_MY_query_param_uint64 (&lexpire), |
429 | GNUNET_MY_query_param_uint64 (&lexpire), | 426 | GNUNET_MY_query_param_uint64 (&lexpire), |
430 | GNUNET_MY_query_param_uint64 (&uid), | 427 | GNUNET_MY_query_param_uint64 (&uid), |