diff options
Diffstat (limited to 'src/messenger/gnunet-service-messenger_list_messages.h')
-rw-r--r-- | src/messenger/gnunet-service-messenger_list_messages.h | 42 |
1 files changed, 35 insertions, 7 deletions
diff --git a/src/messenger/gnunet-service-messenger_list_messages.h b/src/messenger/gnunet-service-messenger_list_messages.h index 266c30ec6..9ace84cbf 100644 --- a/src/messenger/gnunet-service-messenger_list_messages.h +++ b/src/messenger/gnunet-service-messenger_list_messages.h | |||
@@ -1,6 +1,6 @@ | |||
1 | /* | 1 | /* |
2 | This file is part of GNUnet. | 2 | This file is part of GNUnet. |
3 | Copyright (C) 2020 GNUnet e.V. | 3 | Copyright (C) 2020--2021 GNUnet e.V. |
4 | 4 | ||
5 | GNUnet is free software: you can redistribute it and/or modify it | 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 | 6 | under the terms of the GNU Affero General Public License as published |
@@ -29,6 +29,7 @@ | |||
29 | #include "platform.h" | 29 | #include "platform.h" |
30 | #include "gnunet_crypto_lib.h" | 30 | #include "gnunet_crypto_lib.h" |
31 | #include "gnunet_container_lib.h" | 31 | #include "gnunet_container_lib.h" |
32 | #include "gnunet_disk_lib.h" | ||
32 | 33 | ||
33 | struct GNUNET_MESSENGER_ListMessage | 34 | struct GNUNET_MESSENGER_ListMessage |
34 | { | 35 | { |
@@ -47,7 +48,7 @@ struct GNUNET_MESSENGER_ListMessages | |||
47 | /** | 48 | /** |
48 | * Initializes list of message hashes as empty list. | 49 | * Initializes list of message hashes as empty list. |
49 | * | 50 | * |
50 | * @param messages List of hashes | 51 | * @param[out] messages List of hashes |
51 | */ | 52 | */ |
52 | void | 53 | void |
53 | init_list_messages (struct GNUNET_MESSENGER_ListMessages *messages); | 54 | init_list_messages (struct GNUNET_MESSENGER_ListMessages *messages); |
@@ -55,7 +56,7 @@ init_list_messages (struct GNUNET_MESSENGER_ListMessages *messages); | |||
55 | /** | 56 | /** |
56 | * Clears the list of message hashes. | 57 | * Clears the list of message hashes. |
57 | * | 58 | * |
58 | * @param messages List of hashes | 59 | * @param[in/out] messages List of hashes |
59 | */ | 60 | */ |
60 | void | 61 | void |
61 | clear_list_messages (struct GNUNET_MESSENGER_ListMessages *messages); | 62 | clear_list_messages (struct GNUNET_MESSENGER_ListMessages *messages); |
@@ -63,19 +64,46 @@ clear_list_messages (struct GNUNET_MESSENGER_ListMessages *messages); | |||
63 | /** | 64 | /** |
64 | * Adds a specific <i>hash</i> from a message to the end of the list. | 65 | * Adds a specific <i>hash</i> from a message to the end of the list. |
65 | * | 66 | * |
66 | * @param messages List of hashes | 67 | * @param[in/out] messages List of hashes |
67 | * @param hash Hash of message | 68 | * @param[in] hash Hash of message |
68 | */ | 69 | */ |
69 | void | 70 | void |
70 | add_to_list_messages (struct GNUNET_MESSENGER_ListMessages *messages, const struct GNUNET_HashCode *hash); | 71 | add_to_list_messages (struct GNUNET_MESSENGER_ListMessages *messages, const struct GNUNET_HashCode *hash); |
71 | 72 | ||
72 | /** | 73 | /** |
74 | * Copies all message hashes from an <i>origin</i> to another list. | ||
75 | * | ||
76 | * @param[in/out] messages Destination list of hashes | ||
77 | * @param[in] origin Source list of hashes | ||
78 | */ | ||
79 | void | ||
80 | copy_list_messages (struct GNUNET_MESSENGER_ListMessages *messages, const struct GNUNET_MESSENGER_ListMessages *origin); | ||
81 | |||
82 | /** | ||
73 | * Removes the first entry with a matching <i>hash</i> from the list. | 83 | * Removes the first entry with a matching <i>hash</i> from the list. |
74 | * | 84 | * |
75 | * @param messages List of hashes | 85 | * @param[in/out] messages List of hashes |
76 | * @param hash Hash of message | 86 | * @param[in] hash Hash of message |
77 | */ | 87 | */ |
78 | void | 88 | void |
79 | remove_from_list_messages (struct GNUNET_MESSENGER_ListMessages *messages, const struct GNUNET_HashCode *hash); | 89 | remove_from_list_messages (struct GNUNET_MESSENGER_ListMessages *messages, const struct GNUNET_HashCode *hash); |
80 | 90 | ||
91 | /** | ||
92 | * Loads the list of message hashes from a file under a given <i>path</i>. | ||
93 | * | ||
94 | * @param[out] messages List of hashes | ||
95 | * @param[in] path Path of file | ||
96 | */ | ||
97 | void | ||
98 | load_list_messages (struct GNUNET_MESSENGER_ListMessages *messages, const char *path); | ||
99 | |||
100 | /** | ||
101 | * Saves the list of message hashes to a file under a given <i>path</i>. | ||
102 | * | ||
103 | * @param[in] messages List of hashes | ||
104 | * @param[in] path Path of file | ||
105 | */ | ||
106 | void | ||
107 | save_list_messages (struct GNUNET_MESSENGER_ListMessages *messages, const char *path); | ||
108 | |||
81 | #endif //GNUNET_SERVICE_MESSENGER_LIST_MESSAGES_H | 109 | #endif //GNUNET_SERVICE_MESSENGER_LIST_MESSAGES_H |