Index: source/ariba/overlay/BaseOverlay.cpp
===================================================================
--- source/ariba/overlay/BaseOverlay.cpp	(revision 6916)
+++ source/ariba/overlay/BaseOverlay.cpp	(revision 6919)
@@ -148,5 +148,5 @@
 	static bool equals( const Data& lhs, const Data& rhs ) {
 		if (rhs.getLength()!=lhs.getLength()) return false;
-		for (int i=0; i<lhs.getLength()/8; i++)
+		for (size_t i=0; i<lhs.getLength()/8; i++)
 			if (lhs.getBuffer()[i] != rhs.getBuffer()[i]) return false;
 		return true;
@@ -604,5 +604,5 @@
 	message->setDestinationNode(remote);
 	message->setService(service);
-	send( message, remote );
+	return send( message, remote );
 }
 
@@ -747,7 +747,9 @@
 
 BaseOverlay::BaseOverlay() :
-			bc(NULL), overlayInterface(NULL), nodeId(NodeID::UNSPECIFIED),
-			spovnetId(SpoVNetID::UNSPECIFIED), state(BaseOverlayStateInvalid),
-			sideport(&SideportListener::DEFAULT), started(false), counter(0) {
+			started(false),state(BaseOverlayStateInvalid),
+			bc(NULL),
+			nodeId(NodeID::UNSPECIFIED), spovnetId(SpoVNetID::UNSPECIFIED),
+			sideport(&SideportListener::DEFAULT), overlayInterface(NULL),
+			counter(0) {
 	dht = new DHT();
 	localDHT = new DHT();
@@ -1158,8 +1160,10 @@
 	sideport = _sideport;
 	_sideport->configure( this );
+	return true;
 }
 
 bool BaseOverlay::unregisterSidePort(SideportListener* _sideport) {
 	sideport = &SideportListener::DEFAULT;
+	return true;
 }
 
@@ -1789,4 +1793,5 @@
 	// erase the original descriptor
 	eraseDescriptor(ld->overlayId);
+	return true;
 }
 
@@ -2182,8 +2187,6 @@
 void BaseOverlay::dhtPut( const Data& key, const Data& value, int ttl, bool replace, bool no_local_refresh ) {
 
-	logging_info("DHT: putting key=" <<  key
-			<< " value=" << value
-			<< " ttl=" << ttl
-			<< " replace=" << replace
+	logging_info("DHT: putting key=" << key << " value=" << value
+		<< " ttl=" << ttl << " replace=" << replace
 	);
 
Index: source/ariba/overlay/OverlayBootstrap.h
===================================================================
--- source/ariba/overlay/OverlayBootstrap.h	(revision 6916)
+++ source/ariba/overlay/OverlayBootstrap.h	(revision 6919)
@@ -106,4 +106,5 @@
 			nodeid = rhs.nodeid;
 			endpoint = rhs.endpoint;
+			return *this;
 		}
 
Index: source/ariba/overlay/messages/DHTMessage.cpp
===================================================================
--- source/ariba/overlay/messages/DHTMessage.cpp	(revision 6916)
+++ source/ariba/overlay/messages/DHTMessage.cpp	(revision 6919)
@@ -10,5 +10,5 @@
 DHTMessage::DHTMessage() {
 	this->key.setLength(0);
-	this->ttl =0 ;
+	this->ttl = 0;
 	this->replace = false;
 }
@@ -18,5 +18,5 @@
 	this->hash = NodeID::sha1( key.getBuffer(), key.getLength() / 8 );
 	this->key = key.clone();
-	this->ttl =0 ;
+	this->ttl = 0;
 	this->replace = false;
 }
@@ -26,13 +26,15 @@
 	this->hash = NodeID::sha1( key.getBuffer(), key.getLength() / 8 );
 	this->key = key.clone();
-	this->values.push_back(  value.clone() );
-	this->ttl =0 ;
+	this->values.push_back( value.clone() );
+	this->ttl = 0;
 	this->replace = false;
 }
 
 DHTMessage::DHTMessage( const Data& key, const vector<Data>& values ) {
+	this->hash = NodeID::sha1( key.getBuffer(), key.getLength() / 8 );
 	this->key = key.clone();
 	BOOST_FOREACH(const Data value, values )
-			this->values.push_back( value.clone() );
+		this->values.push_back( value.clone() );
+	this->ttl = 0;
 	this->replace = false;
 }
