+ GNUNET_CRYPTO_hash (&crc->i, sizeof (int), &crc->key);
+ GNUNET_assert (NULL !=
+ GNUNET_DATASTORE_get_key (datastore, crc->offset, &crc->key,
+ get_type (crc->i), 1, 1, TIMEOUT,
+ &check_nothing, crc));
+ break;
+ case RP_RESERVE:
+ crc->phase = RP_PUT_MULTIPLE;
+ GNUNET_DATASTORE_reserve (datastore, 128 * 1024, 2, 1, 1, TIMEOUT,
+ &get_reserved, crc);
+ break;
+ case RP_PUT_MULTIPLE:
+ crc->phase = RP_PUT_MULTIPLE_NEXT;
+ GNUNET_DATASTORE_put (datastore, crc->rid, &crc->key, get_size (42),
+ get_data (42), get_type (42), get_priority (42),
+ get_anonymity (42), 0, get_expiration (42), 1, 1,
+ TIMEOUT, &check_success, crc);
+ break;
+ case RP_PUT_MULTIPLE_NEXT:
+ crc->phase = RP_GET_MULTIPLE;
+ GNUNET_DATASTORE_put (datastore, crc->rid, &crc->key, get_size (43),
+ get_data (43), get_type (42), get_priority (43),
+ get_anonymity (43), 0, get_expiration (43), 1, 1,
+ TIMEOUT, &check_success, crc);
+ break;
+ case RP_GET_MULTIPLE:
+ GNUNET_assert (NULL !=
+ GNUNET_DATASTORE_get_key (datastore, crc->offset, &crc->key,
+ get_type (42), 1, 1, TIMEOUT,
+ &check_multiple, crc));
+ break;
+ case RP_GET_MULTIPLE_NEXT:
+ GNUNET_assert (NULL !=
+ GNUNET_DATASTORE_get_key (datastore, crc->offset, &crc->key,
+ get_type (42), 1, 1, TIMEOUT,
+ &check_multiple, crc));
+ break;
+ case RP_UPDATE:
+ GNUNET_assert (crc->uid > 0);
+ crc->phase = RP_UPDATE_VALIDATE;
+ GNUNET_DATASTORE_update (datastore, crc->uid, 100, get_expiration (42), 1,
+ 1, TIMEOUT, &check_success, crc);
+ break;
+ case RP_UPDATE_VALIDATE:
+ GNUNET_assert (NULL !=
+ GNUNET_DATASTORE_get_key (datastore, crc->offset, &crc->key,
+ get_type (42), 1, 1, TIMEOUT,
+ &check_update, crc));
+ break;
+ case RP_DONE: