[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gnunet] 07/16: MESSENGER: Types adjusted and added configuration fields
From: |
gnunet |
Subject: |
[gnunet] 07/16: MESSENGER: Types adjusted and added configuration fields |
Date: |
Sun, 17 Dec 2023 00:09:01 +0100 |
This is an automated email from the git hooks/post-receive script.
thejackimonster pushed a commit to branch master
in repository gnunet.
commit 934780b39b5dca514b0ee75f6ecd7247c3c72332
Author: TheJackiMonster <thejackimonster@gmail.com>
AuthorDate: Fri Dec 8 18:09:52 2023 +0100
MESSENGER: Types adjusted and added configuration fields
Signed-off-by: TheJackiMonster <thejackimonster@gmail.com>
---
src/service/messenger/gnunet-service-messenger.c | 3 +-
.../messenger/gnunet-service-messenger_basement.c | 4 +-
.../messenger/gnunet-service-messenger_basement.h | 6 +--
.../messenger/gnunet-service-messenger_handle.c | 52 +++++++++++-------
.../messenger/gnunet-service-messenger_handle.h | 13 +++--
.../gnunet-service-messenger_list_handles.c | 2 +-
.../gnunet-service-messenger_list_handles.h | 2 +-
.../messenger/gnunet-service-messenger_member.c | 14 ++---
.../gnunet-service-messenger_member_session.c | 22 ++++----
.../gnunet-service-messenger_member_session.h | 16 +++---
.../gnunet-service-messenger_member_store.c | 10 ++--
.../gnunet-service-messenger_member_store.h | 2 +-
.../gnunet-service-messenger_message_recv.c | 8 +--
.../gnunet-service-messenger_message_recv.h | 6 +--
.../gnunet-service-messenger_message_send.c | 2 +-
.../gnunet-service-messenger_message_state.c | 2 +-
.../gnunet-service-messenger_message_state.h | 2 +-
.../gnunet-service-messenger_message_store.c | 25 ++++-----
.../gnunet-service-messenger_message_store.h | 14 ++---
.../messenger/gnunet-service-messenger_operation.c | 4 +-
.../messenger/gnunet-service-messenger_operation.h | 4 +-
.../gnunet-service-messenger_operation_store.c | 6 +--
.../gnunet-service-messenger_operation_store.h | 4 +-
.../messenger/gnunet-service-messenger_room.c | 62 ++++++++++++----------
.../messenger/gnunet-service-messenger_room.h | 14 ++---
.../messenger/gnunet-service-messenger_service.c | 25 ++++++---
.../messenger/gnunet-service-messenger_service.h | 11 ++--
.../messenger/gnunet-service-messenger_tunnel.c | 31 +++++------
.../messenger/gnunet-service-messenger_tunnel.h | 11 ++--
src/service/messenger/messenger.conf.in | 4 +-
src/service/messenger/messenger_api_message.c | 34 ++++++------
src/service/messenger/messenger_api_message.h | 35 ++++++------
src/service/messenger/messenger_api_room.c | 2 +-
33 files changed, 250 insertions(+), 202 deletions(-)
diff --git a/src/service/messenger/gnunet-service-messenger.c
b/src/service/messenger/gnunet-service-messenger.c
index b1521f4f8..ae919bbd1 100644
--- a/src/service/messenger/gnunet-service-messenger.c
+++ b/src/service/messenger/gnunet-service-messenger.c
@@ -294,7 +294,8 @@ check_send_message (void *cls,
NULL))
return GNUNET_NO;
- const int allowed = filter_message_sending (&message);
+ enum GNUNET_GenericReturnValue allowed;
+ allowed = filter_message_sending (&message);
cleanup_message (&message);
return GNUNET_SYSERR != allowed? GNUNET_OK : GNUNET_NO;
diff --git a/src/service/messenger/gnunet-service-messenger_basement.c
b/src/service/messenger/gnunet-service-messenger_basement.c
index d4de28c4c..8e3dd3358 100644
--- a/src/service/messenger/gnunet-service-messenger_basement.c
+++ b/src/service/messenger/gnunet-service-messenger_basement.c
@@ -41,7 +41,7 @@ count_of_tunnels (const struct GNUNET_MESSENGER_ListTunnels
*tunnels)
}
-int
+enum GNUNET_GenericReturnValue
should_connect_tunnel_to (size_t count,
size_t src,
size_t dst)
@@ -53,7 +53,7 @@ should_connect_tunnel_to (size_t count,
}
-int
+enum GNUNET_GenericReturnValue
required_connection_between (size_t count,
size_t src,
size_t dst)
diff --git a/src/service/messenger/gnunet-service-messenger_basement.h
b/src/service/messenger/gnunet-service-messenger_basement.h
index a097b482f..988ff9d1a 100644
--- a/src/service/messenger/gnunet-service-messenger_basement.h
+++ b/src/service/messenger/gnunet-service-messenger_basement.h
@@ -1,6 +1,6 @@
/*
This file is part of GNUnet.
- Copyright (C) 2020--2021 GNUnet e.V.
+ Copyright (C) 2020--2023 GNUnet e.V.
GNUnet is free software: you can redistribute it and/or modify it
under the terms of the GNU Affero General Public License as published
@@ -47,7 +47,7 @@ count_of_tunnels (const struct GNUNET_MESSENGER_ListTunnels
*tunnels);
* @param[in] dst Destination index
* @return #GNUNET_YES or #GNUNET_NO based on topologic requirement
*/
-int
+enum GNUNET_GenericReturnValue
should_connect_tunnel_to (size_t count,
size_t src,
size_t dst);
@@ -62,7 +62,7 @@ should_connect_tunnel_to (size_t count,
* @param[in] dst Destination index
* @return #GNUNET_YES or #GNUNET_NO based on topologic requirement
*/
-int
+enum GNUNET_GenericReturnValue
required_connection_between (size_t count,
size_t src,
size_t dst);
diff --git a/src/service/messenger/gnunet-service-messenger_handle.c
b/src/service/messenger/gnunet-service-messenger_handle.c
index 4f15ad2f3..d3e417c15 100644
--- a/src/service/messenger/gnunet-service-messenger_handle.c
+++ b/src/service/messenger/gnunet-service-messenger_handle.c
@@ -50,6 +50,7 @@ create_srv_handle (struct GNUNET_MESSENGER_Service *service,
handle->member_ids = GNUNET_CONTAINER_multihashmap_create (8, GNUNET_NO);
handle->next_ids = GNUNET_CONTAINER_multihashmap_create (4, GNUNET_NO);
+ handle->routing = GNUNET_CONTAINER_multihashmap_create (4, GNUNET_NO);
handle->notify = NULL;
@@ -57,13 +58,12 @@ create_srv_handle (struct GNUNET_MESSENGER_Service *service,
}
-int
-iterate_free_member_ids (void *cls,
- const struct GNUNET_HashCode *key,
- void *value)
+static enum GNUNET_GenericReturnValue
+iterate_free_values (void *cls,
+ const struct GNUNET_HashCode *key,
+ void *value)
{
GNUNET_free (value);
-
return GNUNET_YES;
}
@@ -77,12 +77,13 @@ destroy_srv_handle (struct GNUNET_MESSENGER_SrvHandle
*handle)
GNUNET_SCHEDULER_cancel (handle->notify);
GNUNET_CONTAINER_multihashmap_iterate (handle->next_ids,
- iterate_free_member_ids, NULL);
+ iterate_free_values, NULL);
GNUNET_CONTAINER_multihashmap_iterate (handle->member_ids,
- iterate_free_member_ids, NULL);
+ iterate_free_values, NULL);
GNUNET_CONTAINER_multihashmap_destroy (handle->next_ids);
GNUNET_CONTAINER_multihashmap_destroy (handle->member_ids);
+ GNUNET_CONTAINER_multihashmap_destroy (handle->routing);
GNUNET_free (handle);
}
@@ -132,7 +133,7 @@ get_srv_handle_data_subdir (const struct
GNUNET_MESSENGER_SrvHandle *handle,
}
-static int
+static enum GNUNET_GenericReturnValue
create_handle_member_id (const struct GNUNET_MESSENGER_SrvHandle *handle,
const struct GNUNET_HashCode *key)
{
@@ -173,7 +174,7 @@ get_srv_handle_member_id (const struct
GNUNET_MESSENGER_SrvHandle *handle,
}
-int
+enum GNUNET_GenericReturnValue
change_srv_handle_member_id (struct GNUNET_MESSENGER_SrvHandle *handle,
const struct GNUNET_HashCode *key,
const struct GNUNET_ShortHashCode *unique_id)
@@ -213,22 +214,28 @@ change_srv_handle_member_id (struct
GNUNET_MESSENGER_SrvHandle *handle,
}
-int
+enum GNUNET_GenericReturnValue
open_srv_handle_room (struct GNUNET_MESSENGER_SrvHandle *handle,
const struct GNUNET_HashCode *key)
{
GNUNET_assert ((handle) && (key));
- if ((! get_srv_handle_member_id (handle, key)) && (GNUNET_YES !=
- create_handle_member_id (
- handle, key)))
+ if (GNUNET_OK != GNUNET_CONTAINER_multihashmap_put (handle->routing,
+ key,
+ NULL,
+
GNUNET_CONTAINER_MULTIHASHMAPOPTION_REPLACE))
+ return GNUNET_NO;
+
+ if ((! get_srv_handle_member_id (handle, key)) &&
+ (GNUNET_YES != create_handle_member_id (handle,
+ key)))
return GNUNET_NO;
return open_service_room (handle->service, handle, key);
}
-int
+enum GNUNET_GenericReturnValue
entry_srv_handle_room (struct GNUNET_MESSENGER_SrvHandle *handle,
const struct GNUNET_PeerIdentity *door,
const struct GNUNET_HashCode *key)
@@ -244,14 +251,14 @@ entry_srv_handle_room (struct GNUNET_MESSENGER_SrvHandle
*handle,
}
-int
+enum GNUNET_GenericReturnValue
close_srv_handle_room (struct GNUNET_MESSENGER_SrvHandle *handle,
const struct GNUNET_HashCode *key)
{
GNUNET_assert ((handle) && (key));
GNUNET_CONTAINER_multihashmap_get_multiple (handle->next_ids, key,
- iterate_free_member_ids, NULL);
+ iterate_free_values, NULL);
GNUNET_CONTAINER_multihashmap_remove_all (handle->next_ids, key);
if ((handle->notify) && (0 == GNUNET_CONTAINER_multihashmap_size (
@@ -264,7 +271,14 @@ close_srv_handle_room (struct GNUNET_MESSENGER_SrvHandle
*handle,
if (! get_srv_handle_member_id (handle, key))
return GNUNET_NO;
- return close_service_room (handle->service, handle, key);
+ enum GNUNET_GenericReturnValue result;
+ result = close_service_room (handle->service, handle, key);
+
+ if (GNUNET_YES != result)
+ return result;
+
+ GNUNET_CONTAINER_multihashmap_remove_all (handle->routing, key);
+ return result;
}
@@ -290,7 +304,7 @@ sync_srv_handle_messages (struct GNUNET_MESSENGER_SrvHandle
*handle,
}
-int
+enum GNUNET_GenericReturnValue
send_srv_handle_message (struct GNUNET_MESSENGER_SrvHandle *handle,
const struct GNUNET_HashCode *key,
const struct GNUNET_MESSENGER_Message *message)
@@ -449,7 +463,7 @@ notify_srv_handle_message (struct
GNUNET_MESSENGER_SrvHandle *handle,
}
-static int
+static enum GNUNET_GenericReturnValue
iterate_next_member_ids (void *cls,
const struct GNUNET_HashCode *key,
void *value)
diff --git a/src/service/messenger/gnunet-service-messenger_handle.h
b/src/service/messenger/gnunet-service-messenger_handle.h
index feb121284..9d6e2d38e 100644
--- a/src/service/messenger/gnunet-service-messenger_handle.h
+++ b/src/service/messenger/gnunet-service-messenger_handle.h
@@ -45,6 +45,7 @@ struct GNUNET_MESSENGER_SrvHandle
struct GNUNET_CONTAINER_MultiHashMap *member_ids;
struct GNUNET_CONTAINER_MultiHashMap *next_ids;
+ struct GNUNET_CONTAINER_MultiHashMap *routing;
struct GNUNET_SCHEDULER_Task *notify;
};
@@ -124,7 +125,7 @@ get_srv_handle_member_id (const struct
GNUNET_MESSENGER_SrvHandle *handle,
* @param[in] unique_id Unique member id
* @return GNUNET_OK on success, otherwise GNUNET_SYSERR
*/
-int
+enum GNUNET_GenericReturnValue
change_srv_handle_member_id (struct GNUNET_MESSENGER_SrvHandle *handle,
const struct GNUNET_HashCode *key,
const struct GNUNET_ShortHashCode *unique_id);
@@ -137,7 +138,7 @@ change_srv_handle_member_id (struct
GNUNET_MESSENGER_SrvHandle *handle,
* @param[in] key Key of a room
* @return #GNUNET_YES on success, otherwise #GNUNET_NO
*/
-int
+enum GNUNET_GenericReturnValue
open_srv_handle_room (struct GNUNET_MESSENGER_SrvHandle *handle,
const struct GNUNET_HashCode *key);
@@ -150,7 +151,7 @@ open_srv_handle_room (struct GNUNET_MESSENGER_SrvHandle
*handle,
* @param[in] key Key of a room
* @return #GNUNET_YES on success, otherwise #GNUNET_NO
*/
-int
+enum GNUNET_GenericReturnValue
entry_srv_handle_room (struct GNUNET_MESSENGER_SrvHandle *handle,
const struct GNUNET_PeerIdentity *door,
const struct GNUNET_HashCode *key);
@@ -163,10 +164,12 @@ entry_srv_handle_room (struct GNUNET_MESSENGER_SrvHandle
*handle,
* @param[in] key Key of a room
* @return #GNUNET_YES on success, otherwise #GNUNET_NO
*/
-int
+enum GNUNET_GenericReturnValue
close_srv_handle_room (struct GNUNET_MESSENGER_SrvHandle *handle,
const struct GNUNET_HashCode *key);
+
+
/**
* Returns the latest merged hash from a room of a given <i>handle</i> using a
specific <i>key</i>
* and the handles own latest known <i>hash</i> of a message. If the room does
not contain other
@@ -192,7 +195,7 @@ sync_srv_handle_messages (struct GNUNET_MESSENGER_SrvHandle
*handle,
* @param[in] message Message
* @return #GNUNET_YES on success, #GNUNET_NO or #GNUNET_SYSERR otherwise.
*/
-int
+enum GNUNET_GenericReturnValue
send_srv_handle_message (struct GNUNET_MESSENGER_SrvHandle *handle,
const struct GNUNET_HashCode *key,
const struct GNUNET_MESSENGER_Message *message);
diff --git a/src/service/messenger/gnunet-service-messenger_list_handles.c
b/src/service/messenger/gnunet-service-messenger_list_handles.c
index 826e1f4ed..4384b842e 100644
--- a/src/service/messenger/gnunet-service-messenger_list_handles.c
+++ b/src/service/messenger/gnunet-service-messenger_list_handles.c
@@ -72,7 +72,7 @@ add_list_handle (struct GNUNET_MESSENGER_ListHandles *handles,
}
-int
+enum GNUNET_GenericReturnValue
remove_list_handle (struct GNUNET_MESSENGER_ListHandles *handles,
struct GNUNET_MESSENGER_SrvHandle *handle)
{
diff --git a/src/service/messenger/gnunet-service-messenger_list_handles.h
b/src/service/messenger/gnunet-service-messenger_list_handles.h
index 8c066519e..81da42c20 100644
--- a/src/service/messenger/gnunet-service-messenger_list_handles.h
+++ b/src/service/messenger/gnunet-service-messenger_list_handles.h
@@ -79,7 +79,7 @@ add_list_handle (struct GNUNET_MESSENGER_ListHandles *handles,
* @param[in,out] handle Handle
* @return #GNUNET_YES on success, otherwise #GNUNET_NO
*/
-int
+enum GNUNET_GenericReturnValue
remove_list_handle (struct GNUNET_MESSENGER_ListHandles *handles,
struct GNUNET_MESSENGER_SrvHandle *handle);
diff --git a/src/service/messenger/gnunet-service-messenger_member.c
b/src/service/messenger/gnunet-service-messenger_member.c
index c57daa062..19cc9559d 100644
--- a/src/service/messenger/gnunet-service-messenger_member.c
+++ b/src/service/messenger/gnunet-service-messenger_member.c
@@ -54,7 +54,7 @@ create_member (struct GNUNET_MESSENGER_MemberStore *store,
}
-static int
+static enum GNUNET_GenericReturnValue
iterate_destroy_session (void *cls,
const struct GNUNET_HashCode *key,
void *value)
@@ -87,7 +87,7 @@ get_member_id (const struct GNUNET_MESSENGER_Member *member)
}
-static int
+static enum GNUNET_GenericReturnValue
callback_scan_for_sessions (void *cls,
const char *filename)
{
@@ -157,7 +157,7 @@ free_config:
}
-static int
+static enum GNUNET_GenericReturnValue
iterate_load_next_session (void *cls,
const struct GNUNET_HashCode *key,
void *value)
@@ -194,7 +194,7 @@ load_member_next_sessions (const struct
GNUNET_MESSENGER_Member *member,
}
-static int
+static enum GNUNET_GenericReturnValue
iterate_save_session (void *cls,
const struct GNUNET_HashCode *key,
void *value)
@@ -273,7 +273,7 @@ sync_session_contact_from_next (struct
GNUNET_MESSENGER_MemberSession *session,
}
-static int
+static enum GNUNET_GenericReturnValue
iterate_sync_session_contact (void *cls,
const struct GNUNET_HashCode *key,
void *value)
@@ -318,7 +318,7 @@ struct GNUNET_MESSENGER_ClosureSearchSession
struct GNUNET_MESSENGER_MemberSession *match;
};
-static int
+static enum GNUNET_GenericReturnValue
iterate_search_session (void *cls,
const struct GNUNET_HashCode *key,
void *value)
@@ -429,7 +429,7 @@ struct GNUNET_MESSENGER_ClosureIterateSessions
void *cls;
};
-static int
+static enum GNUNET_GenericReturnValue
iterate_member_sessions_it (void *cls,
const struct GNUNET_HashCode *key,
void *value)
diff --git a/src/service/messenger/gnunet-service-messenger_member_session.c
b/src/service/messenger/gnunet-service-messenger_member_session.c
index 8b369d2c4..206d6eac5 100644
--- a/src/service/messenger/gnunet-service-messenger_member_session.c
+++ b/src/service/messenger/gnunet-service-messenger_member_session.c
@@ -173,7 +173,7 @@ completion:
}
-static int
+static enum GNUNET_GenericReturnValue
iterate_copy_history (void *cls,
const struct GNUNET_HashCode *key,
void *value)
@@ -287,7 +287,7 @@ destroy_member_session (struct
GNUNET_MESSENGER_MemberSession *session)
}
-int
+enum GNUNET_GenericReturnValue
reset_member_session (struct GNUNET_MESSENGER_MemberSession *session,
const struct GNUNET_HashCode *hash)
{
@@ -332,7 +332,7 @@ close_member_session (struct GNUNET_MESSENGER_MemberSession
*session)
}
-int
+enum GNUNET_GenericReturnValue
is_member_session_closed (const struct GNUNET_MESSENGER_MemberSession *session)
{
GNUNET_assert (session);
@@ -341,7 +341,7 @@ is_member_session_closed (const struct
GNUNET_MESSENGER_MemberSession *session)
}
-int
+enum GNUNET_GenericReturnValue
is_member_session_completed (const struct
GNUNET_MESSENGER_MemberSession *session)
{
@@ -410,7 +410,7 @@ get_member_session_contact (struct
GNUNET_MESSENGER_MemberSession *session)
}
-int
+enum GNUNET_GenericReturnValue
verify_member_session_as_sender (const struct
GNUNET_MESSENGER_MemberSession *session,
const struct GNUNET_MESSENGER_Message
*message,
@@ -435,10 +435,11 @@ verify_member_session_as_sender (const struct
}
-int
+enum GNUNET_GenericReturnValue
check_member_session_history (const struct
GNUNET_MESSENGER_MemberSession *session,
- const struct GNUNET_HashCode *hash, int
ownership)
+ const struct GNUNET_HashCode *hash,
+ enum GNUNET_GenericReturnValue ownership)
{
GNUNET_assert ((session) && (hash));
@@ -452,7 +453,8 @@ check_member_session_history (const struct
static void
update_member_chain_history (struct GNUNET_MESSENGER_MemberSession *session,
- const struct GNUNET_HashCode *hash, int ownership)
+ const struct GNUNET_HashCode *hash,
+ enum GNUNET_GenericReturnValue ownership)
{
GNUNET_assert ((session) && (hash));
@@ -546,7 +548,7 @@ load_member_session_history (struct
GNUNET_MESSENGER_MemberSession *session,
struct GNUNET_MESSENGER_MemberSessionHistoryEntry entry;
ssize_t len;
- int status;
+ enum GNUNET_GenericReturnValue status;
do {
len = GNUNET_DISK_file_read (handle, &(entry.hash), sizeof(entry.hash));
@@ -734,7 +736,7 @@ free_config:
}
-static int
+static enum GNUNET_GenericReturnValue
iterate_save_member_session_history_hentries (void *cls,
const struct GNUNET_HashCode
*key,
void *value)
diff --git a/src/service/messenger/gnunet-service-messenger_member_session.h
b/src/service/messenger/gnunet-service-messenger_member_session.h
index a702e52f6..1f37e3d1a 100644
--- a/src/service/messenger/gnunet-service-messenger_member_session.h
+++ b/src/service/messenger/gnunet-service-messenger_member_session.h
@@ -52,8 +52,8 @@ struct GNUNET_MESSENGER_MemberSession
struct GNUNET_TIME_Absolute start;
- int closed;
- int completed;
+ enum GNUNET_GenericReturnValue closed;
+ enum GNUNET_GenericReturnValue completed;
};
/**
@@ -105,7 +105,7 @@ destroy_member_session (struct
GNUNET_MESSENGER_MemberSession *session);
* @param[in] hash Hash of initial message (JOIN message!)
* @return #GNUNET_OK on success, #GNUNET_SYSERR otherwise
*/
-int
+enum GNUNET_GenericReturnValue
reset_member_session (struct GNUNET_MESSENGER_MemberSession *session,
const struct GNUNET_HashCode *hash);
@@ -127,7 +127,7 @@ close_member_session (struct GNUNET_MESSENGER_MemberSession
*session);
* @param[in] session Member session
* @return #GNUNET_YES or #GNUNET_NO
*/
-int
+enum GNUNET_GenericReturnValue
is_member_session_closed (const struct GNUNET_MESSENGER_MemberSession
*session);
/**
@@ -139,7 +139,7 @@ is_member_session_closed (const struct
GNUNET_MESSENGER_MemberSession *session);
* @param[in] session Member session
* @return #GNUNET_YES or #GNUNET_NO
*/
-int
+enum GNUNET_GenericReturnValue
is_member_session_completed (const struct
GNUNET_MESSENGER_MemberSession *session);
@@ -211,7 +211,7 @@ get_member_session_contact (struct
GNUNET_MESSENGER_MemberSession *session);
* @param[in] hash Hash of message
* @return #GNUNET_OK on success, otherwise #GNUNET_SYSERR
*/
-int
+enum GNUNET_GenericReturnValue
verify_member_session_as_sender (const struct
GNUNET_MESSENGER_MemberSession *session,
const struct GNUNET_MESSENGER_Message
*message,
@@ -227,11 +227,11 @@ verify_member_session_as_sender (const struct
* @param[in] ownership Ownership flag
* @return #GNUNET_YES if found, otherwise #GNUNET_NO
*/
-int
+enum GNUNET_GenericReturnValue
check_member_session_history (const struct
GNUNET_MESSENGER_MemberSession *session,
const struct GNUNET_HashCode *hash,
- int ownership);
+ enum GNUNET_GenericReturnValue ownership);
/**
* Adds a given <i>message</i> to the history of a <i>session</i> using the
messages
diff --git a/src/service/messenger/gnunet-service-messenger_member_store.c
b/src/service/messenger/gnunet-service-messenger_member_store.c
index e7876b382..732e3f9a3 100644
--- a/src/service/messenger/gnunet-service-messenger_member_store.c
+++ b/src/service/messenger/gnunet-service-messenger_member_store.c
@@ -41,7 +41,7 @@ init_member_store (struct GNUNET_MESSENGER_MemberStore *store,
}
-static int
+static enum GNUNET_GenericReturnValue
iterate_destroy_members (void *cls,
const struct GNUNET_ShortHashCode *key,
void *value)
@@ -84,7 +84,7 @@ get_member_store_key (const struct
GNUNET_MESSENGER_MemberStore *store)
}
-static int
+static enum GNUNET_GenericReturnValue
callback_scan_for_members (void *cls,
const char *filename)
{
@@ -105,7 +105,7 @@ callback_scan_for_members (void *cls,
}
-static int
+static enum GNUNET_GenericReturnValue
iterate_load_next_member_sessions (void *cls,
const struct GNUNET_ShortHashCode *id,
void *value)
@@ -129,7 +129,7 @@ iterate_load_next_member_sessions (void *cls,
}
-static int
+static enum GNUNET_GenericReturnValue
iterate_sync_member_contacts (void *cls,
const struct GNUNET_ShortHashCode *id,
void *value)
@@ -166,7 +166,7 @@ load_member_store (struct GNUNET_MESSENGER_MemberStore
*store,
}
-static int
+static enum GNUNET_GenericReturnValue
iterate_save_members (void *cls,
const struct GNUNET_ShortHashCode *id,
void *value)
diff --git a/src/service/messenger/gnunet-service-messenger_member_store.h
b/src/service/messenger/gnunet-service-messenger_member_store.h
index 0acb8ef9c..3bdd0fe7c 100644
--- a/src/service/messenger/gnunet-service-messenger_member_store.h
+++ b/src/service/messenger/gnunet-service-messenger_member_store.h
@@ -43,7 +43,7 @@ struct GNUNET_MESSENGER_MemberStore
struct GNUNET_CONTAINER_MultiShortmap *members;
};
-typedef int (*GNUNET_MESSENGER_MemberIteratorCallback) (
+typedef enum GNUNET_GenericReturnValue
(*GNUNET_MESSENGER_MemberIteratorCallback) (
void *cls,
const struct GNUNET_CRYPTO_PublicKey *public_key,
struct GNUNET_MESSENGER_MemberSession *session);
diff --git a/src/service/messenger/gnunet-service-messenger_message_recv.c
b/src/service/messenger/gnunet-service-messenger_message_recv.c
index db8d246cb..637c41a85 100644
--- a/src/service/messenger/gnunet-service-messenger_message_recv.c
+++ b/src/service/messenger/gnunet-service-messenger_message_recv.c
@@ -63,7 +63,7 @@ forward_about_members (struct GNUNET_MESSENGER_SrvRoom *room,
}
-static int
+static enum GNUNET_GenericReturnValue
iterate_forward_members (void *cls,
const struct GNUNET_CRYPTO_PublicKey *public_key,
struct GNUNET_MESSENGER_MemberSession *session)
@@ -83,7 +83,7 @@ iterate_forward_members (void *cls,
}
-int
+enum GNUNET_GenericReturnValue
recv_message_info (struct GNUNET_MESSENGER_SrvRoom *room,
struct GNUNET_MESSENGER_SrvTunnel *tunnel,
const struct GNUNET_MESSENGER_Message *message,
@@ -141,7 +141,7 @@ recv_message_info (struct GNUNET_MESSENGER_SrvRoom *room,
}
-int
+enum GNUNET_GenericReturnValue
recv_message_peer (struct GNUNET_MESSENGER_SrvRoom *room,
struct GNUNET_MESSENGER_SrvTunnel *tunnel,
const struct GNUNET_MESSENGER_Message *message,
@@ -192,7 +192,7 @@ callback_found_message (void *cls,
* Function returns GNUNET_NO to drop forwarding the request.
* It will only be forwarded if it can't be answered!
*/
-int
+enum GNUNET_GenericReturnValue
recv_message_request (struct GNUNET_MESSENGER_SrvRoom *room,
struct GNUNET_MESSENGER_SrvTunnel *tunnel,
const struct GNUNET_MESSENGER_Message *message,
diff --git a/src/service/messenger/gnunet-service-messenger_message_recv.h
b/src/service/messenger/gnunet-service-messenger_message_recv.h
index 104d62ba0..6050a2bed 100644
--- a/src/service/messenger/gnunet-service-messenger_message_recv.h
+++ b/src/service/messenger/gnunet-service-messenger_message_recv.h
@@ -43,7 +43,7 @@
* @param[in] hash Hash of the message
* @return #GNUNET_NO to not forward the message
*/
-int
+enum GNUNET_GenericReturnValue
recv_message_info (struct GNUNET_MESSENGER_SrvRoom *room,
struct GNUNET_MESSENGER_SrvTunnel *tunnel,
const struct GNUNET_MESSENGER_Message *message,
@@ -59,7 +59,7 @@ recv_message_info (struct GNUNET_MESSENGER_SrvRoom *room,
* @param[in] hash Hash of the message
* @return #GNUNET_YES to forward the message
*/
-int
+enum GNUNET_GenericReturnValue
recv_message_peer (struct GNUNET_MESSENGER_SrvRoom *room,
struct GNUNET_MESSENGER_SrvTunnel *tunnel,
const struct GNUNET_MESSENGER_Message *message,
@@ -76,7 +76,7 @@ recv_message_peer (struct GNUNET_MESSENGER_SrvRoom *room,
* @param[in] hash Hash of the message
* @return #GNUNET_YES or #GNUNET_NO depending on required forwarding
*/
-int
+enum GNUNET_GenericReturnValue
recv_message_request (struct GNUNET_MESSENGER_SrvRoom *room,
struct GNUNET_MESSENGER_SrvTunnel *tunnel,
const struct GNUNET_MESSENGER_Message *message,
diff --git a/src/service/messenger/gnunet-service-messenger_message_send.c
b/src/service/messenger/gnunet-service-messenger_message_send.c
index fbb8215c2..ff70432cc 100644
--- a/src/service/messenger/gnunet-service-messenger_message_send.c
+++ b/src/service/messenger/gnunet-service-messenger_message_send.c
@@ -43,7 +43,7 @@ static void
notify_about_members (struct GNUNET_MESSENGER_MemberNotify *notify,
struct GNUNET_MESSENGER_MemberSession *session,
struct GNUNET_CONTAINER_MultiHashMap *map,
- int check_permission)
+ enum GNUNET_GenericReturnValue check_permission)
{
if (session->prev)
notify_about_members (notify, session->prev, map, GNUNET_YES);
diff --git a/src/service/messenger/gnunet-service-messenger_message_state.c
b/src/service/messenger/gnunet-service-messenger_message_state.c
index 112f03032..9fdb62918 100644
--- a/src/service/messenger/gnunet-service-messenger_message_state.c
+++ b/src/service/messenger/gnunet-service-messenger_message_state.c
@@ -71,7 +71,7 @@ get_message_state_merge_hash (const struct
GNUNET_MESSENGER_MessageState *state)
void
update_message_state (struct GNUNET_MESSENGER_MessageState *state,
- int requested,
+ enum GNUNET_GenericReturnValue requested,
const struct GNUNET_MESSENGER_Message *message,
const struct GNUNET_HashCode *hash)
{
diff --git a/src/service/messenger/gnunet-service-messenger_message_state.h
b/src/service/messenger/gnunet-service-messenger_message_state.h
index f6a1a41b9..5c6f3d981 100644
--- a/src/service/messenger/gnunet-service-messenger_message_state.h
+++ b/src/service/messenger/gnunet-service-messenger_message_state.h
@@ -53,7 +53,7 @@ get_message_state_merge_hash (const struct
void
update_message_state (struct GNUNET_MESSENGER_MessageState *state,
- int requested,
+ enum GNUNET_GenericReturnValue requested,
const struct GNUNET_MESSENGER_Message *message,
const struct GNUNET_HashCode *hash);
diff --git a/src/service/messenger/gnunet-service-messenger_message_store.c
b/src/service/messenger/gnunet-service-messenger_message_store.c
index d4bccca5c..f14be03b0 100644
--- a/src/service/messenger/gnunet-service-messenger_message_store.c
+++ b/src/service/messenger/gnunet-service-messenger_message_store.c
@@ -43,7 +43,7 @@ init_message_store (struct GNUNET_MESSENGER_MessageStore
*store)
}
-static int
+static enum GNUNET_GenericReturnValue
iterate_destroy_entries (void *cls,
const struct GNUNET_HashCode *key,
void *value)
@@ -56,7 +56,7 @@ iterate_destroy_entries (void *cls,
}
-static int
+static enum GNUNET_GenericReturnValue
iterate_destroy_messages (void *cls,
const struct GNUNET_HashCode *key,
void *value)
@@ -69,7 +69,7 @@ iterate_destroy_messages (void *cls,
}
-static int
+static enum GNUNET_GenericReturnValue
iterate_destroy_links (void *cls,
const struct GNUNET_HashCode *key,
void *value)
@@ -279,7 +279,7 @@ struct GNUNET_MESSENGER_ClosureMessageSave
struct GNUNET_DISK_FileHandle *storage;
};
-static int
+static enum GNUNET_GenericReturnValue
iterate_save_entries (void *cls,
const struct GNUNET_HashCode *key,
void *value)
@@ -297,7 +297,7 @@ iterate_save_entries (void *cls,
}
-static int
+static enum GNUNET_GenericReturnValue
iterate_save_messages (void *cls,
const struct GNUNET_HashCode *key,
void *value)
@@ -340,7 +340,7 @@ iterate_save_messages (void *cls,
}
-static int
+static enum GNUNET_GenericReturnValue
iterate_save_links (void *cls,
const struct GNUNET_HashCode *key,
void *value)
@@ -451,7 +451,7 @@ close_entries:
}
-int
+enum GNUNET_GenericReturnValue
contains_store_message (const struct GNUNET_MESSENGER_MessageStore *store,
const struct GNUNET_HashCode *hash)
{
@@ -504,8 +504,9 @@ get_store_message (struct GNUNET_MESSENGER_MessageStore
*store,
message = create_message (GNUNET_MESSENGER_KIND_UNKNOWN);
- const int decoding = decode_message (message, entry->length, buffer,
- GNUNET_YES, NULL);
+ enum GNUNET_GenericReturnValue decoding;
+ decoding = decode_message (message, entry->length, buffer,
+ GNUNET_YES, NULL);
struct GNUNET_HashCode check;
hash_message (message, entry->length, buffer, &check);
@@ -541,7 +542,7 @@ free_buffer:
const struct GNUNET_MESSENGER_MessageLink*
get_store_message_link (struct GNUNET_MESSENGER_MessageStore *store,
const struct GNUNET_HashCode *hash,
- int deleted_only)
+ enum GNUNET_GenericReturnValue deleted_only)
{
if (deleted_only)
goto get_link;
@@ -574,7 +575,7 @@ get_link:
}
-int
+enum GNUNET_GenericReturnValue
put_store_message (struct GNUNET_MESSENGER_MessageStore *store,
const struct GNUNET_HashCode *hash,
struct GNUNET_MESSENGER_Message *message)
@@ -613,7 +614,7 @@ add_link (struct GNUNET_MESSENGER_MessageStore *store,
}
-int
+enum GNUNET_GenericReturnValue
delete_store_message (struct GNUNET_MESSENGER_MessageStore *store,
const struct GNUNET_HashCode *hash)
{
diff --git a/src/service/messenger/gnunet-service-messenger_message_store.h
b/src/service/messenger/gnunet-service-messenger_message_store.h
index 262d10555..f73e1c3f3 100644
--- a/src/service/messenger/gnunet-service-messenger_message_store.h
+++ b/src/service/messenger/gnunet-service-messenger_message_store.h
@@ -1,6 +1,6 @@
/*
This file is part of GNUnet.
- Copyright (C) 2020--2021 GNUnet e.V.
+ Copyright (C) 2020--2023 GNUnet e.V.
GNUnet is free software: you can redistribute it and/or modify it
under the terms of the GNU Affero General Public License as published
@@ -53,8 +53,8 @@ struct GNUNET_MESSENGER_MessageStore
struct GNUNET_CONTAINER_MultiHashMap *messages;
struct GNUNET_CONTAINER_MultiHashMap *links;
- int rewrite_entries;
- int write_links;
+ enum GNUNET_GenericReturnValue rewrite_entries;
+ enum GNUNET_GenericReturnValue write_links;
};
/**
@@ -103,7 +103,7 @@ save_message_store (struct GNUNET_MESSENGER_MessageStore
*store,
* @param[in] hash Hash of message
* @return #GNUNET_YES on match, otherwise #GNUNET_NO
*/
-int
+enum GNUNET_GenericReturnValue
contains_store_message (const struct GNUNET_MESSENGER_MessageStore *store,
const struct GNUNET_HashCode *hash);
@@ -138,7 +138,7 @@ get_store_message (struct GNUNET_MESSENGER_MessageStore
*store,
const struct GNUNET_MESSENGER_MessageLink*
get_store_message_link (struct GNUNET_MESSENGER_MessageStore *store,
const struct GNUNET_HashCode *hash,
- int deleted_only);
+ enum GNUNET_GenericReturnValue deleted_only);
/**
* Stores a message into the message store. The result indicates if the
operation was successful.
@@ -148,7 +148,7 @@ get_store_message_link (struct
GNUNET_MESSENGER_MessageStore *store,
* @param[in,out] message Message
* @return #GNUNET_OK on success, otherwise #GNUNET_NO
*/
-int
+enum GNUNET_GenericReturnValue
put_store_message (struct GNUNET_MESSENGER_MessageStore *store,
const struct GNUNET_HashCode *hash,
struct GNUNET_MESSENGER_Message *message);
@@ -161,7 +161,7 @@ put_store_message (struct GNUNET_MESSENGER_MessageStore
*store,
* @param[in] hash Hash of message
* @return #GNUNET_OK on success, #GNUNET_SYSERR on failure
*/
-int
+enum GNUNET_GenericReturnValue
delete_store_message (struct GNUNET_MESSENGER_MessageStore *store,
const struct GNUNET_HashCode *hash);
diff --git a/src/service/messenger/gnunet-service-messenger_operation.c
b/src/service/messenger/gnunet-service-messenger_operation.c
index f13db7de0..3abd8382b 100644
--- a/src/service/messenger/gnunet-service-messenger_operation.c
+++ b/src/service/messenger/gnunet-service-messenger_operation.c
@@ -189,7 +189,7 @@ callback_operation (void *cls)
}
-int
+enum GNUNET_GenericReturnValue
start_operation (struct GNUNET_MESSENGER_Operation *op,
enum GNUNET_MESSENGER_OperationType type,
struct GNUNET_MESSENGER_OperationStore *store,
@@ -220,7 +220,7 @@ start_operation (struct GNUNET_MESSENGER_Operation *op,
}
-int
+enum GNUNET_GenericReturnValue
stop_operation (struct GNUNET_MESSENGER_Operation *op)
{
GNUNET_assert (op);
diff --git a/src/service/messenger/gnunet-service-messenger_operation.h
b/src/service/messenger/gnunet-service-messenger_operation.h
index 6631693cf..3885b3856 100644
--- a/src/service/messenger/gnunet-service-messenger_operation.h
+++ b/src/service/messenger/gnunet-service-messenger_operation.h
@@ -112,7 +112,7 @@ save_operation (const struct GNUNET_MESSENGER_Operation *op,
* @param[in] delay Delay
* @return #GNUNET_OK on success, otherwise #GNUNET_SYSERR
*/
-int
+enum GNUNET_GenericReturnValue
start_operation (struct GNUNET_MESSENGER_Operation *op,
enum GNUNET_MESSENGER_OperationType type,
struct GNUNET_MESSENGER_OperationStore *store,
@@ -124,7 +124,7 @@ start_operation (struct GNUNET_MESSENGER_Operation *op,
*
* @return #GNUNET_OK on success, otherwise #GNUNET_SYSERR
*/
-int
+enum GNUNET_GenericReturnValue
stop_operation (struct GNUNET_MESSENGER_Operation *op);
#endif //GNUNET_SERVICE_MESSENGER_OPERATION_H
diff --git a/src/service/messenger/gnunet-service-messenger_operation_store.c
b/src/service/messenger/gnunet-service-messenger_operation_store.c
index 670d5cdf5..d7e718474 100644
--- a/src/service/messenger/gnunet-service-messenger_operation_store.c
+++ b/src/service/messenger/gnunet-service-messenger_operation_store.c
@@ -64,7 +64,7 @@ clear_operation_store (struct GNUNET_MESSENGER_OperationStore
*store)
}
-static int
+static enum GNUNET_GenericReturnValue
callback_scan_for_operations (void *cls,
const char *filename)
{
@@ -107,7 +107,7 @@ load_operation_store (struct
GNUNET_MESSENGER_OperationStore *store,
}
-static int
+static enum GNUNET_GenericReturnValue
iterate_save_operations (void *cls,
const struct GNUNET_HashCode *key,
void *value)
@@ -162,7 +162,7 @@ get_store_operation_type (const struct
GNUNET_MESSENGER_OperationStore *store,
}
-int
+enum GNUNET_GenericReturnValue
use_store_operation (struct GNUNET_MESSENGER_OperationStore *store,
const struct GNUNET_HashCode *hash,
enum GNUNET_MESSENGER_OperationType type,
diff --git a/src/service/messenger/gnunet-service-messenger_operation_store.h
b/src/service/messenger/gnunet-service-messenger_operation_store.h
index 16531758c..3e7ab4a32 100644
--- a/src/service/messenger/gnunet-service-messenger_operation_store.h
+++ b/src/service/messenger/gnunet-service-messenger_operation_store.h
@@ -1,6 +1,6 @@
/*
This file is part of GNUnet.
- Copyright (C) 2021 GNUnet e.V.
+ Copyright (C) 2021, 2023 GNUnet e.V.
GNUnet is free software: you can redistribute it and/or modify it
under the terms of the GNU Affero General Public License as published
@@ -107,7 +107,7 @@ get_store_operation_type (const struct
GNUNET_MESSENGER_OperationStore *store,
* @param[in] delay Delay
* @return #GNUNET_OK on success, otherwise #GNUNET_SYSERR
*/
-int
+enum GNUNET_GenericReturnValue
use_store_operation (struct GNUNET_MESSENGER_OperationStore *store,
const struct GNUNET_HashCode *hash,
enum GNUNET_MESSENGER_OperationType type,
diff --git a/src/service/messenger/gnunet-service-messenger_room.c
b/src/service/messenger/gnunet-service-messenger_room.c
index ab1303f96..b9e150381 100644
--- a/src/service/messenger/gnunet-service-messenger_room.c
+++ b/src/service/messenger/gnunet-service-messenger_room.c
@@ -101,7 +101,7 @@ handle_room_messages (struct GNUNET_MESSENGER_SrvRoom
*room);
void
destroy_srv_room (struct GNUNET_MESSENGER_SrvRoom *room,
- int deletion)
+ enum GNUNET_GenericReturnValue deletion)
{
GNUNET_assert (room);
@@ -235,7 +235,7 @@ callback_room_connect (void *cls,
}
-static int
+static enum GNUNET_GenericReturnValue
join_room (struct GNUNET_MESSENGER_SrvRoom *room,
struct GNUNET_MESSENGER_SrvHandle *handle,
struct GNUNET_MESSENGER_Member *member,
@@ -264,7 +264,7 @@ join_room (struct GNUNET_MESSENGER_SrvRoom *room,
}
-static int
+static enum GNUNET_GenericReturnValue
join_room_locally (struct GNUNET_MESSENGER_SrvRoom *room,
struct GNUNET_MESSENGER_SrvHandle *handle)
{
@@ -283,7 +283,7 @@ join_room_locally (struct GNUNET_MESSENGER_SrvRoom *room,
}
-extern int
+extern enum GNUNET_GenericReturnValue
check_tunnel_message (void *cls,
const struct GNUNET_MessageHeader *header);
@@ -295,7 +295,7 @@ extern void
callback_tunnel_disconnect (void *cls,
const struct GNUNET_CADET_Channel *channel);
-int
+enum GNUNET_GenericReturnValue
open_srv_room (struct GNUNET_MESSENGER_SrvRoom *room,
struct GNUNET_MESSENGER_SrvHandle *handle)
{
@@ -356,7 +356,7 @@ open_srv_room (struct GNUNET_MESSENGER_SrvRoom *room,
}
-int
+enum GNUNET_GenericReturnValue
enter_srv_room_at (struct GNUNET_MESSENGER_SrvRoom *room,
struct GNUNET_MESSENGER_SrvHandle *handle,
const struct GNUNET_PeerIdentity *door)
@@ -420,7 +420,7 @@ pack_srv_room_message (const struct
GNUNET_MESSENGER_SrvRoom *room,
const struct GNUNET_MESSENGER_SrvHandle *handle,
struct GNUNET_MESSENGER_Message *message,
struct GNUNET_HashCode *hash,
- int mode)
+ enum GNUNET_MESSENGER_PackMode mode)
{
GNUNET_assert ((room) && (handle) && (message) && (hash));
@@ -454,10 +454,10 @@ struct GNUNET_MESSENGER_ClosureSendRoom
struct GNUNET_MESSENGER_SrvTunnel *exclude;
struct GNUNET_MESSENGER_Message *message;
struct GNUNET_HashCode *hash;
- int packed;
+ enum GNUNET_GenericReturnValue packed;
};
-static int
+static enum GNUNET_GenericReturnValue
iterate_send_room_message (void *cls,
const struct GNUNET_PeerIdentity *key,
void *value)
@@ -495,7 +495,7 @@ iterate_send_room_message (void *cls,
}
-int
+enum GNUNET_GenericReturnValue
update_room_message (struct GNUNET_MESSENGER_SrvRoom *room,
struct GNUNET_MESSENGER_Message *message,
const struct GNUNET_HashCode *hash);
@@ -505,7 +505,7 @@ callback_room_handle_message (struct
GNUNET_MESSENGER_SrvRoom *room,
const struct GNUNET_MESSENGER_Message *message,
const struct GNUNET_HashCode *hash);
-int
+enum GNUNET_GenericReturnValue
send_srv_room_message (struct GNUNET_MESSENGER_SrvRoom *room,
struct GNUNET_MESSENGER_SrvHandle *handle,
struct GNUNET_MESSENGER_Message *message)
@@ -537,7 +537,8 @@ send_srv_room_message (struct GNUNET_MESSENGER_SrvRoom
*room,
pack_srv_room_message (room, handle, message, &hash,
GNUNET_MESSENGER_PACK_MODE_UNKNOWN);
- const int new_message = update_room_message (room, message, &hash);
+ enum GNUNET_GenericReturnValue new_message;
+ new_message = update_room_message (room, message, &hash);
if (GNUNET_YES != new_message)
return GNUNET_SYSERR;
@@ -672,7 +673,7 @@ callback_room_merge (struct GNUNET_MESSENGER_SrvRoom *room,
}
-int
+enum GNUNET_GenericReturnValue
delete_srv_room_message (struct GNUNET_MESSENGER_SrvRoom *room,
struct GNUNET_MESSENGER_MemberSession *session,
const struct GNUNET_HashCode *hash,
@@ -752,7 +753,7 @@ get_srv_room_tunnel (const struct GNUNET_MESSENGER_SrvRoom
*room,
}
-static int
+static enum GNUNET_GenericReturnValue
request_room_message_step (struct GNUNET_MESSENGER_SrvRoom *room,
const struct GNUNET_HashCode *hash,
const struct GNUNET_MESSENGER_MemberSession
*session,
@@ -769,8 +770,9 @@ request_room_message_step (struct GNUNET_MESSENGER_SrvRoom
*room,
if (! link)
goto forward;
- int result = request_room_message_step (room, &(link->first), session,
- callback, cls);
+ enum GNUNET_GenericReturnValue result;
+ result = request_room_message_step (room, &(link->first), session,
+ callback, cls);
if ((GNUNET_YES == link->multiple) &&
(GNUNET_YES == request_room_message_step (room, &(link->second), session,
@@ -796,7 +798,7 @@ forward:
}
-int
+enum GNUNET_GenericReturnValue
request_srv_room_message (struct GNUNET_MESSENGER_SrvRoom *room,
const struct GNUNET_HashCode *hash,
const struct GNUNET_MESSENGER_MemberSession *session,
@@ -805,7 +807,8 @@ request_srv_room_message (struct GNUNET_MESSENGER_SrvRoom
*room,
{
GNUNET_assert ((room) && (hash));
- int result = request_room_message_step (room, hash, session, callback, cls);
+ enum GNUNET_GenericReturnValue result;
+ result = request_room_message_step (room, hash, session, callback, cls);
if ((GNUNET_NO == result) && (callback))
callback (cls, room, NULL, hash);
@@ -838,7 +841,7 @@ callback_room_disconnect (struct GNUNET_MESSENGER_SrvRoom
*room,
}
-int
+enum GNUNET_GenericReturnValue
callback_verify_room_message (struct GNUNET_MESSENGER_SrvRoom *room,
void *cls,
struct GNUNET_MESSENGER_Message *message,
@@ -973,12 +976,14 @@ rebuild_srv_room_basement_structure (struct
GNUNET_MESSENGER_SrvRoom *room)
struct GNUNET_PeerIdentity peer;
size_t src;
- if ((GNUNET_OK != get_service_peer_identity (room->service, &peer)) ||
- (! find_list_tunnels (&(room->basement), &peer, &src)))
+ if (GNUNET_OK != get_service_peer_identity (room->service, &peer))
return;
size_t count = count_of_tunnels (&(room->basement));
+ if (! find_list_tunnels (&(room->basement), &peer, &src))
+ return;
+
struct GNUNET_MESSENGER_ListTunnel *element = room->basement.head;
struct GNUNET_MESSENGER_SrvTunnel *tunnel;
@@ -1068,7 +1073,7 @@ finish_handling:
}
-int
+enum GNUNET_GenericReturnValue
update_room_message (struct GNUNET_MESSENGER_SrvRoom *room,
struct GNUNET_MESSENGER_Message *message,
const struct GNUNET_HashCode *hash)
@@ -1078,10 +1083,10 @@ update_room_message (struct GNUNET_MESSENGER_SrvRoom
*room,
struct GNUNET_MESSENGER_OperationStore *operation_store =
get_srv_room_operation_store (room);
- const int requested = (GNUNET_MESSENGER_OP_REQUEST ==
- get_store_operation_type (operation_store, hash)?
- GNUNET_YES : GNUNET_NO
- );
+ enum GNUNET_GenericReturnValue requested;
+ requested = (GNUNET_MESSENGER_OP_REQUEST ==
+ get_store_operation_type (operation_store, hash)?
+ GNUNET_YES : GNUNET_NO);
if (GNUNET_YES == requested)
cancel_store_operation (operation_store, hash);
@@ -1144,7 +1149,7 @@ struct GNUNET_MESSENGER_MemberUpdate
struct GNUNET_MESSENGER_MemberSessionCompletion *tail;
};
-static int
+static enum GNUNET_GenericReturnValue
iterate_update_member_sessions (void *cls,
const struct
GNUNET_CRYPTO_PublicKey *public_key,
@@ -1242,7 +1247,8 @@ callback_room_handle_message (struct
GNUNET_MESSENGER_SrvRoom *room,
GNUNET_free (element);
}
- const int start_handle = room->handling.head ? GNUNET_NO : GNUNET_YES;
+ enum GNUNET_GenericReturnValue start_handle;
+ start_handle = room->handling.head ? GNUNET_NO : GNUNET_YES;
add_to_list_messages (&(room->handling), hash);
diff --git a/src/service/messenger/gnunet-service-messenger_room.h
b/src/service/messenger/gnunet-service-messenger_room.h
index c5381850d..5c61dd171 100644
--- a/src/service/messenger/gnunet-service-messenger_room.h
+++ b/src/service/messenger/gnunet-service-messenger_room.h
@@ -102,7 +102,7 @@ create_srv_room (struct GNUNET_MESSENGER_SrvHandle *handle,
*/
void
destroy_srv_room (struct GNUNET_MESSENGER_SrvRoom *room,
- int deletion);
+ enum GNUNET_GenericReturnValue deletion);
/**
* Returns the used peer store of a given <i>room</i>.
@@ -152,7 +152,7 @@ get_srv_room_operation_store (struct
GNUNET_MESSENGER_SrvRoom *room);
* @param[in,out] handle Handle
* @return #GNUNET_YES on success, #GNUNET_NO on failure.
*/
-int
+enum GNUNET_GenericReturnValue
open_srv_room (struct GNUNET_MESSENGER_SrvRoom *room,
struct GNUNET_MESSENGER_SrvHandle *handle);
@@ -166,7 +166,7 @@ open_srv_room (struct GNUNET_MESSENGER_SrvRoom *room,
* @param[in] door Peer identity
* @return #GNUNET_YES on success, #GNUNET_NO on failure.
*/
-int
+enum GNUNET_GenericReturnValue
enter_srv_room_at (struct GNUNET_MESSENGER_SrvRoom *room,
struct GNUNET_MESSENGER_SrvHandle *handle,
const struct GNUNET_PeerIdentity *door);
@@ -193,7 +193,7 @@ pack_srv_room_message (const struct
GNUNET_MESSENGER_SrvRoom *room,
const struct GNUNET_MESSENGER_SrvHandle *handle,
struct GNUNET_MESSENGER_Message *message,
struct GNUNET_HashCode *hash,
- int mode);
+ enum GNUNET_MESSENGER_PackMode mode);
/**
* Sends a <i>message</i> from a given <i>handle</i> into a <i>room</i>. The
<i>hash</i> parameter will be
@@ -210,7 +210,7 @@ pack_srv_room_message (const struct
GNUNET_MESSENGER_SrvRoom *room,
* @param[in,out] message Message
* @return #GNUNET_YES on success, #GNUNET_NO or #GNUNET_SYSERR otherwise.
*/
-int
+enum GNUNET_GenericReturnValue
send_srv_room_message (struct GNUNET_MESSENGER_SrvRoom *room,
struct GNUNET_MESSENGER_SrvHandle *handle,
struct GNUNET_MESSENGER_Message *message);
@@ -262,7 +262,7 @@ merge_srv_room_last_messages (struct
GNUNET_MESSENGER_SrvRoom *room,
* @param[in] delay Delay of deletion
* @return #GNUNET_YES on success, #GNUNET_NO if permission gets denied,
#GNUNET_SYSERR on operation failure
*/
-int
+enum GNUNET_GenericReturnValue
delete_srv_room_message (struct GNUNET_MESSENGER_SrvRoom *room,
struct GNUNET_MESSENGER_MemberSession *session,
const struct GNUNET_HashCode *hash,
@@ -328,7 +328,7 @@ typedef void (GNUNET_MESSENGER_MessageRequestCallback) (
* @param[in] cls Closure for the <i>callback</i>
* @return #GNUNET_YES if the request could be processed, otherwise #GNUNET_NO
*/
-int
+enum GNUNET_GenericReturnValue
request_srv_room_message (struct GNUNET_MESSENGER_SrvRoom *room,
const struct GNUNET_HashCode *hash,
const struct GNUNET_MESSENGER_MemberSession *session,
diff --git a/src/service/messenger/gnunet-service-messenger_service.c
b/src/service/messenger/gnunet-service-messenger_service.c
index 964707112..bdb3b7169 100644
--- a/src/service/messenger/gnunet-service-messenger_service.c
+++ b/src/service/messenger/gnunet-service-messenger_service.c
@@ -83,6 +83,16 @@ create_service (const struct GNUNET_CONFIGURATION_Handle
*config,
}
}
+ service->auto_routing = GNUNET_CONFIGURATION_get_value_yesno
(service->config,
+
GNUNET_MESSENGER_SERVICE_NAME,
+
"MESSENGER_AUTO_ROUTING");
+
+ if (GNUNET_OK != GNUNET_CONFIGURATION_get_value_number (service->config,
+
GNUNET_MESSENGER_SERVICE_NAME,
+
"MESSENGER_MIN_ROUTERS",
+
&(service->min_routers)))
+ service->min_routers = 0;
+
service->cadet = GNUNET_CADET_connect (service->config);
init_list_handles (&(service->handles));
@@ -95,7 +105,7 @@ create_service (const struct GNUNET_CONFIGURATION_Handle
*config,
}
-static int
+static enum GNUNET_GenericReturnValue
iterate_destroy_rooms (void *cls,
const struct GNUNET_HashCode *key,
void *value)
@@ -193,7 +203,7 @@ remove_service_handle (struct GNUNET_MESSENGER_Service
*service,
}
-int
+enum GNUNET_GenericReturnValue
get_service_peer_identity (struct GNUNET_MESSENGER_Service *service,
struct GNUNET_PeerIdentity *peer)
{
@@ -205,7 +215,8 @@ get_service_peer_identity (struct GNUNET_MESSENGER_Service
*service,
return GNUNET_OK;
}
- int result = GNUNET_CRYPTO_get_peer_identity (service->config, peer);
+ enum GNUNET_GenericReturnValue result;
+ result = GNUNET_CRYPTO_get_peer_identity (service->config, peer);
if (GNUNET_OK != result)
return result;
@@ -235,7 +246,7 @@ struct HandleInitializationClosure
const struct GNUNET_CRYPTO_PublicKey *pubkey;
};
-static int
+static enum GNUNET_GenericReturnValue
find_member_session_in_room (void *cls,
const struct GNUNET_CRYPTO_PublicKey *public_key,
struct GNUNET_MESSENGER_MemberSession *session)
@@ -294,7 +305,7 @@ initialize_service_handle (struct
GNUNET_MESSENGER_SrvHandle *handle,
}
-int
+enum GNUNET_GenericReturnValue
open_service_room (struct GNUNET_MESSENGER_Service *service,
struct GNUNET_MESSENGER_SrvHandle *handle,
const struct GNUNET_HashCode *key)
@@ -323,7 +334,7 @@ open_service_room (struct GNUNET_MESSENGER_Service *service,
}
-int
+enum GNUNET_GenericReturnValue
entry_service_room (struct GNUNET_MESSENGER_Service *service,
struct GNUNET_MESSENGER_SrvHandle *handle,
const struct GNUNET_PeerIdentity *door,
@@ -362,7 +373,7 @@ entry_service_room (struct GNUNET_MESSENGER_Service
*service,
}
-int
+enum GNUNET_GenericReturnValue
close_service_room (struct GNUNET_MESSENGER_Service *service,
struct GNUNET_MESSENGER_SrvHandle *handle,
const struct GNUNET_HashCode *key)
diff --git a/src/service/messenger/gnunet-service-messenger_service.h
b/src/service/messenger/gnunet-service-messenger_service.h
index 69486b415..0df45b384 100644
--- a/src/service/messenger/gnunet-service-messenger_service.h
+++ b/src/service/messenger/gnunet-service-messenger_service.h
@@ -48,6 +48,9 @@ struct GNUNET_MESSENGER_Service
struct GNUNET_PeerIdentity *peer;
char *dir;
+ enum GNUNET_GenericReturnValue auto_routing;
+ unsigned long long min_routers;
+
struct GNUNET_CADET_Handle *cadet;
struct GNUNET_MESSENGER_ContactStore contact_store;
@@ -114,7 +117,7 @@ remove_service_handle (struct GNUNET_MESSENGER_Service
*service,
* @param[out] peer Peer identity
* @return #GNUNET_OK on success, otherwise #GNUNET_SYSERR
*/
-int
+enum GNUNET_GenericReturnValue
get_service_peer_identity (struct GNUNET_MESSENGER_Service *service,
struct GNUNET_PeerIdentity *peer);
@@ -139,7 +142,7 @@ get_service_room (const struct GNUNET_MESSENGER_Service
*service,
* @param[in] key Key of room
* @return #GNUNET_YES on success, otherwise #GNUNET_NO
*/
-int
+enum GNUNET_GenericReturnValue
open_service_room (struct GNUNET_MESSENGER_Service *service,
struct GNUNET_MESSENGER_SrvHandle *handle,
const struct GNUNET_HashCode *key);
@@ -157,7 +160,7 @@ open_service_room (struct GNUNET_MESSENGER_Service *service,
* @param[in] key Key of room
* @return #GNUNET_YES on success, otherwise #GNUNET_NO
*/
-int
+enum GNUNET_GenericReturnValue
entry_service_room (struct GNUNET_MESSENGER_Service *service,
struct GNUNET_MESSENGER_SrvHandle *handle,
const struct GNUNET_PeerIdentity *door,
@@ -175,7 +178,7 @@ entry_service_room (struct GNUNET_MESSENGER_Service
*service,
* @param[in] key Key of room
* @return #GNUNET_YES on success, otherwise #GNUNET_NO
*/
-int
+enum GNUNET_GenericReturnValue
close_service_room (struct GNUNET_MESSENGER_Service *service,
struct GNUNET_MESSENGER_SrvHandle *handle,
const struct GNUNET_HashCode *key);
diff --git a/src/service/messenger/gnunet-service-messenger_tunnel.c
b/src/service/messenger/gnunet-service-messenger_tunnel.c
index 5262ba79b..ebc95d9fc 100644
--- a/src/service/messenger/gnunet-service-messenger_tunnel.c
+++ b/src/service/messenger/gnunet-service-messenger_tunnel.c
@@ -108,13 +108,13 @@ callback_tunnel_disconnect (void *cls,
}
-extern int
+extern enum GNUNET_GenericReturnValue
callback_verify_room_message (struct GNUNET_MESSENGER_SrvRoom *room,
void *cls,
struct GNUNET_MESSENGER_Message *message,
struct GNUNET_HashCode *hash);
-int
+enum GNUNET_GenericReturnValue
check_tunnel_message (void *cls,
const struct GNUNET_MessageHeader *header)
{
@@ -152,7 +152,7 @@ check_tunnel_message (void *cls,
}
-extern int
+extern enum GNUNET_GenericReturnValue
update_room_message (struct GNUNET_MESSENGER_SrvRoom *room,
struct GNUNET_MESSENGER_Message *message,
const struct GNUNET_HashCode *hash);
@@ -169,10 +169,10 @@ update_tunnel_last_message (struct
GNUNET_MESSENGER_SrvTunnel *tunnel,
struct GNUNET_MESSENGER_OperationStore *operation_store =
get_srv_room_operation_store (tunnel->room);
- const int requested = (GNUNET_MESSENGER_OP_REQUEST ==
- get_store_operation_type (operation_store, hash)?
- GNUNET_YES : GNUNET_NO
- );
+ enum GNUNET_GenericReturnValue requested;
+ requested = (GNUNET_MESSENGER_OP_REQUEST ==
+ get_store_operation_type (operation_store, hash)?
+ GNUNET_YES : GNUNET_NO);
struct GNUNET_MESSENGER_MessageStore *message_store =
get_srv_room_message_store (tunnel->room);
@@ -207,16 +207,17 @@ handle_tunnel_message (void *cls, const struct
GNUNET_MessageHeader *header)
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Got message of kind: %s!\n",
GNUNET_MESSENGER_name_of_kind (message.header.kind));
- const int new_message = update_room_message (
- tunnel->room, copy_message (&message), &hash
- );
+ enum GNUNET_GenericReturnValue new_message;
+ new_message = update_room_message (tunnel->room,
+ copy_message (&message),
+ &hash);
if (GNUNET_YES != new_message)
goto receive_done;
update_tunnel_last_message (tunnel, &hash);
- int forward_message = GNUNET_YES;
+ enum GNUNET_GenericReturnValue forward_message = GNUNET_YES;
switch (message.header.kind)
{
@@ -247,7 +248,7 @@ receive_done:
}
-int
+enum GNUNET_GenericReturnValue
connect_tunnel (struct GNUNET_MESSENGER_SrvTunnel *tunnel)
{
GNUNET_assert (tunnel);
@@ -292,7 +293,7 @@ disconnect_tunnel (struct GNUNET_MESSENGER_SrvTunnel
*tunnel)
}
-int
+enum GNUNET_GenericReturnValue
is_tunnel_connected (const struct GNUNET_MESSENGER_SrvTunnel *tunnel)
{
GNUNET_assert (tunnel);
@@ -340,7 +341,7 @@ send_tunnel_envelope (struct GNUNET_MESSENGER_SrvTunnel
*tunnel,
}
-int
+enum GNUNET_GenericReturnValue
send_tunnel_message (struct GNUNET_MESSENGER_SrvTunnel *tunnel,
void *handle,
struct GNUNET_MESSENGER_Message *message)
@@ -421,7 +422,7 @@ get_tunnel_messenger_version (const struct
GNUNET_MESSENGER_SrvTunnel *tunnel)
}
-int
+enum GNUNET_GenericReturnValue
update_tunnel_messenger_version (struct GNUNET_MESSENGER_SrvTunnel *tunnel,
uint32_t version)
{
diff --git a/src/service/messenger/gnunet-service-messenger_tunnel.h
b/src/service/messenger/gnunet-service-messenger_tunnel.h
index 2ffa2d04f..a31ff31c6 100644
--- a/src/service/messenger/gnunet-service-messenger_tunnel.h
+++ b/src/service/messenger/gnunet-service-messenger_tunnel.h
@@ -1,6 +1,6 @@
/*
This file is part of GNUnet.
- Copyright (C) 2020--2021 GNUnet e.V.
+ Copyright (C) 2020--2023 GNUnet e.V.
GNUnet is free software: you can redistribute it and/or modify it
under the terms of the GNU Affero General Public License as published
@@ -83,7 +83,7 @@ bind_tunnel (struct GNUNET_MESSENGER_SrvTunnel *tunnel,
* @param[in,out] tunnel Tunnel
* @return #GNUNET_YES on success, otherwise #GNUNET_NO
*/
-int
+enum GNUNET_GenericReturnValue
connect_tunnel (struct GNUNET_MESSENGER_SrvTunnel *tunnel);
/**
@@ -101,7 +101,7 @@ disconnect_tunnel (struct GNUNET_MESSENGER_SrvTunnel
*tunnel);
* @param[in] tunnel Tunnel
* @return #GNUNET_YES or #GNUNET_NO
*/
-int
+enum GNUNET_GenericReturnValue
is_tunnel_connected (const struct GNUNET_MESSENGER_SrvTunnel *tunnel);
/**
@@ -127,7 +127,7 @@ send_tunnel_envelope (struct GNUNET_MESSENGER_SrvTunnel
*tunnel,
* @param[in,out] message Message
* @return #GNUNET_YES on success, GNUNET_NO otherwise
*/
-int
+enum GNUNET_GenericReturnValue
send_tunnel_message (struct GNUNET_MESSENGER_SrvTunnel *tunnel,
void *handle,
struct GNUNET_MESSENGER_Message *message);
@@ -185,8 +185,9 @@ get_tunnel_messenger_version (const struct
GNUNET_MESSENGER_SrvTunnel *tunnel);
*
* @param[in,out] tunnel Tunnel
* @param[in] version Version of messenger
+ * @result #GNUNET_OK on success, otherwise #GNUNET_SYSERR
*/
-int
+enum GNUNET_GenericReturnValue
update_tunnel_messenger_version (struct GNUNET_MESSENGER_SrvTunnel *tunnel,
uint32_t version);
diff --git a/src/service/messenger/messenger.conf.in
b/src/service/messenger/messenger.conf.in
index ef0544681..a1732118f 100644
--- a/src/service/messenger/messenger.conf.in
+++ b/src/service/messenger/messenger.conf.in
@@ -11,4 +11,6 @@ UNIX_MATCH_UID = NO
UNIX_MATCH_GID = YES
# Directory to store messages and contacts
-MESSENGER_DIR = $GNUNET_DATA_HOME/messenger/
\ No newline at end of file
+MESSENGER_DIR = $GNUNET_DATA_HOME/messenger/
+MESSENGER_AUTO_ROUTING = YES
+MESSENGER_MIN_ROUTERS = 3
\ No newline at end of file
diff --git a/src/service/messenger/messenger_api_message.c
b/src/service/messenger/messenger_api_message.c
index 8bd34f8f7..2a2cbe2e2 100644
--- a/src/service/messenger/messenger_api_message.c
+++ b/src/service/messenger/messenger_api_message.c
@@ -153,7 +153,7 @@ destroy_message (struct GNUNET_MESSENGER_Message *message)
}
-int
+enum GNUNET_GenericReturnValue
is_message_session_bound (const struct GNUNET_MESSENGER_Message *message)
{
GNUNET_assert (message);
@@ -253,7 +253,7 @@ typedef uint32_t kind_t;
uint16_t
get_message_kind_size (enum GNUNET_MESSENGER_MessageKind kind,
- int include_header)
+ enum GNUNET_GenericReturnValue include_header)
{
uint16_t length = 0;
@@ -306,7 +306,7 @@ get_message_body_size (enum GNUNET_MESSENGER_MessageKind
kind,
uint16_t
get_message_size (const struct GNUNET_MESSENGER_Message *message,
- int include_header)
+ enum GNUNET_GenericReturnValue include_header)
{
GNUNET_assert (message);
@@ -325,7 +325,7 @@ get_message_size (const struct GNUNET_MESSENGER_Message
*message,
static uint16_t
get_short_message_size (const struct GNUNET_MESSENGER_ShortMessage *message,
- int include_body)
+ enum GNUNET_GenericReturnValue include_body)
{
const uint16_t minimum_size = sizeof(struct GNUNET_HashCode) +
sizeof(kind_t);
@@ -345,7 +345,7 @@ calc_usual_padding ()
uint16_t padding = 0;
uint16_t kind_size;
- for (int i = 0; i <= GNUNET_MESSENGER_KIND_MAX; i++)
+ for (unsigned int i = 0; i <= GNUNET_MESSENGER_KIND_MAX; i++)
{
kind_size = get_message_kind_size ((enum GNUNET_MESSENGER_MessageKind) i,
GNUNET_YES);
@@ -513,7 +513,7 @@ void
encode_message (const struct GNUNET_MESSENGER_Message *message,
uint16_t length,
char *buffer,
- int include_header)
+ enum GNUNET_GenericReturnValue include_header)
{
GNUNET_assert ((message) && (buffer));
@@ -678,11 +678,11 @@ decode_message_body (enum GNUNET_MESSENGER_MessageKind
*kind,
}
-int
+enum GNUNET_GenericReturnValue
decode_message (struct GNUNET_MESSENGER_Message *message,
uint16_t length,
const char *buffer,
- int include_header,
+ enum GNUNET_GenericReturnValue include_header,
uint16_t *padding)
{
GNUNET_assert (
@@ -740,7 +740,7 @@ decode_message (struct GNUNET_MESSENGER_Message *message,
}
-static int
+static enum GNUNET_GenericReturnValue
decode_short_message (struct GNUNET_MESSENGER_ShortMessage *message,
uint16_t length,
const char *buffer)
@@ -853,7 +853,7 @@ sign_message_by_peer (struct GNUNET_MESSENGER_Message
*message,
}
-int
+enum GNUNET_GenericReturnValue
verify_message (const struct GNUNET_MESSENGER_Message *message,
const struct GNUNET_HashCode *hash,
const struct GNUNET_CRYPTO_PublicKey *key)
@@ -876,7 +876,7 @@ verify_message (const struct GNUNET_MESSENGER_Message
*message,
}
-int
+enum GNUNET_GenericReturnValue
verify_message_by_peer (const struct GNUNET_MESSENGER_Message *message,
const struct GNUNET_HashCode *hash,
const struct GNUNET_PeerIdentity *identity)
@@ -900,7 +900,7 @@ verify_message_by_peer (const struct
GNUNET_MESSENGER_Message *message,
}
-int
+enum GNUNET_GenericReturnValue
encrypt_message (struct GNUNET_MESSENGER_Message *message,
const struct GNUNET_CRYPTO_PublicKey *key)
{
@@ -945,7 +945,7 @@ encrypt_message (struct GNUNET_MESSENGER_Message *message,
}
-int
+enum GNUNET_GenericReturnValue
decrypt_message (struct GNUNET_MESSENGER_Message *message,
const struct GNUNET_CRYPTO_PrivateKey *key)
{
@@ -997,7 +997,7 @@ struct GNUNET_MQ_Envelope*
pack_message (struct GNUNET_MESSENGER_Message *message,
struct GNUNET_HashCode *hash,
const GNUNET_MESSENGER_SignFunction sign,
- int mode,
+ enum GNUNET_MESSENGER_PackMode mode,
const void *cls)
{
GNUNET_assert (message);
@@ -1045,7 +1045,7 @@ pack_message (struct GNUNET_MESSENGER_Message *message,
}
-int
+enum GNUNET_GenericReturnValue
is_peer_message (const struct GNUNET_MESSENGER_Message *message)
{
switch (message->header.kind)
@@ -1061,7 +1061,7 @@ is_peer_message (const struct GNUNET_MESSENGER_Message
*message)
}
-int
+enum GNUNET_GenericReturnValue
is_service_message (const struct GNUNET_MESSENGER_Message *message)
{
if (GNUNET_YES == is_peer_message (message))
@@ -1105,7 +1105,7 @@ is_service_message (const struct GNUNET_MESSENGER_Message
*message)
}
-int
+enum GNUNET_GenericReturnValue
filter_message_sending (const struct GNUNET_MESSENGER_Message *message)
{
if (GNUNET_YES == is_peer_message (message))
diff --git a/src/service/messenger/messenger_api_message.h
b/src/service/messenger/messenger_api_message.h
index 1874a4fe4..dd399975f 100644
--- a/src/service/messenger/messenger_api_message.h
+++ b/src/service/messenger/messenger_api_message.h
@@ -81,7 +81,7 @@ destroy_message (struct GNUNET_MESSENGER_Message *message);
* @param[in] message Message
* @return #GNUNET_YES or #GNUNET_NO
*/
-int
+enum GNUNET_GenericReturnValue
is_message_session_bound (const struct GNUNET_MESSENGER_Message *message);
/**
@@ -93,7 +93,7 @@ is_message_session_bound (const struct
GNUNET_MESSENGER_Message *message);
*/
uint16_t
get_message_kind_size (enum GNUNET_MESSENGER_MessageKind kind,
- int include_header);
+ enum GNUNET_GenericReturnValue include_header);
/**
* Returns the exact size in bytes to encode a given <i>message</i>.
@@ -104,7 +104,7 @@ get_message_kind_size (enum GNUNET_MESSENGER_MessageKind
kind,
*/
uint16_t
get_message_size (const struct GNUNET_MESSENGER_Message *message,
- int include_header);
+ enum GNUNET_GenericReturnValue include_header);
/**
* Encodes a given <i>message</i> into a <i>buffer</i> of a maximal
<i>length</i> in bytes.
@@ -118,7 +118,7 @@ void
encode_message (const struct GNUNET_MESSENGER_Message *message,
uint16_t length,
char *buffer,
- int include_header);
+ enum GNUNET_GenericReturnValue include_header);
/**
* Decodes a <i>message</i> from a given <i>buffer</i> of a maximal
<i>length</i> in bytes.
@@ -135,11 +135,11 @@ encode_message (const struct GNUNET_MESSENGER_Message
*message,
* @param[out] padding Padding
* @return #GNUNET_YES on success, otherwise #GNUNET_NO
*/
-int
+enum GNUNET_GenericReturnValue
decode_message (struct GNUNET_MESSENGER_Message *message,
uint16_t length,
const char *buffer,
- int include_header,
+ enum GNUNET_GenericReturnValue include_header,
uint16_t *padding);
/**
@@ -201,7 +201,7 @@ sign_message_by_peer (struct GNUNET_MESSENGER_Message
*message,
* @param[in] key Public key
* @return #GNUNET_OK on success, otherwise #GNUNET_SYSERR
*/
-int
+enum GNUNET_GenericReturnValue
verify_message (const struct GNUNET_MESSENGER_Message *message,
const struct GNUNET_HashCode *hash,
const struct GNUNET_CRYPTO_PublicKey *key);
@@ -216,7 +216,7 @@ verify_message (const struct GNUNET_MESSENGER_Message
*message,
* @param[in] identity Peer identity
* @return #GNUNET_OK on success, otherwise #GNUNET_SYSERR
*/
-int
+enum GNUNET_GenericReturnValue
verify_message_by_peer (const struct GNUNET_MESSENGER_Message *message,
const struct GNUNET_HashCode *hash,
const struct GNUNET_PeerIdentity *identity);
@@ -230,7 +230,7 @@ verify_message_by_peer (const struct
GNUNET_MESSENGER_Message *message,
* @param[in] key Public key
* @return #GNUNET_YES on success, otherwise #GNUNET_NO
*/
-int
+enum GNUNET_GenericReturnValue
encrypt_message (struct GNUNET_MESSENGER_Message *message,
const struct GNUNET_CRYPTO_PublicKey *key);
@@ -243,7 +243,7 @@ encrypt_message (struct GNUNET_MESSENGER_Message *message,
* @param[in] key Private key
* @return #GNUNET_YES on success, otherwise #GNUNET_NO
*/
-int
+enum GNUNET_GenericReturnValue
decrypt_message (struct GNUNET_MESSENGER_Message *message,
const struct GNUNET_CRYPTO_PrivateKey *key);
@@ -255,8 +255,11 @@ typedef void (*GNUNET_MESSENGER_SignFunction)(
const struct GNUNET_HashCode *hash
);
-#define GNUNET_MESSENGER_PACK_MODE_ENVELOPE 0x1
-#define GNUNET_MESSENGER_PACK_MODE_UNKNOWN 0x0
+enum GNUNET_MESSENGER_PackMode
+{
+ GNUNET_MESSENGER_PACK_MODE_ENVELOPE = 0x1,
+ GNUNET_MESSENGER_PACK_MODE_UNKNOWN = 0x0,
+};
/**
* Encodes the <i>message</i> to pack it into a newly allocated envelope if
<i>mode</i>
@@ -275,7 +278,7 @@ struct GNUNET_MQ_Envelope*
pack_message (struct GNUNET_MESSENGER_Message *message,
struct GNUNET_HashCode *hash,
const GNUNET_MESSENGER_SignFunction sign,
- int mode,
+ enum GNUNET_MESSENGER_PackMode mode,
const void *cls);
/**
@@ -286,7 +289,7 @@ pack_message (struct GNUNET_MESSENGER_Message *message,
* @param[in] message Message
* @return #GNUNET_YES if sending is allowed, #GNUNET_NO otherwise
*/
-int
+enum GNUNET_GenericReturnValue
is_peer_message (const struct GNUNET_MESSENGER_Message *message);
/**
@@ -300,7 +303,7 @@ is_peer_message (const struct GNUNET_MESSENGER_Message
*message);
* @param[in] message Message
* @return #GNUNET_YES if encrypting is disallowed, #GNUNET_NO or
#GNUNET_SYSERR otherwise
*/
-int
+enum GNUNET_GenericReturnValue
is_service_message (const struct GNUNET_MESSENGER_Message *message);
/**
@@ -311,7 +314,7 @@ is_service_message (const struct GNUNET_MESSENGER_Message
*message);
* @param[in] message Message
* @return #GNUNET_YES if sending is allowed, #GNUNET_NO or #GNUNET_SYSERR
otherwise
*/
-int
+enum GNUNET_GenericReturnValue
filter_message_sending (const struct GNUNET_MESSENGER_Message *message);
#endif //GNUNET_MESSENGER_API_MESSAGE_H
diff --git a/src/service/messenger/messenger_api_room.c
b/src/service/messenger/messenger_api_room.c
index 1aca8a7d5..b2f0a9f9e 100644
--- a/src/service/messenger/messenger_api_room.c
+++ b/src/service/messenger/messenger_api_room.c
@@ -459,7 +459,7 @@ iterate_room_members (struct GNUNET_MESSENGER_Room *room,
struct GNUNET_MESSENGER_MemberFind
{
const struct GNUNET_MESSENGER_Contact *contact;
- int result;
+ enum GNUNET_GenericReturnValue result;
};
static int
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
- [gnunet] 05/16: MESSENGER: Fix test case script to work with /usr prefix, (continued)
- [gnunet] 05/16: MESSENGER: Fix test case script to work with /usr prefix, gnunet, 2023/12/16
- [gnunet] 04/16: MESSENGER: Fix build issues in testing, gnunet, 2023/12/16
- [gnunet] 06/16: -fix /run/xtables.lock permission in netjail test environment with iptables-nft, gnunet, 2023/12/16
- [gnunet] 01/16: MESSENGER: Add netjail testcase, gnunet, 2023/12/16
- [gnunet] 08/16: -fix type of iterate function, gnunet, 2023/12/16
- [gnunet] 12/16: Merge branch 'master' of git+ssh://git.gnunet.org/gnunet, gnunet, 2023/12/16
- [gnunet] 09/16: MESSENGER: Types adjusted, gnunet, 2023/12/16
- [gnunet] 10/16: MESSENGER: add function to check handle for routing intention, gnunet, 2023/12/16
- [gnunet] 11/16: Merge branch 'master' of git+ssh://git.gnunet.org/gnunet, gnunet, 2023/12/16
- [gnunet] 14/16: -fix minor issues, gnunet, 2023/12/16
- [gnunet] 07/16: MESSENGER: Types adjusted and added configuration fields,
gnunet <=
- [gnunet] 16/16: -fix assert, gnunet, 2023/12/16
- [gnunet] 15/16: MESSENGER: Fix issues with automatic routing, gnunet, 2023/12/16
- [gnunet] 13/16: MESSENGER: Implement automatic routing mechanism, gnunet, 2023/12/16