Index: source/ariba/overlay/messages/DHTMessage.h
===================================================================
--- source/ariba/overlay/messages/DHTMessage.h	(revision 6916)
+++ source/ariba/overlay/messages/DHTMessage.h	(revision 6919)
@@ -33,5 +33,5 @@
 
 	bool hasValues() const {
-		values.size() != 0;
+		return values.size() != 0;
 	}
 
Index: source/ariba/overlay/messages/OverlayMsg.h
===================================================================
--- source/ariba/overlay/messages/OverlayMsg.h	(revision 6916)
+++ source/ariba/overlay/messages/OverlayMsg.h	(revision 6919)
@@ -213,4 +213,5 @@
 	uint8_t increaseNumHops() {
 		hops++;
+		return hops;
 	}
 
Index: source/ariba/overlay/modules/OverlayInterface.h
===================================================================
--- source/ariba/overlay/modules/OverlayInterface.h	(revision 6916)
+++ source/ariba/overlay/modules/OverlayInterface.h	(revision 6919)
@@ -179,7 +179,4 @@
 	BaseOverlay& baseoverlay;
 
-	/// The parameters of the overlay structure
-	OverlayParameterSet parameters;
-
 	/// The node identifier to use with this overlay
 	const NodeID& nodeid;
@@ -187,4 +184,7 @@
 	/// The listener used to inform about overlay structure changes
 	OverlayStructureEvents* eventsReceiver;
+
+	/// The parameters of the overlay structure
+	OverlayParameterSet parameters;
 
 	/// The service identifer of this overlay
Index: source/ariba/overlay/modules/chord/Chord.cpp
===================================================================
--- source/ariba/overlay/modules/chord/Chord.cpp	(revision 6916)
+++ source/ariba/overlay/modules/chord/Chord.cpp	(revision 6919)
@@ -79,5 +79,5 @@
 
 	// check if we already have a connection
-	for (int i=0; i<table->size(); i++)
+	for (size_t i=0; i<table->size(); i++)
 		if ((*table)[i]->ref_count > 0 && (*table)[i]->id == remote && !((*table)[i]->info.isUnspecified()))
 			return LinkID::UNSPECIFIED;
@@ -291,5 +291,5 @@
 
 	// handle messages
-	switch (m->getType()) {
+	switch ((signalMessageTypes)m->getType()) {
 
 	// discovery request
@@ -317,5 +317,5 @@
 			setup( dmsg->getEndpoint(), m->getSourceNode() );
 
-		// delegate discovery message
+		// process discovery message -------------------------- switch start --
 		switch (dmsg->getType()) {
 
@@ -388,5 +388,13 @@
 			baseoverlay.send(&omsg, omsg.getDestinationNode());
 			break;
-		}}
+		}
+		case Discovery::invalid:
+			break;
+
+		default:
+			break;
+		}
+		// process discovery message ---------------------------- switch end --
+
 		delete dmsg;
 		break;
@@ -426,5 +434,5 @@
 		// updating neighbors
 		logging_debug("Discover new ring neighbors");
-		for (int i=0; i<table->size(); i++) {
+		for (size_t i=0; i<table->size(); i++) {
 			LinkID id = (*table)[i]->info;
 			if (!id.isUnspecified()) discover_neighbors(id);
Index: source/ariba/overlay/modules/chord/detail/chord_routing_table.hpp
===================================================================
--- source/ariba/overlay/modules/chord/detail/chord_routing_table.hpp	(revision 6916)
+++ source/ariba/overlay/modules/chord/detail/chord_routing_table.hpp	(revision 6919)
@@ -92,5 +92,5 @@
 private:
 	// maximum number of fingers
-	static const int max_fingers = 32;
+	static const size_t max_fingers = 32;
 
 	// the own node id
Index: source/ariba/overlay/modules/onehop/OneHop.cpp
===================================================================
--- source/ariba/overlay/modules/onehop/OneHop.cpp	(revision 6916)
+++ source/ariba/overlay/modules/onehop/OneHop.cpp	(revision 6919)
@@ -241,5 +241,5 @@
 	if( onemsg->isType( OneHopMessage::OneHopMessageTypeListingRequest ) ){
 
-		NodeListingRequest* request = onemsg->decapsulate<NodeListingRequest>();
+		//NodeListingRequest* request = onemsg->decapsulate<NodeListingRequest>();
 
 		logging_info( "onehop received node listing request from node " << remote.toString() );
