Helper peerstore functions. More...
Go to the source code of this file.
Functions | |
| void | PEERSTORE_hash_key (const char *sub_system, const struct GNUNET_PeerIdentity *peer, const char *key, struct GNUNET_HashCode *ret) |
| Creates a hash of the given key combination. | |
| struct GNUNET_MQ_Envelope * | PEERSTORE_create_record_mq_envelope (uint32_t rid, const char *sub_system, const struct GNUNET_PeerIdentity *peer, const char *key, const void *value, size_t value_size, struct GNUNET_TIME_Absolute expiry, enum GNUNET_PEERSTORE_StoreOption options, uint16_t msg_type) |
| Creates a MQ envelope for a single record. | |
| struct GNUNET_PEERSTORE_Record * | PEERSTORE_parse_record_message (const struct PeerstoreRecordMessage *srm) |
| Parses a message carrying a record. | |
| void | PEERSTORE_destroy_record (struct GNUNET_PEERSTORE_Record *record) |
| Free any memory allocated for this record. | |
Helper peerstore functions.
Definition in file peerstore_common.h.
| void PEERSTORE_hash_key | ( | const char * | sub_system, |
| const struct GNUNET_PeerIdentity * | peer, | ||
| const char * | key, | ||
| struct GNUNET_HashCode * | ret | ||
| ) |
Creates a hash of the given key combination.
Definition at line 33 of file peerstore_common.c.
References GNUNET_CRYPTO_hash(), GNUNET_free, GNUNET_malloc, GNUNET_memcpy, key, and ret.
| struct GNUNET_MQ_Envelope * PEERSTORE_create_record_mq_envelope | ( | uint32_t | rid, |
| const char * | sub_system, | ||
| const struct GNUNET_PeerIdentity * | peer, | ||
| const char * | key, | ||
| const void * | value, | ||
| size_t | value_size, | ||
| struct GNUNET_TIME_Absolute | expiry, | ||
| enum GNUNET_PEERSTORE_StoreOption | options, | ||
| uint16_t | msg_type | ||
| ) |
Creates a MQ envelope for a single record.
| rid | request ID |
| sub_system | sub system string |
| peer | Peer identity (can be NULL) |
| key | record key string (can be NULL) |
| value | record value BLOB (can be NULL) |
| value_size | record value size in bytes (set to 0 if value is NULL) |
| expiry | time after which the record expires |
| options | options specific to the storage operation |
| msg_type | message type to be set in header |
Definition at line 62 of file peerstore_common.c.
References dummy, PeerstoreRecordMessage::expiry, GNUNET_assert, GNUNET_memcpy, GNUNET_MQ_msg_extra, GNUNET_TIME_absolute_hton(), key, PeerstoreRecordMessage::key_size, options, PeerstoreRecordMessage::options, PeerstoreRecordMessage::peer, PeerstoreRecordMessage::rid, PeerstoreRecordMessage::sub_system_size, value, and PeerstoreRecordMessage::value_size.
Referenced by GNUNET_PEERSTORE_store(), iterate_proc(), monitor_iterate_cb(), and watch_notifier().
| struct GNUNET_PEERSTORE_Record * PEERSTORE_parse_record_message | ( | const struct PeerstoreRecordMessage * | srm | ) |
Parses a message carrying a record.
| srm | the actual message |
Definition at line 106 of file peerstore_common.c.
References dummy, PeerstoreRecordMessage::expiry, GNUNET_break, GNUNET_malloc, GNUNET_memcpy, GNUNET_new, GNUNET_strdup, GNUNET_TIME_absolute_ntoh(), PeerstoreRecordMessage::header, PeerstoreRecordMessage::key_size, PeerstoreRecordMessage::peer, record(), GNUNET_MessageHeader::size, PeerstoreRecordMessage::sub_system_size, GNUNET_PEERSTORE_Record::value_size, and PeerstoreRecordMessage::value_size.
Referenced by check_store(), handle_iterate_result(), handle_result(), and handle_store().
| void PEERSTORE_destroy_record | ( | struct GNUNET_PEERSTORE_Record * | record | ) |
Free any memory allocated for this record.
| record |
Definition at line 156 of file peerstore_common.c.
References GNUNET_free, and record().
Referenced by check_store(), handle_iterate_result(), handle_result(), handle_store(), and store_record_continuation().