gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r5004 - GNUnet/src/server


From: gnunet
Subject: [GNUnet-SVN] r5004 - GNUnet/src/server
Date: Sun, 10 Jun 2007 15:37:09 -0600 (MDT)

Author: grothoff
Date: 2007-06-10 15:37:09 -0600 (Sun, 10 Jun 2007)
New Revision: 5004

Modified:
   GNUnet/src/server/connection.c
   GNUnet/src/server/tcpserver.c
Log:
even more checks

Modified: GNUnet/src/server/connection.c
===================================================================
--- GNUnet/src/server/connection.c      2007-06-10 21:36:59 UTC (rev 5003)
+++ GNUnet/src/server/connection.c      2007-06-10 21:37:09 UTC (rev 5004)
@@ -1491,6 +1491,7 @@
   int ret;
   SendEntry ** entries;
   unsigned int stotal;
+  unsigned int mtu;
 
   ENTRY();
   /* fast ways out */
@@ -1527,7 +1528,7 @@
         be->available_send_window,
         be->session.mtu);
 #endif
-
+  mtu = be->session.mtu;
   totalMessageSize = selectMessagesToSend(be, &priority);
   if (totalMessageSize == 0) {
     expireSendBufferEntries(be);
@@ -1542,6 +1543,9 @@
   }
   GE_ASSERT(ectx,
            totalMessageSize > sizeof(P2P_PACKET_HEADER));
+  GE_BREAK(ectx, mtu == be->session.mtu);
+  GE_BREAK(ectx, 
+          (be->session.mtu == 0) || (mtu >= totalMessageSize));
   if ( (be->session.mtu != 0) &&
        (totalMessageSize > be->session.mtu) ) {
     GE_BREAK(ectx, 0);
@@ -1581,6 +1585,9 @@
     be->inSendBuffer = NO;
     return NO;             /* deferr further */
   }
+  GE_BREAK(ectx, mtu == be->session.mtu);
+  GE_BREAK(ectx, 
+          (be->session.mtu == 0) || (mtu >= totalMessageSize));
 
   /* get permutation of SendBuffer Entries
      such that SE_FLAGS are obeyed */
@@ -1600,6 +1607,9 @@
   p2pHdr->sequenceNumber = htonl(be->lastSequenceNumberSend);
   p2pHdr->bandwidth = htonl(be->idealized_limit);
   p = sizeof(P2P_PACKET_HEADER);
+  GE_BREAK(ectx, mtu == be->session.mtu);
+  GE_BREAK(ectx, 
+          (be->session.mtu == 0) || (mtu >= totalMessageSize));
 
   for (i = 0; i < stotal; i++) {
     SendEntry * entry = entries[i];
@@ -1629,6 +1639,9 @@
     be->inSendBuffer = NO;
     return NO;
   }
+  GE_BREAK(ectx, mtu == be->session.mtu);
+  GE_BREAK(ectx, 
+          (be->session.mtu == 0) || (mtu >= totalMessageSize));
 
   /* still room left? try callbacks! */
   pos = scl_nextHead;
@@ -1660,6 +1673,9 @@
     be->inSendBuffer = NO;
     return NO;
   }
+  GE_BREAK(ectx, mtu == be->session.mtu);
+  GE_BREAK(ectx, 
+          (be->session.mtu == 0) || (mtu >= totalMessageSize));
 
   /* finally padd with noise */
   if ( (p + sizeof(MESSAGE_HEADER) <= totalMessageSize) &&
@@ -1680,6 +1696,9 @@
     if (stats != NULL)
       stats->change(stat_noise_sent, noiseLen);
   }
+  GE_BREAK(ectx, mtu == be->session.mtu);
+  GE_BREAK(ectx, 
+          (be->session.mtu == 0) || (mtu >= totalMessageSize));
   if ( ( (be->session.mtu != 0) &&
         (p > be->session.mtu) )
        || (p > totalMessageSize) ) {

Modified: GNUnet/src/server/tcpserver.c
===================================================================
--- GNUnet/src/server/tcpserver.c       2007-06-10 21:36:59 UTC (rev 5003)
+++ GNUnet/src/server/tcpserver.c       2007-06-10 21:37:09 UTC (rev 5004)
@@ -36,6 +36,8 @@
 
 #define DEBUG_TCPHANDLER NO
 
+#define TIME_HANDLERS NO
+
 /**
  * Array of the message handlers.
  */
@@ -212,6 +214,9 @@
   struct ClientHandle * sender = sock_ctx;
   unsigned short ptyp;
   CSHandler callback;
+#if TIME_HANDLERS
+  cron_t start;
+#endif
 
   ptyp = htons(msg->type);
   MUTEX_LOCK(handlerlock);
@@ -235,6 +240,9 @@
     MUTEX_UNLOCK(handlerlock);
     return SYSERR;
   } else {
+#if TIME_HANDLERS
+    start = get_time();
+#endif
     if (OK != callback(sender,
                       msg)) {
 #if 0
@@ -247,6 +255,14 @@
       MUTEX_UNLOCK(handlerlock);
       return SYSERR;
     }
+#if TIME_HANDLERS
+    if (get_time() - start > cronSECONDS)
+      GE_LOG(ectx,
+            GE_INFO | GE_DEVELOPER | GE_IMMEDIATE,
+            "Handling message of type %u took %llu s\n",
+            ptyp,
+            (get_time()-start) / cronSECONDS);
+#endif
   }
   MUTEX_UNLOCK(handlerlock);
   return OK;





reply via email to

[Prev in Thread] Current Thread [Next in Thread]