- add separate encryption enabled mesh to avoid breakage during developement
[oweals/gnunet.git] / src / mesh / mesh_api_enc.c
index 3401f5d33cb9dbb13f8cfd4113822392578986fc..93099abdbf66a62869b5305b3d6dc92eaefeaffe 100644 (file)
  */
 
 #include "platform.h"
-#include "gnunet_common.h"
-#include "gnunet_client_lib.h"
 #include "gnunet_util_lib.h"
-#include "gnunet_peer_lib.h"
 #include "gnunet_mesh_service_enc.h"
-#include "mesh.h"
-#include "mesh_protocol.h"
+#include "mesh_enc.h"
+#include "mesh_protocol_enc.h"
 
 #define LOG(kind,...) GNUNET_log_from (kind, "mesh-api",__VA_ARGS__)
 
@@ -181,7 +178,7 @@ struct GNUNET_MESH_Handle
    * Time to the next reconnect in case one reconnect fails
    */
   struct GNUNET_TIME_Relative reconnect_time;
-  
+
   /**
    * Task for trying to reconnect.
    */
@@ -226,6 +223,7 @@ struct GNUNET_MESH_Peer
 
   /**
    * Flag indicating whether service has informed about its connection
+   * FIXME-BART: is this flag used? Seems dead right now...
    */
   int connected;
 
@@ -358,9 +356,9 @@ th_is_payload (struct GNUNET_MESH_TransmitHandle *th)
 
 /**
  * Check whether there is any message ready in the queue and find the size.
- * 
+ *
  * @param h Mesh handle.
- * 
+ *
  * @return The size of the first ready message in the queue,
  *         0 if there is none.
  */
@@ -494,7 +492,7 @@ destroy_channel (struct GNUNET_MESH_Channel *ch, int call_cleaner)
     /* clean up request */
     if (GNUNET_SCHEDULER_NO_TASK != th->timeout_task)
       GNUNET_SCHEDULER_cancel (th->timeout_task);
-    GNUNET_free (th);    
+    GNUNET_free (th);
   }
 
   /* if there are no more pending requests with mesh service, cancel active request */
@@ -514,7 +512,7 @@ destroy_channel (struct GNUNET_MESH_Channel *ch, int call_cleaner)
 
 /**
  * Notify client that the transmission has timed out
- * 
+ *
  * @param cls closure
  * @param tc task context
  */
