GNUnet  0.20.0
gnunet-service-messenger_message_handle.h
Go to the documentation of this file.
1 /*
2  This file is part of GNUnet.
3  Copyright (C) 2020--2021 GNUnet e.V.
4 
5  GNUnet is free software: you can redistribute it and/or modify it
6  under the terms of the GNU Affero General Public License as published
7  by the Free Software Foundation, either version 3 of the License,
8  or (at your option) any later version.
9 
10  GNUnet is distributed in the hope that it will be useful, but
11  WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13  Affero General Public License for more details.
14 
15  You should have received a copy of the GNU Affero General Public License
16  along with this program. If not, see <http://www.gnu.org/licenses/>.
17 
18  SPDX-License-Identifier: AGPL3.0-or-later
19  */
26 #ifndef GNUNET_SERVICE_MESSENGER_MESSAGE_HANDLE_H
27 #define GNUNET_SERVICE_MESSENGER_MESSAGE_HANDLE_H
28 
29 #include "platform.h"
30 #include "gnunet_util_lib.h"
31 
33 
36 #include "messenger_api_message.h"
37 
47 void
49  struct GNUNET_MESSENGER_MemberSession *session,
50  const struct GNUNET_MESSENGER_Message *message,
51  const struct GNUNET_HashCode *hash);
52 
62 void
64  struct GNUNET_MESSENGER_MemberSession *session,
65  const struct GNUNET_MESSENGER_Message *message,
66  const struct GNUNET_HashCode *hash);
67 
77 void
79  struct GNUNET_MESSENGER_MemberSession *session,
80  const struct GNUNET_MESSENGER_Message *message,
81  const struct GNUNET_HashCode *hash);
82 
92 void
94  struct GNUNET_MESSENGER_MemberSession *session,
95  const struct GNUNET_MESSENGER_Message *message,
96  const struct GNUNET_HashCode *hash);
97 
107 void
109  struct GNUNET_MESSENGER_MemberSession *session,
110  const struct GNUNET_MESSENGER_Message *message,
111  const struct GNUNET_HashCode *hash);
112 
122 void
124  struct GNUNET_MESSENGER_MemberSession *session,
125  const struct GNUNET_MESSENGER_Message *message,
126  const struct GNUNET_HashCode *hash);
127 
137 void
139  struct GNUNET_MESSENGER_MemberSession *session,
140  const struct GNUNET_MESSENGER_Message *message,
141  const struct GNUNET_HashCode *hash);
142 
152 void
154  struct GNUNET_MESSENGER_MemberSession *session,
155  const struct GNUNET_MESSENGER_Message *message,
156  const struct GNUNET_HashCode *hash);
157 
158 #endif //GNUNET_SERVICE_MESSENGER_MESSAGE_HANDLE_H
void handle_message_key(struct GNUNET_MESSENGER_SrvRoom *room, struct GNUNET_MESSENGER_MemberSession *session, const struct GNUNET_MESSENGER_Message *message, const struct GNUNET_HashCode *hash)
Handles a received or sent key message to change the key of a member and rearrange the contacts accor...
void handle_message_peer(struct GNUNET_MESSENGER_SrvRoom *room, struct GNUNET_MESSENGER_MemberSession *session, const struct GNUNET_MESSENGER_Message *message, const struct GNUNET_HashCode *hash)
Handles a received or sent peer message to make changes of the basement in the room.
void handle_message_join(struct GNUNET_MESSENGER_SrvRoom *room, struct GNUNET_MESSENGER_MemberSession *session, const struct GNUNET_MESSENGER_Message *message, const struct GNUNET_HashCode *hash)
Handles a received or sent join message to make changes of current member information.
void handle_message_miss(struct GNUNET_MESSENGER_SrvRoom *room, struct GNUNET_MESSENGER_MemberSession *session, const struct GNUNET_MESSENGER_Message *message, const struct GNUNET_HashCode *hash)
Handles a received or sent miss message to drop a peer from the basement in the room.
void handle_message_id(struct GNUNET_MESSENGER_SrvRoom *room, struct GNUNET_MESSENGER_MemberSession *session, const struct GNUNET_MESSENGER_Message *message, const struct GNUNET_HashCode *hash)
Handles a received or sent id message to change a members id.
void handle_message_name(struct GNUNET_MESSENGER_SrvRoom *room, struct GNUNET_MESSENGER_MemberSession *session, const struct GNUNET_MESSENGER_Message *message, const struct GNUNET_HashCode *hash)
Handles a received or sent name message to rename a current member.
void handle_message_leave(struct GNUNET_MESSENGER_SrvRoom *room, struct GNUNET_MESSENGER_MemberSession *session, const struct GNUNET_MESSENGER_Message *message, const struct GNUNET_HashCode *hash)
Handles a received or sent leave message to make changes of current member information.
void handle_message_delete(struct GNUNET_MESSENGER_SrvRoom *room, struct GNUNET_MESSENGER_MemberSession *session, const struct GNUNET_MESSENGER_Message *message, const struct GNUNET_HashCode *hash)
Handles a received or sent delete message to delete a specific message from the store.
GNUnet MESSENGER service.
messenger api: client and service implementation of GNUnet MESSENGER service
A 512-bit hashcode.