GNUnet MESSENGER service. More...
#include "platform.h"
#include "gnunet-service-messenger_message_send.h"
#include "gnunet-service-messenger_member.h"
#include "gnunet-service-messenger_member_session.h"
#include "gnunet-service-messenger_operation.h"
Go to the source code of this file.
Functions | |
void | send_message_join (struct GNUNET_MESSENGER_SrvRoom *room, struct GNUNET_MESSENGER_SrvHandle *handle, const struct GNUNET_MESSENGER_Message *message, const struct GNUNET_HashCode *hash) |
Handles a sent join message to ensure growth of the decentralized room structure. More... | |
void | send_message_peer (struct GNUNET_MESSENGER_SrvRoom *room, struct GNUNET_MESSENGER_SrvHandle *handle, const struct GNUNET_MESSENGER_Message *message, const struct GNUNET_HashCode *hash) |
Handles a sent peer message to update the rooms peer message of this service. More... | |
void | send_message_id (struct GNUNET_MESSENGER_SrvRoom *room, struct GNUNET_MESSENGER_SrvHandle *handle, const struct GNUNET_MESSENGER_Message *message, const struct GNUNET_HashCode *hash) |
Handles a sent id message to update the handles member id in the room. More... | |
void | send_message_request (struct GNUNET_MESSENGER_SrvRoom *room, struct GNUNET_MESSENGER_SrvHandle *handle, const struct GNUNET_MESSENGER_Message *message, const struct GNUNET_HashCode *hash) |
Handles a sent request message to trigger the request operation for this service. More... | |
GNUnet MESSENGER service.
Definition in file gnunet-service-messenger_message_send.c.
void send_message_join | ( | struct GNUNET_MESSENGER_SrvRoom * | room, |
struct GNUNET_MESSENGER_SrvHandle * | handle, | ||
const struct GNUNET_MESSENGER_Message * | message, | ||
const struct GNUNET_HashCode * | hash | ||
) |
Handles a sent join message to ensure growth of the decentralized room structure.
(if the service provides a peer message for this room currently, it will be forwarded)
[in,out] | room | Room of the message |
[in,out] | handle | Sending handle |
[in] | message | JOIN-Message |
[in] | hash | Hash of the message |
Definition at line 34 of file gnunet-service-messenger_message_send.c.
References check_srv_room_peer_status().
Referenced by send_srv_room_message().
void send_message_peer | ( | struct GNUNET_MESSENGER_SrvRoom * | room, |
struct GNUNET_MESSENGER_SrvHandle * | handle, | ||
const struct GNUNET_MESSENGER_Message * | message, | ||
const struct GNUNET_HashCode * | hash | ||
) |
Handles a sent peer message to update the rooms peer message of this service.
(a set peer message indicates this service being a part of the decentralized room structure)
[in,out] | room | Room of the message |
[in,out] | handle | Sending handle |
[in] | message | PEER-Message |
[in] | hash | Hash of the message |
Definition at line 43 of file gnunet-service-messenger_message_send.c.
References GNUNET_memcpy, GNUNET_new, and GNUNET_MESSENGER_SrvRoom::peer_message.
Referenced by send_srv_room_message().
void send_message_id | ( | struct GNUNET_MESSENGER_SrvRoom * | room, |
struct GNUNET_MESSENGER_SrvHandle * | handle, | ||
const struct GNUNET_MESSENGER_Message * | message, | ||
const struct GNUNET_HashCode * | hash | ||
) |
Handles a sent id message to update the handles member id in the room.
(changing member id is useful to prevent collisions)
[in,out] | room | Room of the message |
[in,out] | handle | Sending handle |
[in] | message | ID-Message |
[in] | hash | Hash of the message |
Definition at line 55 of file gnunet-service-messenger_message_send.c.
References GNUNET_MESSENGER_Message::body, change_srv_handle_member_id(), get_srv_room_key(), handle, GNUNET_MESSENGER_MessageId::id, and GNUNET_MESSENGER_MessageBody::id.
Referenced by send_srv_room_message().
void send_message_request | ( | struct GNUNET_MESSENGER_SrvRoom * | room, |
struct GNUNET_MESSENGER_SrvHandle * | handle, | ||
const struct GNUNET_MESSENGER_Message * | message, | ||
const struct GNUNET_HashCode * | hash | ||
) |
Handles a sent request message to trigger the request operation for this service.
(the request operation will deactivate the possibility of spamming requests)
[in,out] | room | Room of the message |
[in,out] | handle | Sending handle |
[in] | message | PEER-Message |
[in] | hash | Hash of the message |
Definition at line 64 of file gnunet-service-messenger_message_send.c.
References GNUNET_MESSENGER_Message::body, get_srv_room_operation_store(), GNUNET_MESSENGER_OP_REQUEST, GNUNET_MESSENGER_REQUEST_DELAY, GNUNET_MESSENGER_MessageRequest::hash, GNUNET_MESSENGER_MessageBody::request, GNUNET_MESSENGER_OperationStore::room, and use_store_operation().
Referenced by send_srv_room_message().