GNUnet is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published
- by the Free Software Foundation; either version 2, or (at your
+ by the Free Software Foundation; either version 3, or (at your
option) any later version.
GNUnet is distributed in the hope that it will be useful, but
#include "gnunet_fragmentation_lib.h"
#include "gnunet_protocols.h"
#include "gnunet_util_lib.h"
+
/**
* Message fragment. This header is followed
* by the actual data of the fragment.
*/
+
struct Fragment
{
GNUNET_FRAGMENT_context_destroy (struct GNUNET_FRAGMENT_Context *ctx)
{
struct GNUNET_FRAGEMENT_Ctxbuffer *buffer;
- for(buffer = ctx->buffer; buffer!=NULL; buffer = buffer->next){
- GNUNET_free(buffer->num);
- GNUNET_free(buffer);
- }
+ struct GNUNET_FRAGEMENT_Ctxbuffer *temp;
+ buffer = ctx->buffer;
+
+ while (buffer != NULL)
+ {
+ temp = buffer->next;
+ GNUNET_free(buffer->num);
+ GNUNET_free(buffer);
+ buffer = temp;
+ }
GNUNET_free(ctx);
GNUNET_assert (0);
}
/**
* Hashtable *with* collision management!
*/
-static FC *defragmentationCache[DEFRAG_BUCKET_COUNT];
+static struct FC *defragmentationCache[DEFRAG_BUCKET_COUNT];
/**
* Lock for the defragmentation cache.