[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gnunet] 14/18: TNG: Fixed bug in calculation of subtree fragment messag
From: |
gnunet |
Subject: |
[gnunet] 14/18: TNG: Fixed bug in calculation of subtree fragment message size. |
Date: |
Tue, 02 May 2023 12:53:29 +0200 |
This is an automated email from the git hooks/post-receive script.
t3sserakt pushed a commit to branch master
in repository gnunet.
commit 4af328381f1e954c90e9b821e366998808394d88
Author: t3sserakt <t3ss@posteo.de>
AuthorDate: Thu Apr 27 18:06:58 2023 +0200
TNG: Fixed bug in calculation of subtree fragment message size.
---
src/transport/gnunet-service-tng.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/src/transport/gnunet-service-tng.c
b/src/transport/gnunet-service-tng.c
index ed4be7e88..c30d2dd19 100644
--- a/src/transport/gnunet-service-tng.c
+++ b/src/transport/gnunet-service-tng.c
@@ -9332,6 +9332,7 @@ fragment_message (struct Queue *queue,
struct PendingAcknowledgement *pa;
struct PendingMessage *ff;
uint16_t mtu;
+ uint16_t msize;
mtu = (UINT16_MAX == queue->mtu)
? UINT16_MAX - sizeof(struct GNUNET_TRANSPORT_SendMessageTo)
@@ -9359,13 +9360,16 @@ fragment_message (struct Queue *queue,
enough
*/
ff = pm;
+ msize = ff->bytes_msg;
+
while (((ff->bytes_msg > mtu) || (pm == ff)) &&
- (ff->frag_off == ff->bytes_msg) && (NULL != ff->head_frag))
+ (ff->frag_off == msize) && (NULL != ff->head_frag))
{
ff = ff->head_frag; /* descent into fragmented fragments */
+ msize = ff->bytes_msg - sizeof(struct TransportFragmentBoxMessage);
}
- if (((ff->bytes_msg > mtu) || (pm == ff)) && (ff->frag_off < ff->bytes_msg))
+ if (((ff->bytes_msg > mtu) || (pm == ff)) && (ff->frag_off < msize))
{
/* Did not yet calculate all fragments, calculate next fragment */
struct PendingMessage *frag;
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
- [gnunet] 04/18: TNG: Removed misplaced sending of an acknowlegement in udp communicator., (continued)
- [gnunet] 04/18: TNG: Removed misplaced sending of an acknowlegement in udp communicator., gnunet, 2023/05/02
- [gnunet] 06/18: TNG: Do not update queue performance if PendingMessage was resend., gnunet, 2023/05/02
- [gnunet] 05/18: TNG: Changed test case to except 0.5% packet loss., gnunet, 2023/05/02
- [gnunet] 11/18: TNG: Fixed bug in calculation of delay for PendingAcknowledgement., gnunet, 2023/05/02
- [gnunet] 10/18: TNG: Fixed bug when checking, if fragment sub tree is done., gnunet, 2023/05/02
- [gnunet] 12/18: TNG: ValidationState now contains the addres prefix of the address being validated, because we have to check which communicator gave us the validation response., gnunet, 2023/05/02
- [gnunet] 15/18: TNG: Fixed bug that additional queues for the same communicator inherit the validity period., gnunet, 2023/05/02
- [gnunet] 09/18: TNG: GNUNET_SERVICE_client_continue was misplaced blocking the service., gnunet, 2023/05/02
- [gnunet] 07/18: TNG: Introduced frags_in_flight flag. With this flag we check if fragments of a PendingMessage are being send right now, to not resend single fragments, but the PendingMessage at once., gnunet, 2023/05/02
- [gnunet] 13/18: TNG: Handling flow control takes used window size into account, together with data loss., gnunet, 2023/05/02
- [gnunet] 14/18: TNG: Fixed bug in calculation of subtree fragment message size.,
gnunet <=
- [gnunet] 16/18: TNG: Fixed misplaced increase of queue length., gnunet, 2023/05/02
- [gnunet] 17/18: TNG: Fixed logic bug in search for QueueEntry after receiving SendMessageToAck., gnunet, 2023/05/02
- [gnunet] 18/18: TNG: Change config of performance test case to used TCP and UDP together., gnunet, 2023/05/02
- [gnunet] 08/18: TNG: The time to wait for resending a PendingMessage - which was fragmented - is calculated, depending on the number of fragments present, and how much of the PendingMessage was already fragmented., gnunet, 2023/05/02