Index: source/ariba/overlay/BaseOverlay.cpp
===================================================================
--- source/ariba/overlay/BaseOverlay.cpp	(revision 5881)
+++ source/ariba/overlay/BaseOverlay.cpp	(revision 5882)
@@ -230,5 +230,5 @@
 
 /// routes a message to its destination node
-void BaseOverlay::route( OverlayMsg* message, LinkDescriptor* incomingLink ) {
+void BaseOverlay::route( OverlayMsg* message ) {
 
 	// exceeded time-to-live? yes-> drop message
@@ -241,5 +241,5 @@
 		// destinastion myself? yes-> handle message
 		if (message->getDestinationNode() == nodeId)
-			handleMessage( message, incomingLink );
+			handleMessage( message, NULL );
 		else
 			// no->send message to next hop
@@ -392,5 +392,5 @@
 		|| ld->relayed
 		|| !message->isRelayed()
-		|| !(message->getService() == OverlayInterface::OVERLAY_SERVICE_ID)
+//		|| !(message->getService() == OverlayInterface::OVERLAY_SERVICE_ID)
 		|| message->getSourceNode()==nodeId ) return;
 
@@ -718,6 +718,7 @@
 		// erase descriptor
 		eraseDescriptor( ld->overlayId );
-	} else
+	} else {
 		ld->dropAfterRelaying = true;
+	}
 }
 
@@ -1496,5 +1497,5 @@
 		);
 
-		route( overlayMsg, ld );
+		route( overlayMsg );
 		delete overlayMsg;
 		return true;
Index: source/ariba/overlay/BaseOverlay.h
===================================================================
--- source/ariba/overlay/BaseOverlay.h	(revision 5881)
+++ source/ariba/overlay/BaseOverlay.h	(revision 5882)
@@ -467,5 +467,5 @@
 
 	/// routes a message to its destination node
-	void route( OverlayMsg* message, LinkDescriptor* incomingLink );
+	void route( OverlayMsg* message );
 
 	/// sends a raw message to another node, delivers it to the base overlay class
Index: source/ariba/overlay/modules/chord/Chord.cpp
===================================================================
--- source/ariba/overlay/modules/chord/Chord.cpp	(revision 5881)
+++ source/ariba/overlay/modules/chord/Chord.cpp	(revision 5882)
@@ -340,5 +340,5 @@
 			// no-> route message
 			else {
-				baseoverlay.send( m, m->getDestinationNode() );
+				baseoverlay.route( m );
 			}
 			break;
@@ -349,5 +349,5 @@
 		case Discovery::predecessor: {
 			// reached destination? no->forward!
-			if (m->getDestinationNode() != nodeid && !table->is_closest_to(m->getDestinationNode())) {
+			if (m->getDestinationNode() != nodeid) {
 				OverlayMsg omsg(*m);
 				omsg.encapsulate(dmsg);