@@ -551,7 +549,7 @@ add_to_queue (struct GNUNET_MESH_Handle *h,
               struct GNUNET_MESH_TransmitHandle *th)
 {
   GNUNET_CONTAINER_DLL_insert_tail (h->th_head, h->th_tail, th);
-  if (GNUNET_TIME_UNIT_FOREVER_ABS.abs_value == th->timeout.abs_value)
+  if (GNUNET_TIME_UNIT_FOREVER_ABS.abs_value_us == th->timeout.abs_value_us)
     return;
   th->timeout_task =
       GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_absolute_get_remaining
@@ -576,7 +574,7 @@ send_packet (struct GNUNET_MESH_Handle *h,
 
 /**
  * Send an ack on the channel to confirm the processing of a message.
- * 
+ *
  * @param ch Channel on which to send the ACK.
  */
 static void
@@ -816,7 +814,7 @@ process_channel_created (struct GNUNET_MESH_Handle *h,
     else
       ch->ooorder = GNUNET_NO;
 
-    LOG (GNUNET_ERROR_TYPE_DEBUG, "  created channel %p\n", t);
+    LOG (GNUNET_ERROR_TYPE_DEBUG, "  created channel %p\n", ch);
     ch->ctx = h->new_channel (h->cls, ch, &msg->peer, ch->port);
     LOG (GNUNET_ERROR_TYPE_DEBUG, "User notified\n");
   }
@@ -887,11 +885,11 @@ process_incoming_data (struct GNUNET_MESH_Handle *h,
 
   dmsg = (struct GNUNET_MESH_LocalData *) message;
 
-  ch = retrieve_channel (h, ntohl (dmsg->chid));
+  ch = retrieve_channel (h, ntohl (dmsg->id));
   payload = (struct GNUNET_MessageHeader *) &dmsg[1];
   LOG (GNUNET_ERROR_TYPE_DEBUG, "  %s data on channel %s [%X]\n",
        ch->chid >= GNUNET_MESH_LOCAL_CHANNEL_ID_SERV ? "fwd" : "bck",
-       GNUNET_i2s (GNUNET_PEER_resolve2 (ch->peer)), ntohl (dmsg->chid));
+       GNUNET_i2s (GNUNET_PEER_resolve2 (ch->peer)), ntohl (dmsg->id));
   if (NULL == ch)
   {
     /* Channel was ignored/destroyed, probably service didn't get it yet */
@@ -928,7 +926,7 @@ process_incoming_data (struct GNUNET_MESH_Handle *h,
 /**
  * Process a local ACK message, enabling the client to send
  * more data to the service.
- * 
+ *
  * @param h Mesh handle.
  * @param message Message itself.
  */
@@ -941,7 +939,6 @@ process_ack (struct GNUNET_MESH_Handle *h,
   MESH_ChannelNumber chid;
 
   LOG (GNUNET_ERROR_TYPE_DEBUG, "Got an ACK!\n");
-  h->acks_recv++;
   msg = (struct GNUNET_MESH_LocalAck *) message;
   chid = ntohl (msg->channel_id);
     ch = retrieve_channel (h, chid);
@@ -1062,7 +1059,7 @@ msg_received (void *cls, const struct GNUNET_MessageHeader *msg)
 
   if (msg == NULL)
   {
-    LOG (GNUNET_ERROR_TYPE_DEBUG, 
+    LOG (GNUNET_ERROR_TYPE_DEBUG,
         "Mesh service disconnected, reconnecting\n", h);
     reconnect (h);
     return;
@@ -1179,7 +1176,7 @@ send_callback (void *cls, size_t size, void *buf)
         psize += sizeof (struct GNUNET_MESH_LocalData);
         GNUNET_assert (size >= psize);
         dmsg->header.size = htons (psize);
-        dmsg->chid = htonl (ch->chid);
+        dmsg->id = htonl (ch->chid);
         dmsg->header.type = htons (GNUNET_MESSAGE_TYPE_MESH_LOCAL_DATA);
         LOG (GNUNET_ERROR_TYPE_DEBUG, "#  payload type %s\n",
              GNUNET_MESH_DEBUG_M2S (ntohs (mh->type)));
@@ -1245,7 +1242,7 @@ send_callback (void *cls, size_t size, void *buf)
  * Auxiliary function to send an already constructed packet to the service.
  * Takes care of creating a new queue element, copying the message and
  * calling the tmt_rdy function if necessary.
- * 
+ *
  * @param h mesh handle
  * @param msg message to transmit
  * @param channel channel this send is related to (NULL if N/A)
@@ -1417,7 +1414,7 @@ GNUNET_MESH_disconnect (struct GNUNET_MESH_Handle *handle)
  * @return handle to the channel
  */
 struct GNUNET_MESH_Channel *
-GNUNET_MESH_channel_create (struct GNUNET_MESH_Handle *h, 
+GNUNET_MESH_channel_create (struct GNUNET_MESH_Handle *h,
                            void *channel_ctx,
                            const struct GNUNET_PeerIdentity *peer,
                            uint32_t port,
@@ -1500,25 +1497,25 @@ GNUNET_MESH_channel_destroy (struct GNUNET_MESH_Channel *channel)
  *
  * @return Union with an answer to the query.
  */
-const union MeshChannelInfo *
+const union GNUNET_MESH_ChannelInfo *
 GNUNET_MESH_channel_get_info (struct GNUNET_MESH_Channel *channel,
-                             enum MeshChannelOption option, ...)
+                             enum MeshOption option, ...)
 {
-  const union MeshChannelInfo *ret;
+  const union GNUNET_MESH_ChannelInfo *ret;
 
   switch (option)
   {
     case GNUNET_MESH_OPTION_NOBUFFER:
-      ret = (const union MeshChannelInfo *) &channel->nobuffer;
+      ret = (const union GNUNET_MESH_ChannelInfo *) &channel->nobuffer;
       break;
     case GNUNET_MESH_OPTION_RELIABLE:
-      ret = (const union MeshChannelInfo *) &channel->reliable;
+      ret = (const union GNUNET_MESH_ChannelInfo *) &channel->reliable;
       break;
     case GNUNET_MESH_OPTION_OOORDER:
-      ret = (const union MeshChannelInfo *) &channel->ooorder;
+      ret = (const union GNUNET_MESH_ChannelInfo *) &channel->ooorder;
       break;
     case GNUNET_MESH_OPTION_PEER:
-      ret = (const union MeshChannelInfo *) &channel->peer;
+      ret = (const union GNUNET_MESH_ChannelInfo *) &channel->peer;
       break;
     default:
       GNUNET_break (0);
@@ -1698,7 +1695,7 @@ static size_t
 mesh_mq_ntr (void *cls, size_t size,
              void *buf)
 {
-  struct GNUNET_MQ_Handle *mq = cls; 
+  struct GNUNET_MQ_Handle *mq = cls;
   struct MeshMQState *state = GNUNET_MQ_impl_state (mq);
   const struct GNUNET_MessageHeader *msg = GNUNET_MQ_impl_current (mq);
   uint16_t msize;
@@ -1737,7 +1734,7 @@ mesh_mq_send_impl (struct GNUNET_MQ_Handle *mq,
       GNUNET_MESH_notify_transmit_ready (state->channel,
                                          /* FIXME: add option for corking */
                                          GNUNET_NO,
-                                         GNUNET_TIME_UNIT_FOREVER_REL, 
+                                         GNUNET_TIME_UNIT_FOREVER_REL,
                                          ntohs (msg->size),
                                          mesh_mq_ntr, mq);
 
@@ -1749,7 +1746,7 @@ mesh_mq_send_impl (struct GNUNET_MQ_Handle *mq,
  * destruction of a message queue.
  * Implementations must not free 'mq', but should
  * take care of 'impl_state'.
- * 
+ *
  * @param mq the message queue to destroy
  * @param impl_state state of the implementation
  */